Jak włączyć logowanie roota przez SSH w Ubuntu ⋆ ALexHost SRL
Sprawdź swoje umiejętności we wszystkich naszych usługach hostingowych i otrzymaj 15% zniżki!

Użyj kodu przy kasie:

Skills
11.02.2025

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ąć:

1️⃣ Używaj silnego hasła 🔑
Upewnij się, że twoje hasło roota jest złożone, zawiera wielkie i małe litery, cyfry i znaki specjalne. Unikaj używania łatwych do odgadnięcia słów lub wzorów. Rozważ użycie menedżera haseł do generowania i przechowywania bezpiecznego hasła.

2️⃣ Włącz zaporę sieciową 🔥
Skonfiguruj zaporę sieciową, taką jak UFW (Uncomplicated Firewall) lub iptables, aby ograniczyć dostęp do krytycznych portów. Ogranicz dostęp SSH tylko do zaufanych adresów IP i blokuj niepotrzebne usługi, aby zmniejszyć potencjalne wektory ataku. Regularnie aktualizuj reguły zapory sieciowej w oparciu o potrzeby bezpieczeństwa.

3️⃣ Używaj kluczy SSH do uwierzytelniania 🛡️
Zamiast polegać na hasłach, użyj uwierzytelniania kluczem SSH, które zapewnia dodatkową warstwę bezpieczeństwa. Wygeneruj parę kluczy za pomocą ssh-keygen, bezpiecznie przechowuj klucz prywatny i dodaj tylko klucz publiczny do swojego serwera. Całkowicie wyłącz uwierzytelnianie hasłem, aby zapobiec atakom typu brute-force.

4️⃣ Zmiana domyślnego portu SSH 🔄
Domyślnie SSH działa na porcie 22, co czyni go częstym celem automatycznych ataków. Zmień port na niestandardowy (np. 2222 lub 5822) w pliku konfiguracyjnym SSH(/etc/ssh/sshd_config). Upewnij się, że nowy port jest otwarty w ustawieniach zapory sieciowej.

5️⃣ Wyłącz logowanie roota po konfiguracji 🚫
Po zakończeniu wstępnej konfiguracji i zadań administracyjnych należy wyłączyć bezpośrednie logowanie roota, aby zminimalizować ryzyko związane z bezpieczeństwem. Zamiast tego utwórz oddzielnego użytkownika z uprawnieniami sudo. Zmodyfikuj /etc/ssh/sshd_config i ustaw PermitRootLogin no, aby zapobiec nieautoryzowanym próbom dostępu.

6️⃣ Włącz Fail2Ban dla zapobiegania włamaniom 🔍
Zainstaluj Fail2Ban, aby monitorować dzienniki SSH i automatycznie blokować adresy IP po wielu nieudanych próbach logowania. Pomaga to chronić przed atakami typu brute-force i nieautoryzowanym dostępem. Dostosuj reguły Fail2Ban dla lepszego bezpieczeństwa.

7️⃣ Aktualizuj swój system ⚙️
Regularnie aktualizuj system operacyjny, zainstalowane oprogramowanie i poprawki bezpieczeństwa za pomocą apt update && apt upgrade (dla Debiana/Ubuntu) lub yum update (dla CentOS/RHEL). Nieaktualne oprogramowanie może zawierać luki, które mogą zostać wykorzystane przez atakujących.

8️⃣ Wdrożenie uwierzytelniania dwuskładnikowego (2FA) 🏆
Aby uzyskać dodatkową warstwę bezpieczeństwa, włącz 2FA dla dostępu SSH za pomocą narzędzi takich jak Google Authenticator lub Duo Security. Zapewnia to, że nawet jeśli poświadczenia zostaną naruszone, nieautoryzowany dostęp jest nadal blokowany bez drugiego czynnika uwierzytelniania.

Wdrażając te środki, znacznie zwiększasz bezpieczeństwo swojego VPS, chroniąc go przed atakami typu brute-force, nieautoryzowanymi logowaniami i potencjalnymi lukami w zabezpieczeniach. 🚀

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.

  1. Otwórz plik konfiguracyjny SSH za pomocą preferowanego edytora tekstu. Na przykład:
    sudo nano /etc/ssh/sshd_config
  2. 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.

  3. Zmień tę linię na:
    PermitRootLogin yes

    Ta zmiana pozwoli użytkownikowi root zalogować się przy użyciu hasła.

  4. 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ć:

  1. Otwórz klienta SSH lub terminal.
  2. Połącz się z serwerem przy użyciu nazwy użytkownika root:
    ssh root@your_server_ip
  3. 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ć:

  1. Otwórz ponownie plik konfiguracyjny SSH:
    sudo nano /etc/ssh/sshd_config
  2. Zmień opcję PermitRootLogin z powrotem na:
    PermitRootLogin prohibit-password
  3. 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.

Sprawdź swoje umiejętności we wszystkich naszych usługach hostingowych i otrzymaj 15% zniżki!

Użyj kodu przy kasie:

Skills