import SftpClient from 'ssh2-sftp-client';

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

Navedite postojeći host, port, nalog i politiku ključa hosta odredišta u sshOptions. Socket već mora da vodi kroz prihvaćen CONNECT tunel do tog odredišta, a ne samo do proxy osluškivača.

Proverite pomoćnika pre predaje toka: odbijte 407 ili druge neuspele odgovore, zadržite rokove podešavanja i zatvorite odbijene socket-e. Događaj connect u Node HTTP-u uključuje head bajtova već pročitanih nakon zaglavlja; sačuvajte neprazan bafer odgovarajućim prenosom toka, na primer socket.unshift(head). Može da sadrži SSH pozdrav.

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

Povezani članci