“Yazma başarısız: Kesik boru” ile SSH Bağlantıları donuyor


12

Bir Ubuntu 11.04 makinesinden SSH üzerinden CentOS 5.5 kutusuna bağlanıyorum.

Bağlantının aktif kullanımdayken (örn. Gecikme veya kayıp yok) beklendiği gibi çalıştığı görülüyor, ancak bir süre devre dışı bırakılırsa donacak ve yanıt vermeyecektir. Sonunda "Yazma başarısız: Kırık boru" hata mesajı döndürülecek ve yerel makinemin komut istemine geri döneceğim.

Bunun hatalarını ayıklamak, neler olduğunu öğrenmek ve bunu çözmek için ne tür şeyler yapabilirim? Bir geliştirici olarak, bu hayatımı sürekli yeniden bağlanmak zorunda olan bir acı haline getiriyor.

Yanıtlar:


15

CentOS kutusunun SSHD yapılandırması istemcinin KeepAlive yapmak için ayarlanmamış gibi görünüyor.

Bu iki satırı CentOS sshd yapılandırmanıza bırakın (/ etc / ssh / sshd_config), yeniden başlatın ve keyfini çıkarın!

KeepAlive yes
ClientAliveInterval 60

Siz oradayken screen, oturumunuzu CentOS tarafında canlı tutmak için gnu kullanmanızı tavsiye ederim .


1
TCPKeepAlive olarak yeniden adlandırıldığı şekliyle KeepAlive varsayılan değer olan evet olarak bırakılabilir. ClientAliveInterval yeterli olmalıdır. Bkz man sshd_config.
ypid

9

Asıl cevap, neredeyse her zaman, durum tabloları oldukça agresif bir zaman aşımına sahip olan, genellikle bir güvenlik duvarı olan bir çeşit NAT cihazına sahip olmanızdır. Ssh bağlantınızı belirli bir süre boşta bıraktığınız için NAT cihazı, iç adresiniz ve kaynak bağlantı noktası numarası ile geçici dış adresiniz ve bağlantı noktası numarası arasındaki eşlemeyi "unutur".

Daha sonra bu ssh penceresinde bir şey yapmaya çalıştığınızda, hedef ssh sunucusunun bilgisi olmayan ve yanıt vermeyen yeni bir geçici adres / bağlantı noktası çifti atanır; daha sonra bazı yerel zaman aşımına ulaşılır ve bağlantı yerel makineniz tarafından kesilir.

Bunun için pratik düzeltme, yuriismaster'ın önerdiklerini yapmaktır: KeepAlives'i etkinleştirin (bu durum tablo girişini "gıdıklamak" için düzenli trafik sağlar) ve screenuzak tarafta kullanın (bir şeylerin düşmesi durumunda durumu korumak için). Sadece bu cevabı gönderiyorum çünkü ne olduğunu ve bununla ilgili ne yapacağınızı sordunuz. Umarım bu, yuriismaster'ın önerilerinin neden iyi olduğunu açıklar.


Bu çok mantıklı! Bu kutu için DMZ kurulumlu bir NAT var. Zaman aşımı yapılandırmasını bir deneyeceğim ve bunun benim için işe yarayıp yaramadığını göreceğim. Teşekkürler :)
Stephen RC

Sorunun arkasındaki nedenleri anlamama yardımcı olduğunuz için sizinkini kabul ediyorum. Ancak kredinin düzeltilmesi için @yuriismaster'a gitmesi gerekiyor.
Stephen RC

Valorin: Kesinlikle öyle ve ilkti. Açıkçası bence kabulü benden daha çok hak ediyor; ama bu sizin sorunuz, bu yüzden uygun gördüğünüz gibi gitmeli. Her iki durumda da geri bildiriminiz için teşekkürler.
MadHatter
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.