Nodaļa 3 · 3.2
Pieteikšanās ar paroli un kā root lietotājam atspējošana
Ikvienu serveri internetā jau drīz pēc palaišanas apmeklē programmas, kas mēģina uzminēt paroles. Ja pieteikties var tikai ar atslēgu, tām nav nekādu izredžu. Tagad Jūs to ieslēgsiet.
Ņemiet vērā: Vai pieteikšanās ar Jūsu atslēgu kā anna darbojas (skatiet Savs lietotājs ar sudo)? Tad vispirms izveidojiet momentuzņēmumu (skatiet Snapshot kopijas: drošības tīkls ikvienām lielām izmaiņām) un šo darbību laikā paturiet atvērtu vienu sesiju. Ja tomēr kaut kas noiet greizi, Jūs varat piekļūt serverim, izmantojot konsoli (skatiet Konsole: Jūsu VPS pārlūkprogrammā).
Savs iestatījumu fails
Debian un Ubuntu sistēmā SSH serveris vispirms nolasa failus mapē /etc/ssh/sshd_config.d/ alfabētiskā secībā. Katram iestatījumam spēkā ir pirmā vērtība, ko tas atrod. Tāpēc Jūsu failam jādod nosaukums, kas atrodas saraksta sākumā:
anna@web1:~$ sudo nano /etc/ssh/sshd_config.d/00-eigen.conf
Ierakstiet tajā:
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin no
PasswordAuthentication no: SSH vairs nepieņem paroles.KbdInteractiveAuthentication no: arī apkārtceļā parole vairs netiek prasīta.PermitRootLogin no: root vairs nevar pieteikties caur SSH, pat ne ar atslēgu. Jūs strādājat kā anna ar sudo. Ja vēlaties joprojām atļaut root pieteikšanos ar atslēgu, izmantojietprohibit-password.
Pārbaude un piemērošana
anna@web1:~$ sudo sshd -t
anna@web1:~$ sudo sshd -T | grep -Ei '^(passwordauthentication|kbdinteractiveauthentication|permitrootlogin)'
passwordauthentication no
kbdinteractiveauthentication no
permitrootlogin no
anna@web1:~$ sudo systemctl restart ssh
Ja fails ir pareizs, sshd -t neko neizvada. sshd -T parāda, kuras vērtības patiešām ir spēkā. Vai joprojām redzams passwordauthentication yes? Tad to atkal ieslēdz cits fails mapē sshd_config.d, bieži vien 50-cloud-init.conf. Jūsu 00-eigen.conf atrodas pirms tā un ir noteicošais; pārbaudiet, vai nosaukums ir pareizs.
AlmaLinux un Rocky Linux sistēmā pakalpojuma nosaukums ir sshd: sudo systemctl restart sshd.
Testēšana pirms sesijas aizvēršanas
Atveriet jaunu logu un izmēģiniet:
ssh anna@203.0.113.10
ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no anna@203.0.113.10
anna@203.0.113.10: Permission denied (publickey).
ssh root@203.0.113.10
root@203.0.113.10: Permission denied (publickey).
Pirmajai komandai jādarbojas. Pārējām divām jātiek noraidītām. Vai viss ir kārtībā? Tad izdzēsiet momentuzņēmumu.
Padoms: Cits porta numurs, nevis 22, padara Jūsu žurnālu mierīgāku, taču serveri drošāku nepadara. Drošību nodrošina atslēga. Ja tomēr maināt portu, vispirms atveriet to savā ugunsmūrī (skatiet Ugunsmūris ar ufw (vai nftables)).
