Kuidas lubada Linuxi serveris root-sisselogimine
Enamikus Linuxi serverites on otsene root-sisselogimine SSH ja SFTP kaudu vaikimisi keelatud. Selles juhendis saate teada, kuidas see vajadusel lubada ja uuesti keelata.
Mida on vaja enne alustamist
- VPS-i või pühendatud serverit Linuxiga.
- Kasutajat sudo-õigustega.
- SSH-programmi. Loe lähemalt: Kuidas kasutada PuTTY-t.
Root-kasutajal on piiramatud õigused ja selle nime teavad kõik robotid, mis üritavad pidevalt paroole ära arvata. Lubage root-sisselogimine ainult siis, kui see on tõesti vajalik, kasutage tugevat parooli ja keelake see pärast töö lõpetamist uuesti.
Root-sisselogimise seadistamine
-
Looge serveriga ühendus
Looge serveriga SSH-ühendus oma tavakasutajaga.
-
Määrake root-parool
Ubuntus pole root-parool vaikimisi määratud, seega sisselogimine ei õnnestuks. Määrake see käsuga:
sudo passwd rootSisestage uus parool kaks korda. Trükkimisel märke ei kuvata, see on normaalne. Kui root-parool on teil juba olemas, jätke see samm vahele.
-
Avage SSH konfiguratsioonifail
Avage fail redaktoris:
sudo nano /etc/ssh/sshd_configVajutage Ctrl + W ja otsige PermitRootLogin. Rida näeb tavaliselt välja selline:
#PermitRootLogin prohibit-password -
Muutke PermitRootLogin seadet
Kustutage rea alguses olev # ja muutke väärtust:
PermitRootLogin yesRoot-sisselogimise uuesti keelamiseks muutke väärtust:
PermitRootLogin noKuidas salvestadaCtrl + O ja Enter salvestavad faili, Ctrl + X väljub redaktorist.
Mõnes serveris, nt Ubuntus, võivad seadeid üle kirjutada kaustas /etc/ssh/sshd_config.d/ olevad failid. Kontrollige, et seal poleks teist PermitRootLogin väärtust:
sudo grep -ri permitrootlogin /etc/ssh/sshd_config.d/ -
Kontrollige konfiguratsiooni ja taaskäivitage SSH
Esmalt kontrollige, kas failis on vigu. Kui käsk midagi ei kuva, on kõik korras:
sudo sshd -tSeejärel taaskäivitage SSH-teenus. Käsk sõltub süsteemist:
sudo systemctl restart sshsudo systemctl restart sshdÄrge sulgege praegust akentHoidke praegune SSH-seanss avatuna, kuni olete veendunud, et uus sisselogimine töötab. Kui midagi läheb valesti, saate selle kaudu muudatused tagasi võtta.
Kas õnnestus?
Kontrollige, millist PermitRootLogin väärtust SSH tegelikult kasutab:
sudo sshd -T | grep permitrootloginSeejärel proovige uues aknas root-kasutajana sisse logida, asendades serveri_ip oma serveri IP-ga:
ssh root@serveri_ipKorduma kippuvad küsimused
Root-kasutajana sisselogimisel kuvatakse „Access denied“
Kontrollige, kas määrasite root-parooli (2. samm) ja et kausta /etc/ssh/sshd_config.d/ failides poleks ridu PermitRootLogin või PasswordAuthentication no, mis teie seade üle kirjutavad.
Viga „Unit sshd.service not found“
Ubuntus ja Debianis on SSH-teenuse nimi ssh. Kasutage käsku sudo systemctl restart ssh.
Kas on turvalisem viis?
Jah. Määrake PermitRootLogin prohibit-password ja logige sisse parooli asemel SSH-võtmega. Veel parem on töötada eraldi kasutajaga ja kasutada sudo-t.
Kas see seade kehtib ka SFTP kohta?
Jah. SFTP kasutab sama SSH-teenust, seega järgib root-sisselogimine WinSCP või FileZilla kaudu sama seadet.
Mis edasi
Kui tekib raskusi, kirjutage meile reaalajas vestluses või e-postiga.