import SftpClient from 'ssh2-sftp-client';

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

ระบุโฮสต์ พอร์ต บัญชี และนโยบายคีย์โฮสต์ของปลายทางที่มีอยู่แล้วใน sshOptions socket ต้องผ่านอุโมงค์ CONNECT ที่ยอมรับแล้วไปยังปลายทางนั้น ไม่ใช่เพียงไปยังตัวรับฟังพร็อกซี

ตรวจสอบตัวช่วยก่อนส่งมอบสตรีม: ปฏิเสธ 407 หรือการตอบกลับที่ล้มเหลวอื่น ๆ รักษากำหนดเวลาการตั้งค่า และปิด socket ที่ถูกปฏิเสธ เหตุการณ์ connect ของ HTTP ใน Node มีไบต์ head ที่อ่านแล้วหลังเฮดเดอร์ รักษาบัฟเฟอร์ที่ไม่ว่างด้วยการส่งมอบสตรีมที่เหมาะสม เช่น socket.unshift(head) อาจมีคำทักทาย SSH อยู่

ส่ง socket ทันที จากนั้นปิดงาน SFTP ที่เสร็จแล้วด้วย await client.end() HTTP Agent ที่อื่นไม่ได้สร้างการขนส่ง SSH นี้ และบัญชี CONNECT แยกจากบัญชี SSH

บทความที่เกี่ยวข้อง