Mam uruchomiony Ubuntu Server 10.04.1. Kiedy próbowałem zalogować się do serwera przez ssh, nie mogłem. Zamiast tego mam connection refused
błąd. Próbowałem pingować maszynę i dostałem odpowiedź! Oczywistym powodem jest zatrzymanie demona SSH.
Po ponownym uruchomieniu mogłem zalogować się na mój serwer przez ssh. Po pewnym czasie przejrzałem moje dzienniki /var/log/syslog
i znalazłem następujące rekordy:
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2465) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2469) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2473) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2477) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2481) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2485) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2489) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2493) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2497) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2501) terminated with status 255
Jan 16 10:57:09 myserver init: ssh respawning too fast, stopped
Szukałem podobnego problemu / rozwiązania. Niektórzy ludzie mówili, że jest to spowodowane przez demona SSH przed próbą uruchomienia sieci i zaproponować zmiany ListenAddress
w /etc/ssh/sshd_config
być 0.0.0.0
. Myślę, że nie jest to przyczyną w moim przypadku, ponieważ mój problem pojawia się po uruchomieniu systemu.
Masz pojęcie, co to powoduje? To jest Ubuntu Server i powinien być uruchomiony i dostępny zdalnie przy użyciu SSH.
AKTUALIZACJA:
Oto fragment dziennika, w którym znalazłem /var/log/auth.log
.
Jan 16 10:56:38 myserver sudo: user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/vim /etc/ssh/sshd_config
Jan 16 10:57:09 myserver sudo: user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/etc/init.d/ssh reload
Jan 16 10:57:09 myserver sshd[1465]: Received SIGHUP; restarting.
Jan 16 10:57:09 myserver sshd[2461]: Server listening on 0.0.0.0 port 22.
Jan 16 10:57:09 myserver sshd[2465]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2465]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2469]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2469]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2473]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2473]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2477]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2477]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2481]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2481]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2485]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2485]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2489]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2489]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2493]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2493]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2497]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2497]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2501]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2501]: fatal: Cannot bind any address.
Wygląda na to, że ten błąd zaczął pojawiać się po ponownym załadowaniu demona SSH. Czy powinienem unikać używania ssh reload
i używania ssh restart
zamiast tego?
Odpowiedzi:
Powinieneś sprawdzić, co się stało tuż przed rozpoczęciem SSH
syslog
. Jeśli podsystem sieci zginie, może to wyjaśnić, dlaczegosshd
zaczął się zawodzić.Sprawdziłbym również
/var/log/auth.log
. Jest tosshd
dziennik i może dać lepszy komunikat o błędzie.źródło
auth.log
pliku i zaktualizowałem swoje pytanie.reload
powinno być prawidłowym działaniem. To powinno wywołać wewnętrzny restart (i wydaje się, że próbowali i just got stuck). Spróbuj ponownie załadować i sprawdź, czy znowu się zablokuje.Właśnie miałem ten sam problem na moim pudełku 12.04. To znaczy te same objawy. Niestety, zawsze tak się działo, kiedy wprowadzałem
ListenAddress
klauzulę z adresamiinet
iinet6
wsshd_config
. Krótko mówiąc, wydaje się to być objawem zniekształceńsshd_config
- chociaż pliki dziennika nie zawierają takich informacji.Rozwiązywanie problemów
sshd
To, co ogólnie uważam za bardzo przydatne w takich przypadkach, to zacząć
sshd
bez pozwalania na demonizację. Problem w moim przypadku polegał na tym, że anisyslog
nieauth.log
wykazało niczego znaczącego.Kiedy uruchomiłem go z terminala, otrzymałem:
Dużo lepiej! Ten komunikat o błędzie pozwolił mi zobaczyć, co jest nie tak, i naprawić to. Żaden z plików dziennika nie zawierał tego wyniku.
Uwaga: przynajmniej w Ubuntu
$(which sshd)
jest to najlepsza metoda spełnieniasshd
wymogu bezwzględnej ścieżki. W przeciwnym razie będziesz się następujący błąd:sshd re-exec requires execution with an absolute path
. Te-p 10222
markisshd
słuchać tego alternatywnego portu, zastępując plik konfiguracyjny - to jest tak, że nie kolidują z potencjalnie uruchomionychsshd
instancji. Wybierz tutaj wolny port.Ta metoda pomogła mi wiele razy w znalezieniu problemów, czy to uwierzytelniania, czy innych typów. Aby uzyskać naprawdę pełne dane wyjściowe
stdout
, użyj$(which sshd) -Ddddp 10222
(zwróć uwagę na dodane wdd
celu zwiększenia szczegółowości). Aby uzyskać więcej informacji na temat sprawdzania poprawności debugowaniaman sshd
.Główną zaletą tej metody jest to, że pozwala ona sprawdzić
sshd
konfigurację bez konieczności restartowaniasshd
domyślnego portu. Zwykle nie powinno to zakłócać istniejących połączeń SSH, ale widziałem to. Dzięki temu można zweryfikować plik konfiguracyjny przed - potencjalnie - odcięciem dostępu do zdalnego serwera (na przykład mam go dla niektórych VPS, a nawet dla serwerów fizycznych, gdzie muszę zapłacić dodatkowo, aby uzyskać dostęp poza pasmem do maszyny).źródło
Wydaje się, że jest to wynik błędu # 687535, który został niedawno naprawiony w natty, i został przesłany zarówno do indywidualnego, jak i świadomego jako proponowana aktualizacja.
https://bugs.launchpad.net/ubuntu/lucid/+source/openssh/+bug/687535
Zachęcam wszystkich, aby tam poszli, wypróbowali przypadek testowy (wyszukaj TEST CASE) i opublikowali wyniki zarówno przed instalacją, jak i po instalacji proponowanej poprawki. Pomoże to zespołowi SRU zdecydować, że weryfikacja została wykonana i wyda ją jako aktualizację.
źródło
W
/etc/ssh/sshd_config
upewnij się, że wszystkie tak i nie ma małych liter. Na przykład, jeśli ustawiszPermitRootLogin No
, ssh nie uruchomi się. Tak naprawdę musi byćPermitRootLogin no
.źródło
Miałem podobny problem z obrazem Ubuntu 11.10 na Linode po ponownym uruchomieniu. Usługa ssh wygeneruje w syslog:
To pudełko testowe, które miało około 60 dni bezawaryjności, więc gdzieś po drodze zainstalowałem coś, co dopisało się do dolnej części sshd_config:
Komentowanie tych linii pozwoliło na uruchomienie ssh.
źródło
Ubuntu ssh nie uruchomił się, a syslog dał „inicjalizacja głównego procesu ssh (2044) zakończona statusem 255”
/ usr / sbin / sshd -Ddp 10222
Pewnie pracował dla mnie, aby ustalić błąd linii sshd_config
źródło
dostałem ten sam problem, górne rozwiązanie nie działa, ale mam rozwiązanie tego.
Ścieżka jest zgodna z dokumentem, więc uruchamiam ręcznie sshd.
Uprawnienie / var / run / sshd to.
to jest w porządku. uruchom ssh localhost i sprawdź.
źródło
sshd
nie działa poprawnie, jak widać z bardzo różnych komunikatów o błędach w ich dziennikach. -1