Jak zwiększyć limit czasu połączenia SSH

Jak zwiększyć limit czasu połączenia SSH
Jeśli użytkownik pozostaje nieaktywny przez długi czas po połączeniu z serwerem zdalnym, użytkownik musi ponownie połączyć się z serwerem za pomocą SSH. Połączenie serwera resetuje się, jeśli użytkownik nie wykonuje żadnej czynności przez jakiś czas. Jest to konieczne do celów bezpieczeństwa. Ale kiedy użytkownik próbuje wykonać dowolne zadanie na serwerze, które potrzebuje długich czasów, użytkownik będzie musiał logować się wiele razy po określonym czasie. Czasami staje się to bardzo irytujące dla użytkownika. Użytkownik będzie musiał zwiększyć limit czasu połączenia SSH w celu rozwiązania tego problemu; Można to zrobić na dwa sposoby. Jednym ze sposobów jest ustawienie opcji utrzymania w pliku konfiguracyjnym serwera, a innym sposobem jest ustawienie opcji Keep-Alive w pliku konfiguracyjnym klienta. W tym samouczku wyjaśniono obie sposoby.

Wymagania wstępne:

Przed rozpoczęciem kroków w tym samouczku konieczne będą następujące kroki do ukończenia.

Włącz usługę SSH na Ubuntu, jeśli nie jest ona wcześniej włączona.

Wygeneruj pary kluczy SSH, aby wykonać polecenia na zdalnym serwerze. Uruchom następujące polecenie, aby utworzyć klucz publiczny i klucz prywatny. Klucz prywatny będzie przechowywany na zdalnym serwerze, a klucze publiczne będą bezpiecznie przechowywane w kliencie.

$ ssh -keygen -t rsa

Uruchom następujące polecenie, aby otworzyć sshd_config Plik za pomocą nano edytora, aby dodać niezbędne konfiguracje.

$ sudo nano/etc/ssh/sshd_config

Dodaj następujące wiersze w pliku, aby włączyć logowanie root i uwierzytelnianie oparte na hasłach.

HasłoAuthentication Tak
Pertrootlogin Tak

Uruchom następujące polecenie, aby ponownie uruchomić usługę SSH.

$ sudo service ssh restart

Ustaw opcje utrzymania w pliku konfiguracyjnym serwera:

Jednym ze sposobów zwiększenia limitu czasu połączenia SSH jest modyfikacja pliku konfiguracyjnego komputera serwerowego. Ale to nie jest bezpieczny sposób, ponieważ to ustawienie będzie miało zastosowanie do wszystkich maszyn klientów, które połączą się z komputerem serwerowym. Tak więc alternatywny sposób zwiększenia połączenia SSH jest lepszą opcją, która została opisana w następnej części samouczka. Zaloguj się do komputera serwerowego i otwórz /etc/ssh/sshd_config Plik z dowolnego edytora, aby ustawić niezbędne wartości parametrów dla konfiguracji po stronie serwera. Wartości ClientAliveInterval I ClientAliveCountMax Parametry są ustawione na zwiększenie limitu czasu połączenia SSH. ClientAliveInterval służy do ustawiania przedziału limitu czasu w sekund. Jeśli żadne dane nie zostaną przekazane po czasie przypisanym w tym parametrze, serwer wyśle ​​komunikat żądania do klienta za pośrednictwem zaszyfrowanego kanału dla odpowiedzi. Domyślna wartość tego parametru to 0. ClientAliveCountMax służy do ustawienia liczby żywych wiadomości od klienta. Po osiągnięciu wartości tego parametru, ale serwer nie otrzymuje żadnej odpowiedzi od klienta, serwer rozłącza połączenie. Tak więc całkowita wartość limitu czasu jest obliczana na podstawie następującej formuły.

Wartość limitu czasu = ClientAliveInterval * ClientAliveCountMax

Uruchom następujące polecenie, aby otworzyć plik za pomocą nano edytora i ustaw 3600 sekund dla wartości ClientAliveInterval i 3 dla wartości ClientAliveCountMax.

$ sudo nano/etc/ssh/sshd_config

Ustaw wartości takie jak następujący obraz. Zgodnie z powyższą formułą serwer rozłącza połączenie po sekundach 10800 (3600 × 3), jeśli klient nie wysyła odpowiedzi. Tak więc serwer będzie żył przez 10800 sekund lub 180 minut.

Teraz uruchom następujące polecenie, aby ponownie uruchomić serwer.

$ sudo systemctl restart sshd

Ustaw opcje utrzymania w pliku konfiguracyjnym klienta:

Innym sposobem na zwiększenie limitu czasu połączenia SSH jest zmodyfikowanie pliku konfiguracyjnego komputera klienta i jest on bezpieczniejszy niż poprzednia opcja. Zaloguj się do komputera klienta i otwórz plik/etc/ssh/ssh_config, aby ustawić niezbędne wartości parametrów, aby zwiększyć limit czasu połączenia SS. ServerAliveInterval I ServerAliveCountMax Parametry są ustawione na zwiększenie limitu czasu połączenia. Te parametry działają podobnie do parametrów konfiguracji po stronie serwera. ServerAliveInterval służy do ustawiania przedziału limitu czasu w sekundach i ServerAliveCountMax służy do ustawienia liczby żywych wiadomości z serwera. Klient wysyła pakiet do serwera w każdym zdefiniowanym przedziale ServerAliveInterval. If Klient nie otrzymuje żadnej odpowiedzi z serwera po wypróbowaniu przypisanej wartości ServerAliveCountMax, Następnie klient odłączy połączenie.

Uruchom następujące polecenie, aby otworzyć plik za pomocą nano edytora i ustaw 180 sekund dla ServerAliveInterval wartość i 4 dla ServerAliveCountMax wartość.

$ sudo nano/etc/ssh/ssh_config

Dodaj następujące wiersze na końcu pliku. Zgodnie z przypisaną wartością klient wyśle ​​pakiet do 180 sekund lub 3 minuty 4 razy. Jeśli serwer nie wysyła żadnej odpowiedzi w ciągu 720 (180 × 4) sekund lub 12 minut, wówczas połączenie zostanie odłączone przez klienta automatycznie. Tutaj wartość hosta serwera to „Fahmida”, a adres IP nazwy hosta wynosi 10.0.2.15.

Gospodarz Fahmida
Nazwa hosta 10.0.2.15
ServerAliveInterval 180
ServerAliveCountMax 4


Zmodyfikuj plik jak następujący obraz.

Po użyciu dowolnego z wyżej wymienionych sposobów zaloguj się do komputera klienta i uruchom polecenie SSH z terminala, aby połączyć się z serwerem. Będziesz musiał stać się nieaktywnym przez długi czas na komputerze klienckim, aby sprawdzić, czy czas połączenia SSH jest zwiększony lub nie. Serwer odłączy połączenie, jeśli pozostaniesz bezczynny przez 180 minut, a klient odłączy połączenie, jeśli pozostaniesz nieaktywny przez 12 minut.

Wniosek:

Zarówno bezpieczne, jak i niepewne sposoby zwiększenia limitu czasu połączenia SSH zostały pokazane w tym samouczku, aby pomóc użytkownikom utrzymać połączenie SSH przy życiu.