Alege planul

Serverul VPS: utilizator obișnuit și SSH doar cu cheie

Faci un utilizator cu sudo, îi pui cheia SSH, oprești intrarea ca root și cu parolă, pe Ubuntu, Debian, AlmaLinux sau Rocky, fără să rămâi pe dinafară.

  • Actualizat
ghid · servere vps
Pași
14
Citești în
4min
Secțiuni
5
Începe ghidul

Pe un server nou, roboții încearcă din primele ore să intre ca root, cu mii de parole. Doi pași îi opresc aproape de tot: lucrezi cu un utilizator obișnuit, care devine administrator doar când îi ceri (sudo), și serverul acceptă intrarea doar cu cheie SSH, nu cu parolă. Ghidul presupune că ai făcut deja Serverul VPS: primul login prin SSH și intri ca root cu cheia ta.

Ce vei reuși

  • ai un utilizator al tău, cu drept de administrare prin sudo;
  • intri cu el pe cheie SSH;
  • oprești intrarea directă ca root și intrarea cu parolă, fără să rămâi blocat afară.

Înainte să începi

  • Intri pe server ca root, cu cheia SSH (pasul D din Serverul VPS: primul login prin SSH).
  • Ține deschisă o sesiune SSH ca root tot timpul cât lucrezi la setări. Dacă greșești ceva, din ea repari. Testele le faci dintr-o fereastră nouă.
  • În exemple, utilizatorul nou se numește ana, iar 203.0.113.7 e IP-ul serverului.

Pașii

A. Faci utilizatorul

  1. Ubuntu și Debian:

    adduser ana
    usermod -aG sudo ana

    adduser îți cere o parolă pentru ana și câteva date opționale (poți apăsa Enter). Parola îți trebuie la sudo. Dacă pe Debian apare că grupul sudo sau comanda sudo lipsesc, instalează-le întâi cu apt install sudo.

  2. AlmaLinux și Rocky:

    adduser ana
    passwd ana
    usermod -aG wheel ana

    Pe acestea, grupul de administratori se numește wheel.

B. Îi dai cheia ta SSH

  1. Copiază cheia publică de la root la ana, cu drepturile corecte:
    mkdir -p /home/ana/.ssh
    cp /root/.ssh/authorized_keys /home/ana/.ssh/
    chown -R ana:ana /home/ana/.ssh
    chmod 700 /home/ana/.ssh
    chmod 600 /home/ana/.ssh/authorized_keys
  2. Dintr-o fereastră nouă a terminalului, pe calculatorul tău, intră ca ana:
    ssh ana@203.0.113.7
  3. Verifică sudo:

    sudo whoami

    După parola lui ana, trebuie să apară root. Dacă merge, treci mai departe. Dacă nu, repară din sesiunea root, rămasă deschisă.

C. Oprești intrarea ca root și cu parolă

  1. În sesiunea root, fă un fișier de setări separat pentru SSH:
    nano /etc/ssh/sshd_config.d/00-securizare.conf
  2. Scrie în el:

    PermitRootLogin no
    PasswordAuthentication no
    KbdInteractiveAuthentication no

    Salvează cu Ctrl+O, Enter, și ieși cu Ctrl+X. Dacă nano lipsește (se întâmplă pe AlmaLinux și Rocky), instalează-l cu dnf install nano.

    Numele începe cu 00- intenționat: SSH folosește prima valoare găsită pentru fiecare setare, iar fișierele din sshd_config.d se citesc în ordine alfabetică. Pe unele imagini, un fișier ca 50-cloud-init.conf pornește intrarea cu parolă; al tău, citit înaintea lui, câștigă.

  3. Verifică setările înainte să le aplici:

    sshd -t && sshd -T | grep -Ei 'permitrootlogin|passwordauthentication'

    Trebuie să vezi permitrootlogin no și passwordauthentication no, fără nicio eroare.

  4. Aplică:
    • Ubuntu și Debian: systemctl restart ssh
    • AlmaLinux și Rocky: systemctl restart sshd

D. Verifici că nu ai rămas pe dinafară

  1. Fereastră nouă: ssh ana@203.0.113.7 trebuie să meargă, cu cheia.
  2. Fereastră nouă: ssh root@203.0.113.7 trebuie să fie refuzată.
  3. Abia acum închide sesiunea root de la început. De acum, comenzile de administrare le dai ca ana, cu sudo în față.

Bine de știut

  • Fiecare calculator, cheia lui. Pentru laptopul de birou și pentru cel de acasă, fă câte o cheie (ssh-keygen pe fiecare) și adaugă fiecare cheie publică pe un rând nou în /home/ana/.ssh/authorized_keys. Dacă pierzi un calculator, ștergi doar rândul lui.
  • Pentru alți oameni, alți utilizatori. Nu împărți contul ana: fă fiecăruia utilizatorul lui, cu sudo doar dacă îi trebuie.
  • Portul SSH. Mutarea SSH de pe portul 22 pe altul reduce zgomotul din jurnale, dar nu e o protecție în sine; cheia e protecția. Dacă îl muți, deschide portul nou în firewall înainte (vezi Serverul VPS: actualizările și firewall-ul).

Dacă ceva nu merge

  • ssh ana@… cere parola, deși ai pus cheia. Drepturile din /home/ana/.ssh sunt greșite sau proprietarul nu e ana. Refă pasul 3 din sesiunea root.
  • „Permission denied (publickey)” pentru ana. Cheia publică nu e în authorized_keys sau folosești alt calculator. Verifică cu cat /home/ana/.ssh/authorized_keys din sesiunea root.
  • sudo spune „ana is not in the sudoers file”. Utilizatorul nu e în grupul sudo (sau wheel). Refă pasul 1 ori 2, apoi ieși și intră din nou ca ana.
  • Ai închis toate sesiunile și nu mai poți intra deloc. Noi nu intrăm pe serverul tău. Scrie-ne: dacă ai backupul automat sau un snapshot recent, îți refacem serverul din el; altfel, îți spunem ce opțiuni ai.
Suport

Te-ai blocat? Îl facem împreună.

Scrie-ne ce pas nu merge și, dacă se poate, trimite o captură de ecran. Îți răspundem în programul de lucru.

Telefon și WhatsApp+40 775 396 021
Programluni – vineri, 9:00 – 18:00

Nu ne trimite niciodată parola pe WhatsApp sau pe email. Ce informații ne ajută să rezolvăm din prima: cum ceri ajutor.