Co oznacza „Normal Shutdown, Dziękujemy za grę [preauth]” W logach SSH?

37

Ostatnio, Moje podsumowania dziennika SSH dla moich serwerów Ubuntu 12.04 w Logwatch zaczęły wyświetlać wpisy dla „11: Normalne wyłączenie, Dziękujemy za grę w [preauth]” wraz z „11: Bye Bye [preauth]” i „11: odłączony przez wiadomości użytkowników ”, które wyświetlali wcześniej.

Nie widziałem tego komunikatu w moich dziennikach przed kilkoma tygodniami, ani nie widziałem go na moich starszych serwerach, które utknęły na Ubuntu 10.04. Przeszukałem tę wiadomość i nie mogę tam znaleźć żadnych jasnych wyjaśnień.

Adresy IP, które próbują się zalogować i odebrać tę wiadomość, są przypadkowymi próbami włamania i sądząc po preauth zakładam (mam nadzieję), że nie powiodły się, ale chciałbym wiedzieć dokładnie, co oznacza ta wiadomość i jak różni się od innych, aby się upewnić.

EDYCJA w celu uzyskania dodatkowych informacji: Moje serwery mają zarówno uwierzytelnianie hasłem, jak i uwierzytelnianie rootem

Dave Stern
źródło
Jaka wersja libssh2 i czy była ostatnio aktualizowana? O ile mi wiadomo, jest to zwykłe zakończenie, gdy serwer nie może autoryzować użytkownika.
nerw
Sam SSH ma następujące wyjście „ssh -V”: OpenSSH_5.9p1 Debian-5ubuntu1.1, OpenSSL 1.0.1 14 marca 2012. Nie jestem pewien, gdzie mogę wyśledzić numer wersji libssh2.
Dave Stern

Odpowiedzi:

36

Gdy klient ssh wykonuje „normalne” połączenie, wysyła pakiet z komunikatem. Gdy demon ssh otrzymuje taki pakiet, gdy się go nie spodziewa - w tym przypadku, zanim użytkownik zdoła się uwierzytelnić - rejestruje komunikat. (Starsze wersje OpenSSH tego nie zrobiły). Więc twoje przypuszczenie jest dokładnie poprawne: jest to efekt uboczny ataku ssh polegającego na zgadywaniu hasła. Prawdopodobnie powinieneś uruchomić coś takiego jak fail2ban lub sshguard, aby zablokować je w iptables; nawet jeśli uważasz, że wszystko jest poprawnie skonfigurowane tak, aby nie zezwalać na hasła, dobrze jest mieć drugą warstwę obrony.

Garrett Wollman
źródło
15
Ale dlaczego "thank you for playing"?
Qback
7
@Qback 😂 Starsza wersja snarka z wczesnych siwych brod Linuxa.
aaiezza,
10

Przyjęta odpowiedź jest poprawna, ale pomyślałem, że opublikuję tę odpowiedź, aby uzupełnić ją o przyczynę zmiany wyjaśniającej, dlaczego administratorzy nie widzieli wcześniej takich wiadomości w swoich plikach dziennika.

Ten problem został omówiony na liście programistów OpenSSH w styczniu 2014 r. Według Damiena Millera, programisty OpenSSH ,

Wiadomość była tam w zasadzie na zawsze:

1.41 (markus 02-Jan-01): log („Otrzymano rozłączenie z% s:% d:% .400s”, ...

Jedyną rzeczą, która zmieniła się częściowo od niedawna, jest to, że poprawiliśmy rejestrowanie wiadomości przedautoryzacyjnych w trybie prywatnym w wersji 5.9, aby nie potrzebowały już /dev/logwewnątrz chroota privsep. Jeśli twoja stara wersja OpenSSH była <5.9 i /var/emptychroot nie miał /dev/logw niej, być może brakowało Ci tych wiadomości.

Anthony G - sprawiedliwość dla Moniki
źródło
2

Też zauważyłem te komunikaty w moich plikach dziennika od czasu ostatniej aktualizacji pakietu open-ssh na moich serwerach.

Jednak nie sądzę, aby wiadomości musiały oznaczać próby włamania. Niektóre wyrażenia są zakodowane na stałe w legalnych klientach ssh, prawdopodobnie jako pozostałości oryginalnego kodu programistycznego. Na przykład mój klient ssh (iOSSS) na iOS emituje tę frazę po odłączeniu się od własnych serwerów.

ebahn
źródło
1
Nie z [preauth]. Wskazuje to w szczególności, że klient nie uwierzytelnił się pomyślnie na serwerze.
Michael Hampton
1
Masz rację, Michael. Miałem na myśli jedynie zwrot „Normalne zamknięcie, dziękuję za grę”. Oczywiście, kiedy legalnie połączę się z własnym serwerem, następuje uwierzytelnienie. Myślę, że uwaga na to i podobne zwroty („Normalne wyłączenie ...”) jest taka, że ​​wcześniej nie były one widoczne w logach, a teraz są. Nie ma zmiany w zachowaniu klienta ssh.
ebahn