De fäerdeg CONNECT-Socket un ssh2-sftp-client iwwerginn
Behäl d'SSH-Begréissung, déi no den Proxy-Headeren schon am Puffer ass, a benotz duerno sock mat den normale SSH-Optiounen vum Zil.
import SftpClient from 'ssh2-sftp-client';
const client = new SftpClient();
await client.connect({
...sshOptions,
sock: tunnelSocket,
});Gitt den existéierenden Host, Port, Kont an d'Host-Schlëssel-Politik vum Zil an sshOptions un. De Socket muss schonn duerch een ugehollenen CONNECT-Tunnel zu deem Zil féieren, net nëmmen zum Proxy-Listener.
Kontrolléier den Hëllefstool, ier s de de Stream iwwergëss: lehn 407 oder aner feelgeschloe Äntwerten of, behäl d'Setup-Fristen an zoug de refuséierte Socket. D'HTTP-connect-Ereegnis vun Node enthält head-Bytes, déi schonn no den Headeren gelies goufen; behäl eidel net e Puffer mat der richteger Stream-Iwwerreechung, zum Beispill socket.unshift(head). Et kann d'SSH-Begréissung enthalen.
Gitt de Socket séier weider a schloss duerno déi fäerdeg SFTP-Aarbecht mat await client.end() of. En HTTP Agent soss anzwousch erschaaft dësen SSH-Transport net, an de CONNECT-Kont ass getrennt vum SSH-Kont.