LAN bilgisayarlarım ve iki webhosting hesabım arasında çok fazla şey yapıyorum, bu yüzden herşeyi sıraladım ve ssh -v
nerede ve neyin yanlış gittiğini görmek için kullanılan kimlik doğrulama sorunları da dahil olmak üzere SSH ile bitti .
Bu sorunu yeni çözdüm ve cevaplardan memnun olmadığım için kendimi gerçekten "neden" olarak bilmek istedim ...
Benim durumumun tetikleyicisi şudur: işte yeni sunucu işletim sistemi kuruldu ve openssh-server paketi yüklendikten sonra, iş sunucusunda yeni bir ana bilgisayar anahtarı seti üretildi. Önceden, tüm sunucu işletim sistemim Ubuntu idi ve bu sefer Debian olarak değişti (ve izinlerde farklı bir fark olduğundan şüpheleniyorum).
Tüm işletim sistemleri Ubuntu olduğunda ve bir sunucunun işletim sistemini yeniden kurduğumda, ilk SSH'ye girdiğimde, yukarıdaki sessiz uyarı yerine tercih ettiğim bu tür bir uyarı alırım!
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
06:ea:f1:f8:db:75:5c:0c:af:15:d7:99:2d:ef:08:2a.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:4
RSA host key for domain.com has changed and you have requested strict checking.
Host key verification failed.
Sonra ~/.ssh/known_hostsssh'yi başlatan bilgisayarda açıyorum , bu satırı sil, yeniden bağlan ve bu olur:
chris@home ~ $ ssh work
The authenticity of host '[work]:11122 ([99.85.243.208]:11122)' can't be established.
ECDSA key fingerprint is 56:6d:13:be:fe:a0:29:ca:53:da:23:d6:1d:36:dd:c5.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[work]:11122 ([99.85.243.208]:11122)' (ECDSA) to the list of known hosts.
Linux rock 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64
Bit bitmesi: 11122, SSH'yi güvenlik duvarından yönlendirdiğim port numarası.
Eski bir Ubuntu sunucusundaki yedeklemeleri kontrol ettim ve yeni Debian kurulumuma göre farklı oldum:
Ubuntu: Debian:
# Package generated configuration file # Package generated configuration file
# See the sshd(8) manpage for details # See the sshd_config(5) manpage for details
# What ports, IPs and protocols we listen for # What ports, IPs and protocols we listen for
Port 22 Port 22
# Use these options to restrict which interface # Use these options to restrict which interfaces
#ListenAddress :: #ListenAddress ::
#ListenAddress 0.0.0.0 #ListenAddress 0.0.0.0
Protocol 2 Protocol 2
# HostKeys for protocol version 2 # HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_dsa_key
------------------------------------------------ HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security #Privilege Separation is turned on for security
UsePrivilegeSeparation yes UsePrivilegeSeparation yes
Evet, büyük olasılıkla, ev sahibi son zamanlarda ecdsa anahtarlarını kullanmaya başladı, ki Ubuntu'nun son zamanlarda yaptığı değişikliklere dayanarak bir güncelleme yapmakla suçlanacağım. Ubuntu'nun güvendiğim çok güçlü Linux işletim sisteminden uzaklaşması, bu sefer Debian'ı kurmamın nedeni.
Ecdsa'da bir security.SE q / a okudum ve bu satırı sshd_config
yeni Debian sunucumdan zaten kaldırdım . (ve koştu service ssh restart
)
The ECDSA host key for server has changed
. Benim yöntemim alandaki ilgili önbellek dizgesini kaldırmak~/.ssh/known_hosts
. Sonra ssh çalışır.