Как настроить статический IP-адрес FTP со статическим QuotaGuard?

Я использую FTP-клиент nodejs, размещенный на heroku, но конечная точка, к которой я подключен, должна внести мой статический IP-адрес в белый список. Heroku не предлагает статические IP-адреса, поэтому я использую надстройку QuotaGuard. Я немного не понимаю, как использовать URL-адрес QuotaGuard для проксирования моего FTP-соединения.

Я ценю любую помощь!


person kaid    schedule 12.06.2015    source источник


Ответы (1)


Для этого вы можете использовать ответвление пакета node-ftp, но его нет в NPM, поэтому требуется небольшая ручная установка.

  1. Клонируйте репозиторий локально: git clone [email protected]:choonyme/node-socksftp.git

  2. Скопируйте каталог socksftp в каталог вашего проекта (например, cp -r node-socksftp/socksftp ./node_modules/

  3. экспортируйте данные своего статического подключения QuotaGuard в локальную переменную env с именем QUOTAGUARDSTATIC_URL.

Затем вы можете использовать все те же команды FTP, что и в оригинальном пакете node-ftp.

var url = require('url');
var Client = require('socksftp');

var httpProxyUrl = process.env.QUOTAGUARDSTATIC_URL;
// Make sure to switch to the SOCKS5 proxy port 1080
var socksProxyUrl = httpProxyUrl.replace(":9293",":1080");  

var server = {
    'host': 'ftp.linuxjournal.com',
    'port': 21,
    'socksproxy': socksProxyUrl
};

var c = new Client();
c.on('ready', function() {
    c.list(function(err, list) {
      if (err) throw err;
      console.dir(list);
      c.end();
    });
});

c.on('error', function(err){
    console.error('socksftp error: ' + err);
    return;
});

c.connect(server);

В будущем вы можете обратиться в нашу службу поддержки по адресу http://support.quotaguard.com, и мы ответим на немного быстрее.

person Tim Williams    schedule 14.06.2015
comment
Получение этой ошибки с этим решением: Ошибка: сокет закрыт - person Freewalker; 14.06.2019