Secure Shell คือวิธีการจัดการคอมพิวเตอร์หรือเซิร์ฟเวอร์จากระยะไกลที่ใช้ได้กับ Linux, OS X และ Windows ช่วงเวลาหนึ่งของเซสชัน SSH หมดเวลา เนื่องจากเซสชัน SSH แบบเปิดและแบบอัตโนมัติมีความเสี่ยงด้านความปลอดภัย หากคุณไม่ได้ใช้งานเป็นระยะเวลาหนึ่ง การเชื่อมต่อจะปิดลงและคุณจะถูกบังคับให้เข้าสู่ระบบอีกครั้ง การหมดเวลานี้ถูกกำหนดโดยการตั้งค่า TCP ของระบบของคุณ แต่สามารถแทนที่ได้ในการตั้งค่าเซิร์ฟเวอร์หรือในการตั้งค่าไคลเอนต์ หากคุณพบว่าการเชื่อมต่อ SSH ของคุณหมดเวลาบ่อยเกินไป คุณสามารถแก้ไขการกำหนดค่า SSH ของคุณได้ตลอดเวลาเพื่อให้คุณไม่ได้ใช้งานมากขึ้นหรือน้อยลง
หมดเวลา TCP
การหมดเวลาของเซิร์ฟเวอร์ของคุณมีค่าเริ่มต้นเป็นการหมดเวลา TCP ของระบบของคุณ เนื่องจากเซิร์ฟเวอร์ SSH ได้รับการกำหนดค่าให้ใช้ TCPKeepalive โดยอัตโนมัติ ซึ่งจะส่งโพรบในเวลาที่กำหนดไว้เมื่อระบบไม่ได้ใช้งานเพื่อตรวจสอบว่าการเชื่อมต่อยังคงอยู่ ค่าเริ่มต้นนี้จะแตกต่างกันไปขึ้นอยู่กับระบบของคุณ บางระบบใช้ค่าเริ่มต้นเพียงห้าวินาที และบางระบบอาจสูงถึงสองชั่วโมง โดยทั่วไปแล้วค่าเฉลี่ยจะอยู่ที่ประมาณสามถึงห้านาที การเชื่อมต่อ SSH ของคุณ หากไม่มีการแก้ไขเพื่อเปลี่ยนการหมดเวลาบนเซิร์ฟเวอร์หรือไคลเอนต์ จะใช้ระยะหมดเวลานี้ การตั้งค่าในเซิร์ฟเวอร์หรือไคลเอนต์จะแทนที่ระยะหมดเวลานี้
วิดีโอประจำวันนี้
การตั้งค่าหมดเวลาทั้งเซิร์ฟเวอร์
การแก้ไขการหมดเวลาจากไฟล์ sshd_config จะเปลี่ยนตัวเลือกการหมดเวลาสำหรับไคลเอ็นต์ทุกเครื่องที่ล็อกออนเข้าสู่เซิร์ฟเวอร์ ผู้ดูแลระบบสามารถเข้าถึงไฟล์นี้ได้ที่ /etc/ssh/sshd_config หากคุณกำลังใช้เทอร์มินัลและคุ้นเคยกับตัวแก้ไขเทอร์มินัล คุณสามารถแก้ไขได้ทั้งหมดในเทอร์มินัลโดยป้อน "sudo nano /etc/ssh/sshd_config" เพิ่มตัวเลือก "ClientAliveInterval" ซึ่งบอกให้เซิร์ฟเวอร์ส่งแพ็กเก็ตข้อมูลไปยังไคลเอนต์เพื่อตรวจสอบกิจกรรม คุณควรพิจารณาเพิ่ม "ClientAliveCountMax" ด้วยเช่นกัน สิ่งนี้จะบอกเซิร์ฟเวอร์ว่าควรตรวจสอบกี่ครั้งโดยไม่ได้รับการตอบกลับ อย่าใส่เครื่องหมายปอนด์ไว้ข้างหน้าสิ่งเหล่านี้ เส้นที่มีเครื่องหมายปอนด์อยู่ข้างหน้าถือเป็นความคิดเห็นและไม่ใช่ตัวเลือกที่ใช้งานอยู่ในเซิร์ฟเวอร์ ตัวอย่างเช่น หากคุณต้องการตั้งค่า ClientAliveInterval เป็นห้านาที และ ClientAliveCountMax เป็นสองนาที อาจมีลักษณะดังนี้: ClientAliveInterval 300ClientAliveCountMax 2
ระยะหมดเวลาตามไคลเอ็นต์
หากคุณกำลังใช้ไคลเอนต์เช่น Putty คุณสามารถเปลี่ยนระยะหมดเวลาได้โดยคลิกตัวเลือก "การเชื่อมต่อ" บน แถบด้านข้างและกรอกเวลาที่คุณต้องการในกล่องข้อความข้าง "วินาทีระหว่าง Keepalives" ใน วินาที สิ่งนี้ควรขึ้นอยู่กับระยะเวลาที่คุณคิดว่าคุณจะไม่มีการเคลื่อนไหวระหว่างกิจกรรม คุณยังสามารถเปลี่ยนแปลงสิ่งนี้ได้ด้วยตนเองโดยเปิดไฟล์การตั้งค่าฝั่งไคลเอ็นต์ของคุณที่ /etc/ssh/ssh_config – สังเกตความแตกต่างระหว่างไฟล์เซิร์ฟเวอร์ "sshd_config" เพิ่มการตั้งค่า "ServerAliveInterval" และตั้งค่าความถี่ที่คุณต้องการให้ลูกค้าส่งแพ็กเก็ตเพื่อให้การเชื่อมต่อใช้งานได้ภายในไม่กี่วินาที
ความเสี่ยงจากการเปลี่ยนระยะหมดเวลา
เห็นได้ชัดว่าการเปลี่ยนระยะหมดเวลาเป็นเรื่องของความสะดวก - ช่วยให้คุณสามารถทำงานหลายอย่างโดยไม่ต้องต่ออายุการเข้าสู่ระบบเซิร์ฟเวอร์ SSH ของคุณบ่อยๆ อย่างไรก็ตาม นี่หมายความว่าคุณต้องระมัดระวังตัวมากขึ้นที่เดสก์ท็อปของคุณ หากคุณเดินออกจากคอมพิวเตอร์โดยเปิดการเชื่อมต่อ SSH ไว้ ทุกคนสามารถนั่งลงและเข้าถึงเซิร์ฟเวอร์ของคุณได้ แม้ว่าการปล่อยให้การเชื่อมต่อ SSH เปิดไว้สำหรับใช้ในบ้านนั้นเป็นเรื่องที่น่ากังวลน้อยกว่าเมื่อคุณทำเช่นนั้น การมีนิสัยชอบปล่อยให้การเชื่อมต่อของคุณเปิดกว้างอาจมีผลที่เลวร้ายมากในทางที่ผิด มือ.