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 poslužitelja.

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 međuspremnik odgovarajućim prijenosom toka, primjerice 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 prijenos, a CONNECT račun odvojen je od SSH računa.

Povezani članci