使用sftp和socks5代理node.js

时间:2016-09-02 07:14:03

标签: node.js ssh proxy sftp

我一直在考虑使用ssh2模块进行sftp日志传送。但是,托管我们应用的云服务使用旋转IP地址范围。所以想要集成给我们提供静态IP地址的socks5代理服务。我正在使用socksjs模块来建立socks5连接,我正在获取与代理的连接,但我认为我已经注入了sftp的套接字连接使用错误。

干杯,

的Nik

var sockConn = new SocksConnection(connTargetSettings, connProxySettings);
connTargetSettings.sock = sockConn.outSocket;

var conn = new ssh2.Client();
conn.on("ready", function() {
    conn.sftp(function(err, sftp) {
        if (err) throw err;
        // you'll be able to use sftp here
        sftp.readdir("/", function(err, list) {
            if (err) throw err;
            // List the directory in the console
            console.dir(list);
            // Do not forget to close the connection, otherwise you'll get troubles
            conn.end();
        });
        // Use sftp to execute tasks like .unlink or chmod etc
    });
}).connect(connTargetSettings);

1 个答案:

答案 0 :(得分:2)

您可以使用socksv5库(来自ssh2的创建者)连接throw socks5代理。

示例:

 return $this->belongsToMany(Department::class, 'department_users')->orWhere('department_users.user_id', $this->id);