Zum Hauptinhalt springen

SSH konfigurieren und verwenden

Alle dedizierten ARM-Linux-Server von OakHost werden mit vorinstalliertem und konfiguriertem SSH geliefert. Standardm├Ą├čig wird ein Root-Zugang mit einem zuf├Ąlligen Passwort bereitgestellt, damit Sie sofort loslegen k├Ânnen. Obwohl es verschl├╝sselt ist, kann das Standardpasswort ├╝ber das Kundenpanel f├╝r die Erstkonfiguration eingesehen werden. Es wird daher dringend empfohlen, das Passwort zu ├Ąndern, sobald Sie sich zum ersten Mal mit Ihrem Server verbinden.

F├╝r zus├Ątzliche Sicherheit empfehlen wir au├čerdem, die SSH-Authentifizierung mit ├Âffentlichem/privatem Schl├╝ssel zu aktivieren, die Passwortanmeldung zu deaktivieren und dem Root-Benutzer die Anmeldung ├╝ber SSH komplett zu verbieten. Bitte lesen Sie weiter, um mehr ├╝ber diese bew├Ąhrten Verfahren zu erfahren.

Verbinden ├╝ber SSH#

Um sich zun├Ąchst mit Ihrem OakHost-Server zu verbinden, navigieren Sie zum Kundenpanel, klicken Sie auf Ihren Server und w├Ąhlen Sie dann die Registerkarte Fernzugriff. Dort finden Sie Ihre anf├Ąnglichen Anmeldedaten.

Sie ben├Âtigen einen SSH-Client, um sich mit dem Server zu verbinden. Unter macOS oder Linux ist dieser Client bereits vorinstalliert und kann ├╝ber die Terminal-Anwendung aufgerufen werden. Kopieren Sie einfach die Zeile, die mit ssh root@... beginnt, aus dem Kundenpanel. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie das angegebene Anfangspasswort ein. Machen Sie sich keine Sorgen, wenn es w├Ąhrend der Eingabe nicht auf dem Bildschirm angezeigt wird.

Unter Windows haben Sie mehrere M├Âglichkeiten, um fortzufahren. Sie k├Ânnen entweder Windows Subsystem for Linux installieren und wie oben beschrieben vorgehen, was wir empfehlen w├╝rden, oder Sie k├Ânnen einen externen SSH-Client wie PuTTY verwenden.

Ändern des Root-Passworts#

Sobald Sie mit Ihrem Server verbunden sind, ist das ├ändern des Benutzerpassworts sehr einfach. Geben Sie einfach den folgenden Befehl ein und best├Ątigen Sie mit der Enter-Taste:

passwd

Sie werden aufgefordert, ein neues Passwort einzugeben und es einmal zu best├Ątigen. Machen Sie sich keine Sorgen, wenn das Passwort nicht auf dem Bildschirm angezeigt wird, es wird trotzdem registriert.

├ťberpr├╝fen Sie anschlie├čend, ob das Kennwort funktioniert, indem Sie eine neue SSH-Verbindung mit dem neuen Kennwort einrichten. Wir empfehlen, die alte Verbindung offen zu halten, f├╝r den Fall, dass das Passwort nicht funktioniert.

Root-Anmeldung ├╝ber SSH verbieten#

Um die Sicherheit zu erh├Âhen, sollte der Root-Benutzer nicht die M├Âglichkeit haben, sich direkt ├╝ber SSH zu verbinden. Stattdessen sollten Sie einen neuen Benutzer anlegen und diesen Benutzer dann verwenden, um bei Bedarf zum Root-Benutzer zu wechseln (sudo).

  1. Legen Sie zun├Ąchst einen neuen Benutzer an, der f├╝r die Anmeldung verwendet werden soll. Sie k├Ânnen einen beliebigen Namen w├Ąhlen, solange er keine Sonderzeichen oder Leerzeichen enth├Ąlt. Geben Sie den folgenden Befehl ein, dr├╝cken Sie die Eingabetaste und gehen Sie durch den Assistenten. Es wird auch nach einem neuen Passwort gefragt. Dieses wird sp├Ąter verwendet, um sich mit sudo in den Benutzer root einzuloggen.
adduser myuser
  1. Als n├Ąchstes f├╝gen Sie den neu erstellten Benutzer zur Gruppe sudo hinzu. Dies ist notwendig, damit Sie sp├Ąter zum Benutzer root wechseln k├Ânnen. Stellen Sie sicher, dass Sie myuser durch den Benutzernamen ersetzen, den Sie oben gew├Ąhlt haben.
usermod -a -G sudo myuser
  1. Sobald der Benutzer eingerichtet ist, m├╝ssen wir dem Root-Benutzer verbieten, sich ├╝ber SSH anzumelden. Dazu ├Âffnen Sie die SSH-Konfiguration mit einem Texteditor. Zum Beispiel mit nano:
nano /etc/ssh/sshd_config
  1. Suchen Sie die folgende Zeile (wahrscheinlich am Ende der Datei), und ├Ąndern Sie no in yes, und f├╝gen Sie eine AllowUsers Zeile darunter ein:
# Suchen:
PermitRootLogin yes
# Ändern:
PermitRootLogin no
AllowUsers myuser
  1. Speichern Sie die Datei, indem Sie Strg+X und dann y dr├╝cken, um die ├änderungen zu best├Ątigen.

  2. Starten Sie den SSH-Server neu, um die neue Konfigurationsdatei anzuwenden, indem Sie den folgenden Befehl verwenden:

service ssh restart
caution

Bitte lassen Sie die SSH-Verbindung offen, falls etwas schief geht. Andernfalls k├Ânnen Sie den Zugriff auf Ihren Server verlieren.

  1. Testen Sie Ihre ├änderungen, indem Sie eine neue Verbindung ├╝ber SSH ├Âffnen. Dieses Mal sollten Sie sich nicht als root anmelden k├Ânnen. Versuchen Sie also anstelle von root@..:
ssh myuser@[ihre-ip]
  1. Wenn alles richtig eingerichtet ist, sollten Sie sich mit dem neu gew├Ąhlten Passwort und Benutzernamen anmelden k├Ânnen. Pr├╝fen Sie abschlie├čend, ob Sie in der Lage sind, mit sudo auf den root-Benutzer zuzugreifen:
sudo su
  1. Dies sollte nach einem Passwort fragen. Es ist das gleiche Passwort, das Sie f├╝r die Anmeldung ├╝ber SSH verwendet haben. Danach sollten Sie nun root sein. Pr├╝fen Sie das, indem Sie eingeben:
whoami

Es sollte root zur├╝ckgeben.

SSH-Anmeldung per Passwort verbieten#

Der letzte Schritt zur Absicherung Ihres SSH-Zugangs besteht darin, die Anmeldung per Passwort komplett zu deaktivieren. Bei Passw├Ârtern besteht immer die M├Âglichkeit, dass sie von einem Angreifer erraten werden k├Ânnen. Um dies zu vermeiden, erlaubt SSH die Anmeldung ├╝ber SSH-Schl├╝ssel, die aus zwei Dateien bestehen. Eine, die einen privaten Schl├╝ssel enth├Ąlt, der sich auf dem verbindenden Ger├Ąt befindet, und eine, die einen ├Âffentlichen Schl├╝ssel enth├Ąlt, der auf dem Server abgelegt wird. Auf diese Weise kann immer eine sichere Verbindung hergestellt werden, ohne dass ein Passwort ben├Âtigt wird.

  1. Zun├Ąchst m├╝ssen Sie ein Schl├╝sselpaar aus ├Âffentlichem und privatem Schl├╝ssel erzeugen, das wir f├╝r die Verbindung mit dem Server verwenden werden. F├╝hren Sie dazu den folgenden Befehl auf Ihrem Client-PC, NICHT auf dem Server aus:
# F├╝hren Sie auf Ihrem PC aus:
ssh-keygen
  1. Best├Ątigen Sie die Standardwerte. Wenn Sie m├Âchten, k├Ânnen Sie ein Passwort angeben. Dieses wird dann bei jeder Verbindung zur Entschl├╝sselung Ihres privaten Schl├╝ssels verwendet. Dies ist jedoch optional und kann leer gelassen werden.
caution

Ihre SSH-Schl├╝sseldatei ist nun am angegebenen Ort erzeugt worden (standardm├Ą├čig in Ihrem Home-Ordner in einem versteckten .ssh-Verzeichnis). Stellen Sie sicher, dass Sie diesen Schl├╝ssel nicht verlieren oder weitergeben. Sonst geht der Zugriff auf Ihren Server verloren. Es besteht jedoch jederzeit die M├Âglichkeit, weitere SSH-Schl├╝ssel hinzuzuf├╝gen, solange Sie noch Zugriff auf Ihren Server haben.

  1. Nun m├╝ssen wir den neu erzeugten ├Âffentlichen Schl├╝ssel auf den Server kopieren. Dadurch wird dieser Schl├╝ssel (und damit Sie) f├╝r den Zugriff auf den Server autorisiert. F├╝hren Sie auf Ihrem PC den folgenden Befehl aus:
# F├╝hren Sie auf Ihrem PC aus:
ssh-copy-id myuser@[ihre-ip]

Ersetzen Sie myuser durch den auf Ihrem Server angelegten Benutzernamen und [ihre-ip] durch die IP-Adresse des Servers.

  1. Damit sollten Sie bereits Zugriff auf Ihren Server haben, ohne dass Sie das Benutzerpasswort ben├Âtigen. Versuchen Sie, sich ├╝ber SSH zu verbinden, wie Sie es normalerweise tun w├╝rden, und ├╝berpr├╝fen Sie, ob Ihr Benutzerkennwort nicht abgefragt wird. Wenn Sie sich bei der Erzeugung des SSH-Schl├╝ssels f├╝r die Eingabe eines Passworts entschieden haben, werden Sie stattdessen nach diesem Passwort gefragt.

  2. Wenn Sie verbunden sind, geben Sie den folgenden Befehl ein, um zu ├╝berpr├╝fen, ob der Schl├╝ssel korrekt platziert wurde:

cat .ssh/authorized_keys

Es sollte eine lange Zeichenkette mit zuf├Ąlligen Zeichen zur├╝ckgegeben werden, die mit ssh-rsa beginnt und mit etwas endet, das wie eine E-Mail-Adresse aussieht. Zum Beispiel:

$ cat .ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCbFkMavQRMKwXo7jdF3DJIeS07N9BP8OBdohEAhK0DbN2hWWu2lXlwYlkM2uY35SSGR1RguP27QaoalntsD1jFQl36uQOybhwB5/b3vu9bBmVa0IxC6sANEpH+xVl/g4AC/SOG7iEwZinOYcrHTHnjYLIJ41wevISa0jqq7RBvYokuh/pEgKm/TyH3esNtgX4gZbr/H4v5v8wKHtPPxEy2EeY5lRmj/ldGmK0lGgyr8hQ8wNjV+19YkjRI6Oj5Sm60qZcxLx1dWRopIdwbGXrcd7zcUuwVGANyNXmMNeOHD5GlR+u95u9JNQPcI/GIycJ5Ko+xCIJ6pifvbVND9Pnz [email protected]
  1. Zu guter Letzt m├╝ssen wir die Passwortanmeldung ├╝ber SSH deaktivieren. Andernfalls k├Ânnte ein b├Âswilliger Angreifer immer noch in der Lage sein, das Passwort zu erraten, auch wenn Sie einen Schl├╝ssel zur Anmeldung verwenden.

Dazu ├Âffnen Sie wieder die SSH-Konfiguration mit einem Texteditor:

nano /etc/ssh/sshd_config

Nun sollten Sie nach einer Zeile suchen, die mit PasswordAuthentication beginnt und deren Wert von yes auf no ├Ąndern. Wenn Sie sie nicht finden k├Ânnen, f├╝gen Sie sie einfach am Ende der Datei ein.

# Suchen:
PasswordAuthentication yes
# Ändern:
PasswordAuthentication no

Speichern Sie die Datei erneut, indem Sie Strg+X und dann y dr├╝cken, um die ├änderungen zu best├Ątigen, und starten Sie dann den SSH-Server neu:

service ssh restart
caution

Bitte lassen Sie die SSH-Verbindung offen, f├╝r den Fall, dass etwas schief geht. Andernfalls k├Ânnen Sie den Zugriff auf Ihren Server verlieren.

  1. Versuchen Sie zum Abschluss noch einmal, sich ├╝ber SSH mit einer neuen Verbindung anzumelden. Wenn es funktioniert, sollte alles korrekt eingerichtet sein. Wenn die Anmeldung fehlschl├Ągt, versuchen Sie, die ├änderungen an der SSH-Konfigurationsdatei r├╝ckg├Ąngig zu machen, und starten Sie den SSH-Server noch einmal neu.