การเชื่อมต่อที่ปลอดภัยที่สุดไปยังเซิร์ฟเวอร์ระยะไกลคือผ่านโปรโตคอลเครือข่ายเข้ารหัส SSH (การรักษาความปลอดภัยของเชลล์).
ปัญหาทั่วไปที่พบโดยผู้ดูแลเซิร์ฟเวอร์หรือผู้ที่ทำการเชื่อมต่อผ่าน SSH ผ่านทาง Terminal หรือ Putty คือการขาดการเชื่อมต่ออย่างฉับพลันจากเซสชันพร้อมข้อความ: “client_loop: send disconnect: Broken pipe” .
โดยส่วนใหญ่ข้อความล็อกเอาต์นี้จะปรากฏขึ้นหลังจากช่วงเวลาที่ไม่มีการดำเนินการบรรทัดคำสั่งในเซสชัน SSH หลายคนชอบที่จะจดจำเซสชันที่เปิดอยู่เป็นครั้งคราวและให้อีกครั้ง "Enter” หรือ“ w” เพื่อเปิดเซสชันไว้ ทางออกที่ดีกว่าคือการปิดเซสชันอย่างกะทันหันหลังจากหยุด "ช่วงว่าง"
วิธีการป้องกันการสิ้นสุดเซสชัน SSH แบบฉับพลันด้วย “client_loop: send disconnect: Broken pipe” ในเทอร์มินัล (Linux / Mac)
สำหรับทั้ง Linux และ Mac จะมีการเพิ่มบรรทัดในการกำหนดค่า SSH เราเปิดและแก้ไขไฟล์ “ssh_config”.
sudo nano /etc/ssh/ssh_config
เราเพิ่มบรรทัด:
Host * ServerAliveInterval 120
บันทึกและปิดไฟล์ "ssh_config". หากเราใช้ Linux เราจะต้องรีสตาร์ทบริการ "sshd"
ทิศทาง “ServerAliveInterval“ จะส่งแพ็คเก็ต null ไปยังเซิร์ฟเวอร์ในช่วงเวลา 120 วินาทีเพื่อให้เซสชันยังมีชีวิตอยู่และป้องกันไม่ให้ปิดทันที
หากคุณเปลี่ยนเฉพาะ ssh_config (ไม่ใช่ sshd_config) ไม่มีเหตุผลที่จะรีสตาร์ท sshd