Poglavje 3 · 3.2
Onemogočite prijavo z geslom in kot root
Vsak strežnik na internetu kmalu obiščejo programi, ki ugibajo gesla. Če se lahko prijavite samo s ključem, nimajo nobene možnosti. To boste zdaj vklopili.
Pozor: Ali prijava s ključem kot anna deluje (glejte Lasten uporabnik s sudo)? Najprej naredite posnetek (glejte Posnetki stanja: varnostna mreža za vsako večjo spremembo) in med temi koraki imejte odprto eno sejo. Če gre kljub temu kaj narobe, se lahko prijavite prek konzole (glejte Konzola: Vaš VPS v brskalniku).
Lastna datoteka z nastavitvami
Na Debian in Ubuntu strežnik SSH najprej prebere datoteke v /etc/ssh/sshd_config.d/, in sicer po abecednem vrstnem redu. Za vsako nastavitev velja prva vrednost, na katero naleti. Zato Vaša datoteka dobi ime, ki je na začetku seznama:
anna@web1:~$ sudo nano /etc/ssh/sshd_config.d/00-eigen.conf
Vanjo vpišite:
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin no
PasswordAuthentication no: nič več gesel prek SSH.KbdInteractiveAuthentication no: tudi nobenega vprašanja za geslo po ovinku.PermitRootLogin no: root se prek SSH ne more več prijaviti, niti s ključem. Delali boste kot anna s sudo. Če želite root še naprej dovoliti prijavo s ključem, uporabiteprohibit-password.
Preverjanje in uveljavitev
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
sshd -t ne izpiše ničesar, če je datoteka pravilna. sshd -T pokaže, katere vrednosti dejansko veljajo. Ali je še vedno navedeno passwordauthentication yes? Potem jo druga datoteka v sshd_config.d znova vklopi, pogosto 50-cloud-init.conf. Vaša 00-eigen.conf je pred njo in ima prednost; preverite, ali je ime pravilno.
Na AlmaLinux in Rocky Linux se storitev imenuje sshd: sudo systemctl restart sshd.
Preizkus, preden zaprete sejo
Odprite novo okno in poskusite:
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).
Prva prijava mora delovati. Drugi dve morata biti zavrnjeni. Je vse v redu? Potem izbrišite posnetek.
Nasvet: Druga številka vrat namesto 22 sicer umiri Vaš dnevnik, vendar strežnika ne naredi varnejšega. Delo opravi ključ. Če vrata kljub temu spremenite, jih najprej odprite v požarnem zidu (glejte Požarni zid z ufw (ali nftables)).
