import SftpClient from 'ssh2-sftp-client';

const client = new SftpClient();
await client.connect({
  ...sshOptions,
  sock: tunnelSocket,
});

Наведете го постоечкиот хост, порта, сметка и политиката за клуч на хостот на одредиштето во sshOptions. Сокетот веќе мора да води низ прифатен CONNECT тунел до тоа одредиште, а не само до слушачот на проксито.

Проверете го помагачот пред да го предадете текот: одбијте 407 или други неуспешни одговори, задржете ги роковите за поставување и затворете ги одбиените сокети. Настанот connect на HTTP во Node вклучува head бајти веќе прочитани по заглавијата; зачувајте непразен бафер со соодветно предавање на текот, на пример socket.unshift(head). Може да го содржи SSH поздравот.

Предајте го сокетот веднаш, потоа затворете ја завршената SFTP работа со await client.end(). HTTP Agent на друго место не го создава овој SSH транспорт, а CONNECT сметката е одделна од SSH сметката.

Поврзани статии