Putty: 'เซิร์ฟเวอร์ปิดการเชื่อมต่อเครือข่ายโดยไม่คาดคิด'


11

สีโป๊ว 'เซิร์ฟเวอร์ปิดการเชื่อมต่อเครือข่ายโดยไม่คาดคิด' ฉันได้รับข้อความ 'เซิร์ฟเวอร์เชื่อมต่อเครือข่ายที่ปิดโดยไม่คาดคิด' (ดู/superuser/735824/putty-ends-to-an-unexpected-error-and-vnc-) แสดงว่าเทอร์มินัลพร้อมข้อผิดพลาดและการรับ“ เซิร์ฟเวอร์เชื่อมต่อเครือข่ายที่ปิดโดยไม่คาดคิด” ) แต่ไม่เกี่ยวข้องกับการรีบูตใด ๆ การเชื่อมต่อจะล้มเหลวอย่างไม่คาดคิดและเว็บเซิร์ฟเวอร์ (Apache) ที่ทำงานนอกเซิร์ฟเวอร์ Linux ฉันใช้ Putty ผ่าน Windows 7 เพื่อเชื่อมต่อกับ Raspberry Pi ที่รัน Raspbian ความคิดใด ๆ ที่อาจจะผิดพลาด?

คำตอบ:


13

เซสชัน PuTTY ที่ไม่ทำงานจะถูกตัดการเชื่อมต่อในเวลาที่กำหนดโดยเซิร์ฟเวอร์โฮสต์ ลองเปิดใช้งาน Keep-alives ใน PuTTY สิ่งนี้ทำให้ PuTTY ส่งแพ็กเก็ต null SSH ไปยังโฮสต์ระยะไกลเป็นระยะเพื่อป้องกันไม่ให้เซสชันหมดเวลา

ไคลเอ็นต์ PuTTY สามารถกำหนดค่าให้สร้างการเชื่อมต่อซึ่งจะไม่หมดเวลาเนื่องจากการไม่ทำงาน หากต้องการสร้างและบันทึกการเชื่อมต่อแบบ keep-alive ใหม่ให้ทำตามขั้นตอนเหล่านี้:

  1. เปิดแอปพลิเคชั่น PuTTY และไปที่แผงตัวเลือก (ชื่อ "หมวดหมู่") ทางด้านซ้ายของหน้าต่าง
  2. เลือก (คลิก) รายการ "การเชื่อมต่อ"
  3. ในพื้นที่ "การส่งแพ็คเก็ต null เพื่อให้เซสชันใช้งานอยู่" ทางด้านขวาให้เปลี่ยนค่าเริ่มต้นของ "วินาทีระหว่าง keepalives" จาก 0 (ปิด) เป็น 1800 (30 นาที)
  4. เลือกช่องทำเครื่องหมาย "เปิดใช้งาน Keepalives TCP (ตัวเลือก SO_KEEPALIVE)" หมายเหตุ: ตัวเลือกนี้อาจไม่พร้อมใช้งานในไคลเอนต์ PuTTY รุ่นเก่า
  5. ที่ด้านซ้ายบนสุดของแผงตัวเลือกให้เลือก (คลิก) "เซสชัน"
  6. ในช่อง "ชื่อโฮสต์ (หรือที่อยู่ IP)" ให้ป้อนชื่อโฮสต์ปลายทางหรือที่อยู่ IP (เช่น "ปลายทาง.ipaddress.here.com" หรือ "192.168.1.1")
  7. ในช่องป้อนข้อความ "บันทึกเซสชัน" ให้ระบุชื่อของเซสชัน (เช่น "savesession")
  8. เลือก "บันทึก"

หากต้องการใช้การตั้งค่าเซสชันที่แก้ไขให้เลือกจากรายการ "เซสชันที่บันทึกไว้" จากนั้นคลิกปุ่มที่ระบุว่า "โหลด" และ "เปิด"

หากเซสชันที่เชื่อมต่อของคุณยังคงหมดเวลาให้ป้อนจำนวนวินาทีที่น้อยลงในค่า "วินาทีระหว่าง keepalives"


สิ่งนี้เช่นกันไม่ถูกต้อง การเชื่อมต่อ TCP ไม่หมดเวลา หากหลักการแบบ end-to-end ถูกทำลายโดย NAT หรือสิ่งที่คล้ายคลึงการแมปการเชื่อมต่อบนอุปกรณ์เหล่านี้อาจหมดเวลา โดยค่าเริ่มต้น SSH จะไม่มีวันหมดเวลา ในการเชื่อมต่ออินเทอร์เน็ตที่เหมาะสมการเชื่อมต่อ SSH ที่ไม่ทำงานจะยังคงเปิดอยู่เรื่อย ๆ
Daniel B

Ssh เสนอการรักษาสองชนิด: TCP keep-alives และ ssh keep-alives TCP เสนอกลไกเพื่อปิดการเชื่อมต่อโดยอัตโนมัติซึ่งถือว่าไม่ทำงานเนื่องจากหมดเวลา มันเกี่ยวกับการเปิดใช้งานการตั้งค่าสถานะในซ็อกเก็ต
Raúl Salinas-Monteagudo

ฉันลดจำนวนลงและกลับมาที่ 0 แต่ก็ยังใช้งานไม่ได้ มีวิธีแก้ปัญหาที่แตกต่างกันในเรื่องนี้หรือไม่?
yourselfmiqdad

1

เซิร์ฟเวอร์อาจได้รับการชุบแข็ง สาเหตุอาจเป็น) ลูกค้าไม่สามารถกำหนดค่า ip ใน / etc / allowhosts และ / หรือ b) กฎไฟร์วอลล์ unix / linux / selinux ไม่ได้รับอนุญาต


0

ฉันมีปัญหาเดียวกันเป็นเวลานานฉันใช้ putty เพื่อเชื่อมต่อกับอินสแตนซ์ของ AWS linux (เซิร์ฟเวอร์คลาวด์ระยะไกลบางแห่ง) ฉันอ่านเกี่ยวกับการแก้ไขด้วย keepAlives ในหลาย ๆ หน้าพยายามหลายครั้ง แต่ไม่มีประโยชน์

และเมื่อวานนี้ในขณะที่กำลังมองหาการตั้งค่ารูปแบบสีฉันพบสิ่งนี้: https://github.com/jblaine/solarized-and-modern-putty

นอกจากการปรับสีของเทอร์มินัลแล้วมันยังใช้ค่าเริ่มต้นบางอย่างที่มีสติ (เช่น KeepAlives forementioned ถึง 59 วินาทีรวมถึงอื่น ๆ ) และคาดเดาอะไร ฉันไม่ได้มีการเชื่อมต่อปิดใด ๆ ทั้งสองวัน


-1

คุณไม่ได้ใช้งานนานกว่าการหมดเวลาเซสชันบนอุปกรณ์ระยะไกลดังนั้นจึงปิดเซสชันและ PuTTy ไม่ได้คาดหวัง


1
ไม่แน่นอนแม้ว่า: ถ้าคุณออกจากระบบ (หรือออกจากระบบแรง) การเชื่อมต่อจะยุติลงอย่างสง่างาม สิ่งที่เกิดขึ้นที่นี่คือการเชื่อมต่อ TCP พื้นฐานถูกปิดอย่างใด (“ การรีเซ็ตการเชื่อมต่อโดยเพียร์”) ดังนั้น“ ไม่คาดคิด”
Daniel B

คุณเห็น "รีเซ็ต" อยู่ที่ไหน สำหรับฉันความหมายที่ชัดเจนของ "ปิดโดยไม่คาดคิด" คือไม่คาดว่าจะปิด TCP ที่ระดับ SSH และการทดสอบยืนยันสิ่งนี้: ถ้าฉันออกจากหรือฆ่าเปลือกของฉันฉันจะได้รับแพ็คเก็ตเซิร์ฟเวอร์ SSH (ฉัน หรือ DISCONNECT) จากนั้น FIN ทำการแลกเปลี่ยนและ Putty ปรากฏขึ้น "ปิดโดยโฮสต์ที่ห่างไกล"; OTOH ถ้าฉันฆ่า -9 sshd ของฉันฉันจะได้รับการแลกเปลี่ยน TCP FIN เท่านั้นและ "เซิร์ฟเวอร์ที่ไม่คาดคิดการเชื่อมต่อเครือข่ายปิด" หากเป็น RST (และไม่ใช่ที่ SYN ซึ่งหมายถึงถูกปฏิเสธ) ฉันจะสงสัยว่ามีบางมิดบ็อกซ์สอดคล้องกับความคิดเห็นอื่นของคุณ
dave_thompson_085

@ dave_thompson_085 คุณพูดถูกฉันสับสน FIN และ RST มิฉะนั้น KiTTY กล่าวว่า“ ซอฟต์แวร์ทำให้การเชื่อมต่อล้มเหลว”
Daniel B
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.