import SftpClient from 'ssh2-sftp-client';

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

Navedite postojeći host, port, račun i politiku host-ključa odredišta u sshOptions. Socket već mora voditi kroz prihvaćeni CONNECT tunel do tog odredišta, a ne samo do proxy listenera.

Provjerite pomoćnika prije predaje toka: odbijte 407 ili druge neuspjele odgovore, zadržite rokove postavljanja i zatvorite odbijene sockete. Događaj connect u Node HTTP-u uključuje head bajtova već pročitanih nakon zaglavlja; sačuvajte neprazan bafer odgovarajućim prijenosom toka, na primjer socket.unshift(head). Može sadržavati SSH pozdrav.

Predajte socket odmah, zatim zatvorite dovršeni SFTP posao pomoću await client.end(). HTTP Agent na drugom mjestu ne stvara ovaj SSH transport, a CONNECT račun je odvojen od SSH računa.

Povezani članci