หากคุณเป็นผู้ดูแลระบบและคุณใช้ไฟล์ SSH ในการเชื่อมต่อกับระบบอื่น ๆ จะเกิดขึ้นมากกว่าหนึ่งครั้งหลังจากนั้นไม่นานการเชื่อมต่อจะลดลงและคุณต้องเชื่อมต่อใหม่ซึ่งจะทำให้ข้อมูลสูญหาย |
"เคล็ดลับ" นี้เป็นที่รู้จักกันดีสำหรับผู้ดูแลระบบ แต่บางท่านอาจไม่ทราบ
แนวคิดคือเซิร์ฟเวอร์บังคับให้ไคลเอ็นต์ส่งแพ็กเก็ตเพื่อให้การเชื่อมต่อเปิดอยู่ (ซึ่งโดยปกติเรียกว่า keep-alive) และได้รับการกำหนดค่าในเซิร์ฟเวอร์ SSH ที่เราเชื่อมต่อโดยการแก้ไขไฟล์ / etc / ssh / sshd_config และเพิ่มสองบรรทัดนี้ในคอนฟิกูเรชัน ssh daemon:
TCPKeepAlive ใช่
ClientAliveInterval 60
ด้วยสิ่งนี้เราจึงต้องรีสตาร์ท ssh daemon อย่างเงียบ ๆ และเมื่อเชื่อมต่อเราสามารถเปิดเซสชันไว้ได้โดยไม่ต้องกลัวว่าจะถูกตัดการเชื่อมต่อ
อีกทางเลือกหนึ่งที่เป็นไปได้คือการใช้เครื่องมือที่เรียกว่า autossh ในการติดตั้งใน Ubuntu และอนุพันธ์ให้เรียกใช้:
sudo apt-get ติดตั้งอัตโนมัติ
ในกรณีที่เราต้องการใช้งานแบบง่ายๆเราสามารถดำเนินการได้แล้ว:
autossh remote_user @ remote_host
Fuente: ไซโนโลยี
ผลงานที่ดี…
ไปเมื่อสี่วันก่อนฉันเขียนสิ่งที่คล้ายกันมากในบล็อกของฉัน ความคิดที่ดีเกี่ยวกับ autossh: http://totaki.com/poesiabinaria/2012/08/solucionar-problema-con-timeouts-y-broken-pipes-con-ssh-y-scp/
แหล่งที่มาของบทความนี้เก่าเนื่องจากไม่มี "Keepalive" เป็นพารามิเตอร์การกำหนดค่า SSH อีกต่อไป
ไคลเอนต์ ssh สำหรับ Android ที่คุณแนะนำ?
คุณแนะนำไคลเอนต์ ssh สำหรับ Android หรือไม่?
เป็นไปได้ไหมว่าไฟล์นั้นชื่อว่า ssh_config ไม่ใช่ sshd_config?
และหากคุณยังไม่สามารถหลีกเลี่ยงการหยุดทำงานได้เนื่องจากคุณมีการเชื่อมต่อที่ไม่ดีหรืออะไรทำนองนั้นให้เข้าสู่ระบบและใช้หน้าจอเพื่อยกเลิกการเชื่อมโยงเซสชัน PID ของคุณกับ PID การเชื่อมต่อของคุณ
ผลงานดี!
หากคุณไม่สามารถเข้าถึงเซิร์ฟเวอร์ SSH คุณสามารถใช้งานบนฝั่งไคลเอ็นต์โดยใช้ Putty หรือ desde Linux.
ด้วยผงสำหรับอุดรู:
"Connection", "การส่งแพ็กเก็ต null เพื่อให้เซสชันทำงานต่อไป", "วินาทีระหว่าง Keepalives" และป้อนตัวเลข
ทำเครื่องหมายตัวเลือกด้วย:
"เปิดใช้งาน TCP keepalives (ตัวเลือก SO_KEEPALIVE)
Fuente: http://www.sysadmit.com/2016/02/linux-y-vmware-ssh-evitar-desconexion.html