ฉันเรียกใช้สคริปต์จาก OracleLinux 8.4 VM (โดยกำหนดค่า NatNetwork บน VirtualBox) บนพีซี Windows 10 ของฉันไปยังโฮสต์ระยะไกลโดยใช้โฮสต์กระโดด
พีซีของฉันไม่สามารถเชื่อมต่อโดยตรงกับโฮสต์ระยะไกลได้ แต่ต้องผ่านโฮสต์ข้ามหลังจากเชื่อมต่อกับ VPN
นี่คือสภาพแวดล้อมของฉัน:
| เซิร์ฟเวอร์ | ไอพี | 
| วินโดวส์ พีซี แลน: | 192.168.0.10 | 
| Windows PC VPN: | 10.201.66.134 | 
| OracleLinux VM: | 10.0.100.100 | 
| กระโดดโฮสต์ | 90.x.x.x | 
 ฉันใช้พารามิเตอร์เหล่านี้ในสคริปต์ของฉัน:
-o ProxyCommand="sshpass -p $SSHPASS ssh -vvv -W %h:%p ispjh" 
-o PubkeyAuthentication=ไม่มี 
-o PreferredAuthentications = รหัสผ่าน 
-o การตรวจสอบรหัสผ่าน=ใช่ 
-o ControlMaster = อัตโนมัติ 
-o ControlPersist=60 วินาที 
-o UserKnownHostsFile=/dev/null 
-o StrictHostKeyChecking=ไม่ 
นี่คือ ssh conf ของฉันบน VM:
[root@VM ~]# cat ~/.ssh/config
เจ้าภาพ *
TCPKeepAlive หมายเลข
ServerAliveInterval 300
ServerAliveCountสูงสุด 1296000
โฮสต์ Jumphost Jumphost.mydonain.local
ชื่อโฮสต์ jumphost.mydonain.local
ผู้ใช้ user.name
อัตโนมัติ ControlMaster
เส้นทางการควบคุม /tmp/ssh-%r@%h:%p
ไดนามิกฟอร์เวิร์ด 1083
ฉันสร้างอุโมงค์ SSH มาก่อน (ด้วยคำสั่ง: ssh jumphost -v) และหลังจากที่ฉันรันสคริปต์ แต่เมื่อฉันรันสคริปต์ (บนเชลล์ใหม่) หลังจากเวลาผ่านไป ฉันได้รับข้อผิดพลาดนี้:
จากการเชื่อมต่ออุโมงค์ SSH:
debug1: getpeername ล้มเหลว: ตัวอธิบายไฟล์ไม่ถูกต้อง
debug1: ช่อง 5: ฟรี: direct-tcpip: กำลังฟังพอร์ต 0 สำหรับ 10.12.12.14 พอร์ต 22 เชื่อมต่อจากพอร์ต 127.0.0.1 65535 ไปยังพอร์ต UNKNOWN 65536, nchannels 9
และบางครั้งสคริปต์ก็กลับมาและการเชื่อมต่อก็หลุด
ฉันจะแก้ไขปัญหานี้ได้อย่างไร
ขอบคุณสำหรับการสนับสนุน.