Odpowiedzi:
Ponowne uruchomienie sshd po zalogowaniu przez ssh nie rozłączy połączenia ssh.
Jeśli martwisz się konfiguracją, zaloguj się kilka razy przez ssh i uruchom ponownie. Jeśli nie możesz już ssh, dzięki nowym połączeniom masz teraz dostęp do rozwiązania problemów.
Wspomniany poniżej w komentarzu @Milan Babuškov: sshd -t
przetestuje twoją konfigurację pod kątem poprawności składni, jeśli naprawdę chcesz być pewien.
Inną sugestią @Ronald Pottol było skonfigurowanie cron
zadania ponownego uruchomienia serwera przy znanej działającej konfiguracji. Być może przesada, ale jeśli aktualizujesz serwer o znaczeniu krytycznym itp., Czasami nigdy nie możesz być zbyt ostrożny.
sshd -t
rzeczy samej, prosto z wiarygodnego źródła: tryb testowy. Sprawdź tylko poprawność pliku konfiguracyjnego i poczytaj klucze. Jest to przydatne do niezawodnej aktualizacji sshd, ponieważ opcje konfiguracji mogą ulec zmianie.
Jeśli masz dostęp do sprzętu, możesz rozważyć umieszczenie terminala na porcie szeregowym / dev / ttyS0. Następnie możesz mieć tylne drzwi do swojego serwera.
po prostu dodaj
SO:2345:respawn:/sbin/mingetty ttySO
do twojego / etc / inittab, a terminal pojawi się na twoim porcie szeregowym. Możesz użyć koncentratora portów szeregowych lub modemu zerowego z serwera obok niego.
Nie martw się, bieżąca sesja nie zostanie rozłączona, nawet jeśli wystąpi problem z nową konfiguracją.
Po zastosowaniu nowej konfiguracji i ponownym uruchomieniu sshd, spróbuj zalogować się kilka razy i spójrz na logi, aby sprawdzić, czy wszystko jest w porządku.
Lub użyj crona lub w pracy, aby uruchomić go ponownie, jeśli masz pecha?
cron
lub at
działałoby, aby skopiować „znany” działający program, tj. starą konfigurację, z powrotem, a następnie ponownie uruchomić usługę ...
Czy nie możesz po prostu uruchomić kill -HUP w PID usługi SSH? Nie jest czysty, ale działa
SIGHUP
jest to czysty sposób na ponowne załadowanie konfiguracji demona.
pkill -HUP sshd
zamknąłem moje połączenie. To zadziałało:kill -HUP $(pgrep -f /usr/bin/sshd)
Przekonałem się, że obecnie sshd
nie rozłącza twoich sesji podczas restartu, szczególnie gdy jest to dystrybucja oparta na Redhat. Zawsze możesz napisać mały skrypt, który automatycznie przywróci sshd
konfigurację z kopii zapasowej i uruchomi się ponownie sshd
po 5 minutach jako zadanie cron
lub at
zadanie. Zapewni to, że nawet jeśli zostaniesz rozłączony, będziesz mógł przynajmniej wrócić do swojego serwera.
Nie polecam restartowania / przeładowywania dysku SSHD na połączeniu sshd. Widziałem wiele razy, w których sshd po prostu nie uruchamiał się ponownie z powodu błędu składniowego w sshd_config.
Mimo że wszystko jest w porządku z plikiem konfiguracyjnym, jest to ryzykowne.