User anlegen und SSH Zugang für Root sperren
Zuerst legen wir einen neuen Benutzer an
useradd -g users -d /home/foobar foobar
Da oben steht, dass wir einen neuen Benutzer mit dem Namen foobar in der Gruppe users mit dem Homeverzeichnis /home/foobar anlegen
Dann sollten wir ein sicheres, langes Passwort vergeben. Das geht noch als root:
passwd foobar
und das oben festgelegte Homeverzeichnis muss auch noch erstellt werden und dann dem Benutzer vermacht werden.
mkdir /home/foobar chown foobar /home/foobar
Bevor man weiter macht, unbedingt schauen, ob man sich mit dem neuen Benutzer per ssh verbinden kann. Sonst sperrt man sich im nächsten Schritt aus. Und auch testen, dass man mit
su
zum Benutzer root wechseln kann.
Nun können wir unseren SSH Key hochladen, damit wir in uns in Zukunft mit dem Schlüssel ohne Passwort am Server anmelden können. Das Login per Passwort verbieten wir danach für den Nutzer root. Falls man mal an einem Rechner ist, wo der eigene SSH Key nicht verfügbar ist, aknn man sich immer noch mit dem neu angelegten Nutzer am Server per SSH anmelden und mit su zum User root wechseln. Dazu vom eigenen Rechner aus den Schlüssel auf den Server kopieren.
ssh-copy-id -i ./.ssh/id_rsa.pub root@meinserver.tld
Nachdem der Schlüssel auf den Server kopiert ist, lassen wir das root login nur noch mit dem Schlüssel und nicht mehr mit dem Passwort zu.
nano /etc/ssh/sshd_config
und ändern die Zeile
PermitRootLogin yes
zu
PermitRootLogin without-password
dann noch schnell den sshd neu gestartet
<code>/etc/init.d/ssh reload</code>
systemctl reload sshd.service
Jetzt kann man sich als root nur noch direkt mittels Zertifikat anmelden.