Podstawy Linux #4: Tworzenie użytkownika na serwerze

Domyślnie logujesz się jako root — konto z pełnymi uprawnieniami. To niebezpieczne na co dzień, bo każda pomyłka (np. rm -rf /) zadziała bez ostrzeżenia. Dlatego tworzymy osobnego użytkownika z uprawnieniami sudo.

Krok 1: Zaloguj się jako root

ssh root@ADRES_IP_SERWERA

Krok 2: Utwórz użytkownika

adduser roman

Komenda poprosi o: 1. Hasło (wymagane — wpisz silne hasło) 2. Pełne imię i nazwisko (opcjonalne — Enter żeby pominąć) 3. Numer pokoju (Enter) 4. Telefon służbowy (Enter) 5. Telefon domowy (Enter) 6. Inne (Enter) 7. Potwierdzenie: Y

💡 Podpowiedź

adduser to przyjazna wersja useradd — automatycznie tworzy katalog domowy i pyta o dane. Na Debian/Ubuntu zawsze używaj adduser.

Krok 3: Dodaj do grupy sudo

usermod -aG sudo roman

Teraz roman może wykonywać komendy administratorskie z przedrostkiem sudo.

Krok 4: Dodaj do grupy docker (opcjonalnie)

Jeśli planujesz uruchamiać kontenery Docker:

usermod -aG docker roman

⚠️ Uwaga

Członkostwo w grupie docker daje praktycznie uprawnienia roota. Dodawaj tylko użytkowników, którym ufasz.

Krok 5: Przetestuj użytkownika

Przełącz się na nowe konto:

su - roman

Sprawdź uprawnienia sudo:

sudo ls -la /root

Przy pierwszym użyciu sudo musisz podać hasło tego użytkownika (nie roota).

💡 Podpowiedź

Jeśli widzisz zawartość /root — wszystko działa. Jeśli dostajesz “is not in the sudoers file” — wróć na konto root (exit) i powtórz krok 3.

💡 Opcjonalnie: wyłączenie hasła przy sudo

Jeśli logujesz się kluczem SSH (a powinieneś!), możesz wyłączyć pytanie o hasło przy sudo. Wygodne, bo nie musisz wpisywać hasła przy każdym sudo apt update.

Na serwerze, jako root lub przez sudo:

sudo visudo

Na końcu pliku dodaj (zamień roman na swoją nazwę użytkownika):

roman ALL=(ALL) NOPASSWD: ALL

Zapisz (CTRL+O, Enter, CTRL+X). Jeśli visudo otworzy vim zamiast nano, użyj :wq żeby zapisać i wyjść. Możesz ustawić domyślny edytor: sudo EDITOR=nano visudo.

Ważne: rób to tylko jeśli logowanie hasłem SSH jest wyłączone i korzystasz z klucza. Wtedy klucz SSH jest Twoją “bramą wejściową” i dodatkowe hasło przy sudo nie daje dużo. Ale jeśli ktoś inny ma dostęp do serwera — zostaw hasło przy sudo jako dodatkową warstwę ochrony.

Krok 6: Wyloguj się i zaloguj jako użytkownik

Wpisz exit dwa razy (raz z su, raz z SSH), a następnie:

ssh roman@ADRES_IP_SERWERA

Krok 7: Skopiuj klucz SSH do użytkownika

Żeby logować się kluczem (bez hasła), skopiuj klucz publiczny:

# Z lokalnego komputera:
ssh-copy-id -i ~/.ssh/moj-serwer.pub roman@ADRES_IP_SERWERA

Potem zaktualizuj ~/.ssh/config na lokalnym komputerze:

Host moj-serwer
  HostName ADRES_IP_SERWERA
  User roman
  IdentityFile ~/.ssh/moj-serwer

Od teraz:

ssh moj-serwer

Loguje Cię jako roman bez hasła.

Podsumowanie kroków

  1. adduser roman — utwórz użytkownika
  2. usermod -aG sudo roman — daj uprawnienia admina
  3. usermod -aG docker roman — (opcjonalnie) dostęp do Dockera
  4. Przetestuj: su - romansudo ls /root
  5. ssh-copy-id — skopiuj klucz SSH
  6. Zaktualizuj ~/.ssh/config

Teraz, gdy masz bezpieczny dostęp do serwera, czas nauczyć się poruszać po systemie plików — następna lekcja.

Zabezpieczenie serwera (wyłączenie roota, fail2ban) opisuje lekcja 009.

Roman Rozenberger
Roman Rozenberger

Jestem digital marketerem ze specjalizacją w marketingu w wyszukiwarkach internetowych. Wdrażam automatyzacje z wykorzystaniem narzędzi LowCode, NoCode i AI. Identyfikuje procesy i rozwiązuję problemy.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *