ฉันจะแก้ไขการเชื่อมต่อ ssh ที่ปิดโดยโฮสต์ระยะไกลเนื่องจากไม่มีการใช้งานได้อย่างไร


14

ฉันกำลังพยายามที่จะ ssh กับโคโลหลังจากที่ไม่มีการใช้งาน 1 ถึง 2 นาทีฉันได้รับ:

superuser@thecolo:~$ Connection to 10.123.45.67 closed by remote host.
Connection to 10.123.45.67 closed.
mylocalmac:~ superuser$

ตราบใดที่ฉันพิมพ์บางอย่างในเทอร์มินัล ssh การเชื่อมต่อจะถูกเก็บไว้ ทันทีที่ไม่มีกิจกรรม 1 ถึง 2 นาทีฉันจะได้รับข้อความด้านบน เครื่องที่ฉันพยายามเชื่อมต่อเป็น Ubuntu 12.04.1 LTS 64 บิตเซิร์ฟเวอร์ฉบับ ไม่ใช่เซิร์ฟเวอร์จริง แต่เป็นแขกของ VMware ฉันกำลังร้องไห้จากขั้ว mac

โปรดอย่าสับสนคำถามนี้กับคำถามที่คล้ายกันในเว็บไซต์นี้ด้วยคำหลักssh_exchange_identificationซึ่งไม่เกี่ยวข้อง

คำตอบ:


17

เพิ่มสิ่งต่อไปนี้ใน $ HOME / .ssh / config ของคุณและการเชื่อมต่อ ssh ทั้งหมดของคุณจะส่ง TCPKeepAlive ทุก ๆ 30 วินาที:

TCPKeepAlive yes
ServerAliveInterval 30

ไม่สามารถค้นหาไฟล์กำหนดค่าบนเซิร์ฟเวอร์
insoftservice

คุณสามารถสร้างไฟล์ในโฮมได
เร็กตอรี่

9

หากคุณกำลังเชื่อมต่อจากคอมพิวเตอร์ Linux คุณสามารถใช้ตัวเลือกบางตัวได้โดยตรงจากบรรทัดคำสั่ง

TCPKeepAlive: ใช้ตัวเลือก KEEPALIVE ของโปรโตคอล TCP / IP เพื่อให้การเชื่อมต่อยังคงอยู่หลังจากช่วงเวลาที่ไม่มีการใช้งานที่ระบุ ในระบบส่วนใหญ่หมายถึง 2 ชั่วโมง ดังนั้นด้วยตัวเลือก TCPKeepAlive ที่ส่งผ่านไปยัง SSH ไคลเอ็นต์ SSH จะส่งแพ็กเก็ตที่เข้ารหัสไปยังเซิร์ฟเวอร์ SSH ทำให้การเชื่อมต่อ TCP ของคุณทำงานอยู่

ssh -o TCPKeepAlive=yes user@some.host.com

ServerAliveInterval: กำหนดช่วงเวลาการหมดเวลาเป็นวินาทีซึ่งระบุโดยคุณซึ่งหากไม่มีการส่งแพ็กเก็ตจากไคลเอ็นต์ SSH ไปยังเซิร์ฟเวอร์ SSH SSH จะส่งคำขอเข้ารหัสไปยังเซิร์ฟเวอร์สำหรับการตอบสนอง TCP หากต้องการส่งคำขอทุก ๆ 30 วินาทีให้ทำดังนี้

ssh -o ServerAliveInterval=30 user@some.host.com

แหล่ง


0

คุณต้อง "keepalive"

ขึ้นอยู่กับลูกค้าของคุณสิ่งนี้อาจไม่สำคัญหรือง่าย - ไม่ควรหนักกว่านี้!

ตัวอย่างเช่นในผงสำหรับอุดรูมันอยู่ในตัวเลือกการเชื่อมต่อ (ตั้ง keepalive เป็นค่าที่ไม่ใช่ศูนย์)


ฉันจะตั้ง keepalive ที่ไหน? บนเซิร์ฟเวอร์หรือจาก mac ของฉัน ฉันควรตั้งค่าที่ใดและควรค่าที่แนะนำคืออะไร
Thierry Lam

Keepalive จะอยู่ในไคลเอนต์ ... ในกรณีของคุณ Mac ของคุณ จะมีตัวเลือกที่ไหนสักแห่ง!
Andrew
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.