Nie mogę znaleźć odpowiedzi na to proste pytanie, którego potrzebuję do dokumentacji zgodności.
Po domyślnej instalacji CentOS 6.5 (OpenSSH 5.3p1-94.el6), po jakim czasie bezczynności sesja SSH użytkownika zostanie zakończona? Uważam, że można ustawić następujące opcje, aby zwiększyć limit czasu bezczynności, ale są one domyślnie komentowane.
$ grep -i alive /etc/ssh/sshd_config
#TCPKeepAlive yes
#ClientAliveInterval 0
#ClientAliveCountMax 3
Czy istnieje również polecenie zrzucenia listy bieżących sshd
ustawień? Nic nie widzę man sshd
.
Odpowiedzi:
Komentowane linie
sshd_config
zwykle wyświetlają wartości domyślne. Tak jest w przypadku wszystkich wierszy w pytaniu. Możesz to sprawdzić na stroniesshd_config
podręcznika . Oto odpowiednie fragmenty:źródło
Możesz skonfigurować utrzymanie SSH po stronie klienta lub serwera:
Strona klienta
Plik:
/etc/ssh/ssh_config
Zawartość:
Po stronie serwera
Plik:
/etc/ssh/sshd_config
Zawartość:
Wyodrębniono z: http://www.sysadmit.com/2016/02/linux-y-vmware-ssh-evitar-desconexion.html
źródło
OpenSSH nie zakończy sesji powłoki, która była bezczynna przez pewien czas. To nie jest coś, co robi OpenSSH. Zakończenie bezczynnej sesji powłoki nie jest związane z konfiguracją OpenSSH.
Ustawienia, które wyświetlasz, są związane z limitami czasu, gdy połączenie zostanie zerwane i nie są powiązane z powłoką na zdalnym hoście i tym, co użytkownik robi lub nie robi.
Powłoka zdalnego hosta może zostać zakończona (lub może zostać zabita przez inny proces) po pewnym czasie bezczynności, ale nie jest to związane z konfiguracją usługi SSH na serwerze i klienta SSH.
Związane z:
TMOUT
o zmiennej powłoki, która może być odpowiedzialna za zakończenie nieaktywnejbash
powłoki).Aby zrzucić
sshd
konfigurację, użyj „rozszerzonego trybu testowego” jako root:Jest to udokumentowane w tym
sshd(8)
podręczniku (patrzącOpenSSH_7.7, LibreSSL 2.7.2
na OpenBSD tutaj):Ta opcja została dodana do
sshd
OpenSSH 5.1 / 5.1p1 w 2008 roku.źródło
Jeśli warunkiem jest zamknięcie połączenia SSH po okresie bezczynności, same powłoki dostarczają zmienne limitu czasu.
Do bash:
przetestuj to, uruchamiając
TMOUT=10
i poczekaj 10 sekund, aby zamknąć połączenie.Dla tcsh:
W tcsh składnia do ustawiania limitu czasu na dziesięć minut to
set autologout=10
. To nie działa w oryginalnym csh.źródło
Jeśli chcesz, aby limit czasu wynosił 10 sekund dla wszystkich, wykonaj następujące czynności dla konfiguracji serwera (sshd_config):
Jeśli chcesz, aby limit czasu wynosił 10 sekund dla klientów lokalnych, wykonaj następujące czynności dla konfiguracji klienta (ssh_config):
Jeśli parametr AliveCountMax jest niezerowy, prawdopodobnie nie zadziała, ponieważ serwer odpowie resetem timera (chyba że wystąpi problem z połączeniem). Możesz to zobaczyć, uruchamiając klienta ssh z włączonym debugowaniem.
źródło