Wie man einen öffentlichen SSH-Schlüssel auf einen bestehenden VPS hochlädt ⋆ ALexHost SRL

Testen Sie Ihre Fähigkeiten mit unseren Hosting-Diensten und erhalten Sie 15% Rabatt!

Code an der Kasse verwenden:

Skills
21.01.2025
No categories

Wie man einen öffentlichen SSH-Schlüssel auf einen bestehenden VPS hochlädt

Die Verwendung von SSH-Schlüsseln bei AlexHost ist eine der sichersten und effizientesten Methoden zur Authentifizierung. Wenn Sie einen bestehenden VPS haben und auf die Verwendung von SSH-Schlüsseln umstellen (oder einen neuen Schlüssel hinzufügen) möchten, ist dies ein unkomplizierter Prozess, der die Sicherheit verbessert, indem er eine passwortlose Anmeldung ermöglicht. In dieser Anleitung zeigen wir Ihnen, wie Sie einen öffentlichen SSH-Schlüssel auf einen bestehenden VPS hochladen, um sicherzustellen, dass zukünftige Anmeldungen sicher und einfach sind.

Warum SSH-Schlüssel verwenden?

SSH-Schlüssel werden häufig zur Sicherung des Zugangs zu Remote-Servern verwendet. Sie bieten mehrere Vorteile gegenüber herkömmlichen Passwörtern:

  • Stärkere Sicherheit: SSH-Schlüssel verwenden eine kryptografische Authentifizierung, die wesentlich schwieriger zu knacken ist als selbst starke Passwörter.
  • Passwortlose Anmeldung: Einmal eingerichtet, können Sie sich mit SSH-Schlüsseln bei Ihrem Server anmelden, ohne ein Passwort einzugeben.
  • Schutz vor Brute-Force-Angriffen: Durch den Wegfall von Passwörtern verhindern SSH-Schlüssel Brute-Force-Angriffe, die auf das Erraten von Anmeldedaten abzielen.

Voraussetzungen

Bevor Sie beginnen, benötigen Sie:

  1. Zugang zu Ihrem bestehenden VPS: Das bedeutet, dass Sie sich derzeit mit SSH in den VPS einloggen können, wahrscheinlich mit einem Passwort.
  2. Ein SSH-Schlüsselpaar: Wenn Sie noch keines haben, werden wir Ihnen zeigen, wie Sie es erzeugen können.
  3. Grundlegende Kenntnisse der SSH-Befehle: Vertrautheit mit der Befehlszeilenschnittstelle (CLI) ist erforderlich.

Schritt 1: Erzeugen eines SSH-Schlüsselpaars (falls Sie noch keines haben)

Wenn Sie noch kein SSH-Schlüsselpaar auf Ihrem lokalen Rechner haben, können Sie eines erstellen. So geht’s:

Öffnen Sie ein Terminal auf Ihrem lokalen Rechner (macOS oder Linux) und führen Sie den folgenden Befehl aus:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Mit diesem Befehl wird ein 4096-Bit-RSA-Schlüsselpaar für die Verschlüsselung erstellt. Während des Vorgangs werden Sie gefragt, wo Sie den Schlüssel speichern möchten:

  • Drücken Sie die Eingabetaste, um den Schlüssel am Standardspeicherort(~/.ssh/id_rsa) zu speichern.
  • Fügen Sie optional eine Passphrase für eine zusätzliche Sicherheitsebene hinzu (empfohlen), oder drücken Sie die Eingabetaste, um diesen Schritt zu überspringen.

Bei diesem Vorgang werden zwei Dateien erzeugt:

  • id_rsa: Ihr privater Schlüssel (bewahren Sie diesen sicher auf und geben Sie ihn niemals weiter).
  • id_rsa.pub: Ihr öffentlicher Schlüssel (diesen werden Sie auf den Server hochladen).

Zeigen Sie anschließend den öffentlichen Schlüssel an, damit Sie ihn kopieren können:

ssh root@Ihre_vps_ip

Kopieren Sie die Ausgabe (Ihren öffentlichen Schlüssel), da Sie ihn im nächsten Schritt benötigen.

Schritt 2: Melden Sie sich bei Ihrem VPS an

Um Ihren neuen öffentlichen SSH-Schlüssel zur virtuellen Maschine hinzuzufügen, müssen Sie sich mit der bisherigen Methode anmelden (entweder mit einem Passwort oder einem vorhandenen Schlüssel). Öffnen Sie Ihr Terminal und führen Sie aus:

ssh root@Ihre_vps_ip

Ersetzen Sie your_vps_ip durch die tatsächliche IP-Adresse Ihres VPS. Wenn Sie sich mit einem anderen Benutzerkonto (nicht root) anmelden, ersetzen Sie root durch den entsprechenden Benutzernamen.

Schritt 3: Erstellen Sie das .ssh-Verzeichnis (falls es noch nicht existiert)

Vergewissern Sie sich nach der Anmeldung, dass das.ssh-Verzeichnis für das von Ihnen verwendete Benutzerkonto existiert. Wenn es nicht existiert, erstellen Sie es mit dem folgenden Befehl:

mkdir -p ~/.ssh
chmod 700 ~/.ssh

Mit diesem Befehl wird das Verzeichnis .ssh erstellt und die richtigen Berechtigungen festgelegt, so dass nur der aktuelle Benutzer darauf zugreifen kann.

Schritt 4: Hinzufügen des öffentlichen Schlüssels zur authorized_keys-Datei

Jetzt, wo Sie das .ssh-Verzeichnis eingerichtet haben, müssen Sie Ihren öffentlichen SSH-Schlüssel auf den VPS hochladen, indem Sie ihn zur authorized_keys-Datei hinzufügen. Diese Datei enthält die öffentlichen Schlüssel, die zur Authentifizierung gegenüber dem Server zugelassen sind.

  1. Öffnen Sie die Datei authorized_keys mit einem Texteditor, z. B. nano:
    nano ~/.ssh/authorized_keys

    Wenn die Datei nicht existiert, wird sie mit diesem Befehl erstellt.

  2. Fügen Sie Ihren öffentlichen SSH-Schlüssel (den, den Sie zuvor aus id_rsa.pub kopiert haben) in die Datei ein. Klicken Sie mit der rechten Maustaste oder verwenden Sie die Einfügefunktion des Terminals, um den Schlüssel einzufügen.
  3. Speichern und schließen Sie die Datei, indem Sie Strg X und dann Y drücken und die Eingabetaste drücken.
  4. Setzen Sie die richtigen Berechtigungen für die Datei authorized_keys:
    chmod 600 ~/.ssh/authorized_keys

Dieser Schritt stellt sicher, dass die Datei nur für den aktuellen Benutzer zugänglich ist.

Schritt 5: Testen Sie die SSH-Schlüsselanmeldung

Nachdem Sie Ihren SSH-Schlüssel zum VPS hinzugefügt haben, sollten Sie die Einrichtung testen, um sicherzustellen, dass Sie sich ohne Passwort anmelden können.

  1. Melden Sie sich von der aktuellen SSH-Sitzung ab, indem Sie Folgendes eingeben:
    exit
  2. Versuchen Sie nun, sich mit Ihrem SSH-Schlüssel wieder auf dem VPS anzumelden:
    ssh root@Ihre_vps_ip

    Wenn alles korrekt eingerichtet ist

  3. werden Sie auf dem VPS angemeldet, ohne dass Sie nach einem Passwort gefragt werden.

Schritt 6 (optional): Passwort-Authentifizierung deaktivieren

Für zusätzliche Sicherheit können Sie die passwortbasierte Authentifizierung deaktivieren, so dass nur Benutzer mit einem SSH-Schlüssel auf den VPS zugreifen können. Dieser Schritt ist optional, wird aber für Umgebungen empfohlen, in denen Sicherheit eine Priorität ist.

Um die Passwort-Authentifizierung zu deaktivieren:

  1. Öffnen Sie die SSH-Konfigurationsdatei auf Ihrem VPS:
    nano /etc/ssh/sshd_config
  2. Suchen Sie die folgenden Zeilen in der Konfigurationsdatei und stellen Sie sicher, dass sie wie folgt gesetzt sind:
    PasswortAuthentifizierung nein
    PubkeyAuthentifizierung ja
  3. Speichern und schließen Sie die Datei, indem Sie Strg X und dann Y drücken und die Eingabetaste drücken .
  4. Starten Sie den SSH-Dienst neu, um die Änderungen zu übernehmen:
    systemctl restart sshd

Jetzt können sich nur noch Benutzer mit einem gültigen SSH-Schlüssel auf dem VPS anmelden.

Schritt 7: Mehrere SSH-Schlüssel verwalten

Wenn Sie mehrere VPS oder Remote-Server verwalten, möchten Sie vielleicht Ihre SSH-Schlüssel organisieren und Ihre ~/.ssh/config-Datei der Einfachheit halber konfigurieren. Hier ist eine Beispielkonfiguration, mit der Sie verschiedene SSH-Schlüssel für verschiedene Server festlegen können:

Host myvps HostName your_vps_ip
Benutzer root
IdentitätsDatei ~/.ssh/id_rsa

Nachdem Sie dies zu Ihrer SSH-Konfigurationsdatei(~/.ssh/config) hinzugefügt haben, können Sie sich einfach mit anmelden:

ssh myvps

Fazit

Das Hinzufügen eines öffentlichen SSH-Schlüssels zu einem bestehenden VPS erhöht die Sicherheit Ihres Remote-Servers erheblich und vereinfacht gleichzeitig den Anmeldevorgang. Wenn Sie diese Anleitung befolgen, können Sie Ihren öffentlichen SSH-Schlüssel einfach hochladen und Ihren VPS für eine passwortlose Anmeldung konfigurieren. Für zusätzliche Sicherheit können Sie die Passwortauthentifizierung komplett deaktivieren, um sicherzustellen, dass nur autorisierte SSH-Schlüssel auf Ihren VPS zugreifen können. Diese Konfiguration schützt Ihren Server nicht nur vor unbefugtem Zugriff, sondern rationalisiert auch Ihre Arbeitsabläufe, da Sie nicht jedes Mal ein Passwort eingeben müssen, wenn Sie sich einloggen.

Testen Sie Ihre Fähigkeiten mit unseren Hosting-Diensten und erhalten Sie 15% Rabatt!

Code an der Kasse verwenden:

Skills