Jak włączyć logowanie roota przez SSH w Ubuntu
Domyślnie Ubuntu wyłącza logowanie roota przez SSH ze względów bezpieczeństwa. Ograniczenie to pomaga chronić serwery przed nieautoryzowanym dostępem, ponieważ konto root ma pełną kontrolę nad systemem. Jednak w niektórych sytuacjach, takich jak rozwiązywanie problemów lub wykonywanie zadań administracyjnych, może być konieczne włączenie logowania roota przez SSH. W tym przewodniku przejdziemy przez proces włączania logowania roota przez SSH w Ubuntu, podkreślając jednocześnie kilka ważnych względów bezpieczeństwa.
Ważne kwestie bezpieczeństwa
Przed włączeniem logowania roota przez SSH należy pamiętać, że może to narazić system na poważne zagrożenia bezpieczeństwa. Oto kilka środków ostrożności, które należy podjąć:
- Użyj silnego hasła: Upewnij się, że hasło roota jest złożone i trudne do odgadnięcia.
- Włącz zaporę sieciową: Użyj ufw lub innej zapory sieciowej, aby ograniczyć dostęp do SSH tylko z zaufanych adresów IP.
- Używaj kluczy SSH: Zaleca się używanie kluczy SSH do uwierzytelniania zamiast polegania wyłącznie na hasłach.
- Wyłącz logowanie główne po zakończeniu: Po zakończeniu zadań administracyjnych wyłącz logowanie roota, aby zminimalizować potencjalne ryzyko.
Wymagania wstępne
- Konto użytkownika z uprawnieniami sudo.
- Dostęp SSH do serwera Ubuntu.
Krok 1: Włącz hasło użytkownika root
Jeśli jeszcze nie ustawiłeś hasła dla użytkownika root, musisz to zrobić. Domyślnie Ubuntu wyłącza logowanie roota, nie ustawiając hasła dla konta roota. Aby ustawić lub zmienić hasło roota, uruchom następujące polecenie:
sudo passwd root
Zostaniesz poproszony o wprowadzenie nowego hasła dla użytkownika root. Upewnij się, że wybrałeś silne hasło. Po potwierdzeniu nowego hasła konto root zostanie włączone.
Krok 2: Edycja pliku konfiguracyjnego SSH
Aby włączyć logowanie roota przez SSH, należy zmodyfikować plik konfiguracyjny demona SSH, sshd_config.
- Otwórz plik konfiguracyjny SSH za pomocą preferowanego edytora tekstu. Na przykład:
sudo nano /etc/ssh/sshd_config
- Poszukaj następującego wiersza w pliku konfiguracyjnym:
PermitRootLogin prohibit-password
Ta linia oznacza, że logowanie roota jest wyłączone dla uwierzytelniania hasłem, ale może być dozwolone przy użyciu kluczy SSH.
- Zmień tę linię na:
PermitRootLogin yes
Ta zmiana pozwoli użytkownikowi root zalogować się przy użyciu hasła.
- Zapisz zmiany i wyjdź z edytora. Jeśli używasz nano, możesz zapisać, naciskając CTRL O, a następnie nacisnąć Enter i wyjść za pomocą CTRL X .
Krok 3: Uruchom ponownie usługę SSH
Aby zmiany odniosły skutek, należy ponownie uruchomić usługę SSH:
sudo systemctl restart ssh
Alternatywnie można użyć:
sudo service ssh restart
To polecenie zastosuje nowe ustawienia i umożliwi logowanie roota przez SSH.
Krok 4: Przetestuj logowanie SSH roota
Po włączeniu logowania roota nadszedł czas, aby je przetestować:
- Otwórz klienta SSH lub terminal.
- Połącz się z serwerem przy użyciu nazwy użytkownika root:
ssh root@your_server_ip
- Wprowadź hasło roota, które ustawiłeś wcześniej.
Jeśli wszystko zostało poprawnie skonfigurowane, powinieneś być w stanie zalogować się jako użytkownik root.
Krok 5: Przywróć zmiany po użyciu (zalecane)
Ze względów bezpieczeństwa najlepiej jest wyłączyć logowanie roota przez SSH po wykonaniu niezbędnych zadań. Aby to zrobić:
- Otwórz ponownie plik konfiguracyjny SSH:
sudo nano /etc/ssh/sshd_config
- Zmień opcjęz powrotem na:
PermitRootLogin
PermitRootLogin prohibit-password
- Uruchom ponownie usługę SSH:
sudo systemctl restart ssh
Spowoduje to ponowne wyłączenie logowania roota, umożliwiając dostęp tylko za pośrednictwem kont użytkowników z uprawnieniami sudo.