Cygwin ssh sunucusu bağlantıları kabul etmiyor


14

Ben sadece cygwin kullanarak bir Windows 7 makinesinde bir SSH sunucusu (OpenSSH) kurdum ve ben bir Windows Vista makinesinde PuTTY kullanarak bağlanmaya çalışıyorum ama Bağlantı zaman aşımına uğramaya devam ediyorum. Wireshark ile Win 7 makinesindeki ağ etkinliğini kontrol ettim ve Win 7 makinesindeki 22 numaralı bağlantı noktasında TCP SYN aldığımı fark ettim, ancak ssh sunucusu yanıt vermiyor gibi görünüyor. Ben sshd kullanmak üzere yapılandırılmış bağlantı noktası numarasını kontrol ettim, güvenlik duvarı kurallarımı kontrol ve localhost ssh (ki ben sadece iyi olabilir) doğruladı. Bu sorunun nasıl giderileceği hakkında hiçbir fikrim yok.


Muhtemelen güvenlik duvarınızı tekrar kontrol etmeli ve / veya bu konu hakkında ayrıntılı bilgi vermelisiniz.
jjlin

Yanıtlar:


23

Windows Güvenlik Duvarı çalışıyor olabilir. Aç: Denetim Masası -> Windows Güvenlik Duvarı -> Windows Güvenlik Duvarı üzerinden bir programa veya özelliğe izin ver

"Ayarları değiştir" düğmesini ve ardından "Başka bir programa izin ver ..." düğmesini tıklayın. SSHD muhtemelen gelen listede değil, bu nedenle ikili dosyayı bulmak için "Gözat ..." düğmesini kullanın ve "Aç" ı ve ardından "Ekle" yi tıklayın. Benimki C: \ cygwin \ usr \ sbin \ sshd.exe

Orada bir yerde kullanmak istediğiniz "Ağ konumu türleri ..." ne karar verebilirsiniz. Özel işaretli ve genel olarak işaretsiz olarak mayın bıraktım. Artık uzaktan giriş yapabilirim.


İçin Ek Frank'in cevap benim ev ağındaki bir bilgisayarda bir gizlilik VPN yüklü, bu aynı sorunu gördüm. VPN ile bilgisayar şimdi sshd ile ortak bir ağda bağlantı kuruyordu. Bunu düzeltmek için sshd'ye özel ve genel konumlar için Windows Güvenlik Duvarı üzerinden izin vermek zorunda kaldım.
James Hirschorn

5

Senin mu sshd_config belirtmek ListenAddress olarak 0.0.0.0 veya 127.0.0.1 ?

0.0.0.0 ise veya sadece yorum yaptıysanız , makinenin dışından, yani başka bir bilgisayardan bağlanabilirsiniz.

E? Er 127.0.0.1 (veya başka 127.0.0.x numarası), o zaman SADECE LOCALHOST'ta üzerinde dinliyor ve yalnızca AYNI makineden giriş yapabilirsiniz. Harici makineler reddedildi.


2
Yorumlandı.
Surma

1

Hiçbir etki için windows güvenlik duvarı ile uğraştıktan sonra sonunda /etc/hosts.allow dosyası aracılığıyla Cygwin kendi alt ağ bağlantıları izin vermek zorunda bulundu.

Bu kural (alt ağımı kullanarak) ilk kural olarak benim için sorunu düzeltti.

TÜMÜ: 192.168.0.0/24: izin ver


1
Hosts.allow veya hosts.deny ile ilgili bir sorun, bağlantı zaman aşımına neden olmaz. SSH sunucusunun bağlantıyı kabul etmesine ve ardından kimlik doğrulama işlemi sırasında düşmesine neden olur.
Kenster

@Kenster hosts.allow ve hosts.deny TCP düzeyinde çalışır. SSH sunucusuna erişmeden önce katman 4'te engellendiğiniz için SSH sunucusuna bağlanamazsınız.
mtak

@mtak Hayır, bu doğru değil. hosts.allow ve hosts.deny TCP Paketleyicileri için yapılandırma dosyalarıdır . Sunucu programı (bu durumda sshd) TCP bağlantısını kabul etmeli, uzak uç noktanın IP adresini almalı, sonra istemciye izin verilip verilmeyeceğini görmek için TCP sarmalayıcılarını çağırmalıdır. Libwrap hayır diyorsa, sunucu genellikle bağlantıyı keser.
Kenster

Bkz mesela sshd.c . LIBWRAP ifdefs'i arayın. İşte sshd'nin çağırdığı hosts_access işlevi . Ayrıca sshd.c'nin en son sürümünün libwrap desteğini kaldırdığını da not edeceğim .
Kenster

@Kenster, benim hatam, haklısın. Ben denedim ve aşağıdaki hatayı alıyorum: ssh_exchange_identification: Connection closed by remote host. İyi günler SU :)
mtak

1

Benim için sorun /var/emptydosyanın yanlış sahiplenmesiydi . Sorun sshd'yi hata ayıklama moduna soktuktan sonra belirginleşti /usr/sbin/sshd.exe -D -dd. Bunu düzeltmek zorunda kaldım:

chown [user]:[group] /var/empty

Kullanıcı ve grup dizinden alındı ls -la /var(diğer dosyalarla eşleştirildi). Daha fazla bilgiyi burada bulabilirsiniz: https://docs.oracle.com/cd/E24628_01/install.121/e22624/preinstall_req_cygwin_ssh.htm#EMBSC340


İşaret ettiğiniz için teşekkür ederizsshd -D -dd
John Oxley

0

Kazandığınızdan emin olun 7 Antivirus 22 numaralı bağlantı noktasını engellemiyor. Ayrıca, Windows hizmet panelinize gidin ve CYGWINsshd'yi arayın ve etkinleştirin. kutuyu bulmak ve işaretlemek için oturum açma ayarını yapın.

Bu sorunu düzeltir: user @ mymachine ~ $ net start sshd Sistem hatası 1069 oluştu.

Oturum açma hatası nedeniyle hizmet başlamadı.

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.