SSH-Schlüssel mit OpenSSH unter MacOS oder Linux erstellen ⋆ ALexHost SRL

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

Code an der Kasse verwenden:

Skills
20.01.2025
No categories

SSH-Schlüssel mit OpenSSH unter MacOS oder Linux erstellen

In der Welt der sicheren Fernkommunikation ist SSH (Secure Shell) eines der am häufigsten verwendeten Protokolle für die Verbindung mit entfernten Servern. SSH bietet eine sichere Methode, sich bei entfernten Rechnern anzumelden und Befehle über ein Netzwerk auszuführen. Eine der sichersten Methoden zur Authentifizierung mit SSH ist die Verwendung von SSH-Schlüsseln, die eine passwortlose Authentifizierung ermöglichen und eine zusätzliche Sicherheitsebene darstellen. SSH-Schlüssel werden in Paaren geliefert: ein privater Schlüssel und ein öffentlicher Schlüssel. In diesem Artikel gehen wir die Schritte zur Erstellung von SSH-Schlüsseln mit OpenSSH unter macOS oder Linux durch.

Was sind SSH-Schlüssel?

SSH-Schlüssel sind ein Paar kryptografischer Schlüssel, die zur Authentifizierung eines Clients (Ihres Computers) gegenüber einem SSH-Server verwendet werden. Der öffentliche Schlüssel befindet sich auf dem Server, während der private Schlüssel auf dem Client-Rechner aufbewahrt wird. Wenn Sie versuchen, sich anzumelden, vergleicht der Server den öffentlichen Schlüssel mit dem privaten Schlüssel, um Ihre Identität zu überprüfen. Im Gegensatz zu Passwörtern sind SSH-Schlüssel nicht anfällig für Brute-Force-Angriffe, was sie zu einer äußerst sicheren Authentifizierungsmethode macht.

Warum SSH-Schlüssel verwenden?

  • Erhöhte Sicherheit: SSH-Schlüssel sind schwieriger zu knacken als herkömmliche Passwörter, wodurch das Risiko eines unbefugten Zugriffs verringert wird.
  • Passwortlose Authentifizierung: Einmal eingerichtet, können Sie sich mit SSH-Schlüsseln bei Servern anmelden, ohne jedes Mal ein Passwort eingeben zu müssen.
  • Automatisierte Prozesse: SSH-Schlüssel sind ideal für die Automatisierung von Skripten, Backups und Dateiübertragungen, die einen sicheren Fernzugriff erfordern.

Voraussetzungen

Um dieser Anleitung zu folgen, benötigen Sie

  1. Einen macOS- oder Linux-Rechner mit installiertem OpenSSH (OpenSSH ist auf beiden Plattformen standardmäßig enthalten).
  2. Zugang zu einem entfernten Server, auf dem Sie den öffentlichen Schlüssel ablegen werden.

Schritt-für-Schritt-Anleitung zur Erstellung von SSH-Schlüsseln

Schritt 1: Öffnen Sie ein Terminal

Sowohl unter macOS als auch unter Linux bietet die Terminal-App eine Schnittstelle für die Ausführung von Befehlszeilenbefehlen. Öffnen Sie das Terminal, indem Sie:

  • macOS: Suchen Sie in Spotlight nach “Terminal” (drücken Sie Cmd Space) oder finden Sie es unter Programme > Dienstprogramme.
  • Linux: Drücken Sie Strg Alt T , oder suchen Sie in Ihrem Anwendungsmenü nach Terminal.

Schritt 2: Erzeugen des SSH-Schlüsselpaars

Um ein neues SSH-Schlüsselpaar zu erzeugen, verwenden Sie den folgenden Befehl im Terminal:

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

Erläuterung der Optionen:

  • t rsa: Gibt den Typ des zu erstellenden Schlüssels an. RSA ist einer der am häufigsten verwendeten Algorithmen.
  • b 4096: Setzt die Schlüssellänge auf 4096 Bits, um die Sicherheit zu erhöhen.
  • C “your_email@example.com”: Dies fügt dem Schlüssel einen Kommentar hinzu, der in der Regel zur Identifizierung des Schlüssels dient. Ersetzen Sie ihn durch Ihre E-Mail-Adresse oder einen beschreibenden Namen.

Wenn Sie diesen Befehl ausführen, erhalten Sie eine Ausgabe ähnlich der folgenden:

Erzeugen eines öffentlichen/privaten rsa-Schlüsselpaares.
Geben Sie die Datei an , in der der Schlüssel gespeichert werden soll (/home/ihrBenutzername/.ssh/id_rsa):

Schritt 3: Wählen Sie einen Dateispeicherort (optional)

Standardmäßig wird der Schlüssel im Verzeichnis .ssh in Ihrem Heimatordner als id_rsa (privater Schlüssel) und id_rsa.pub (öffentlicher Schlüssel) gespeichert. Drücken Sie die Eingabetaste, um den Standardspeicherort zu bestätigen, oder geben Sie einen anderen Pfad an.

Beispiel:

Geben Sie die Datei an , in der der Schlüssel gespeichert werden soll (/Benutzer/IhrBenutzername/.ssh/id_rsa): [Drücken Sie die Eingabetaste]

Schritt 4: Festlegen einer Passphrase (optional, aber empfohlen)

Als nächstes werden Sie aufgefordert, eine Passphrase für Ihren Schlüssel festzulegen:

Geben Sie die Passphrase ein (leer für keine Passphrase):

Eine Passphrase bietet eine zusätzliche Sicherheitsebene, da Sie sie jedes Mal eingeben müssen, wenn Sie Ihren privaten Schlüssel verwenden. Sie können dieses Feld leer lassen, wenn Sie keine Passphrase verwenden möchten (obwohl dies für eine erhöhte Sicherheit empfohlen wird).

Wenn Sie eine Passphrase festlegen, stellen Sie sicher, dass Sie sich diese gut merken oder sicher speichern können.

Schritt 5: Bestätigen Sie die Erstellung des Schlüsselpaars

Nach Abschluss der Schritte sehen Sie eine Ausgabe ähnlich der folgenden:

Dies bedeutet, dass sowohl der private Schlüssel (id_rsa) als auch der öffentliche Schlüssel (id_rsa.pub) erfolgreich erstellt und im .ssh-Verzeichnis gespeichert wurden.

Schritt 6: Kopieren des öffentlichen Schlüssels auf den Server

Nachdem Sie nun Ihr SSH-Schlüsselpaar erzeugt haben, müssen Sie den öffentlichen Schlüssel auf den entfernten Server kopieren, auf dem Sie sich anmelden möchten.

Sie können den Befehl ssh-copy-id verwenden, um diesen Vorgang zu automatisieren:

ssh-copy-id user@your-server.com

Ersetzen Sie user@your-server.com durch Ihren tatsächlichen Benutzernamen und die Serveradresse. Sie werden aufgefordert, Ihr Passwort für den Remote-Server einzugeben.

Wenn ssh-copy-id nicht verfügbar ist, können Sie den öffentlichen Schlüssel auch manuell kopieren:

  1. Zeigen Sie den Inhalt Ihres öffentlichen Schlüssels an, indem Sie Folgendes ausführen:
    cat ~/.ssh/id_rsa.pub
  2. Kopieren Sie die Ausgabe und fügen Sie sie in die Datei.ssh/authorized_keys auf dem entfernten Server ein. Sie können dies tun, indem Sie sich auf dem Server anmelden:
    ssh user@your-server.com

    Erstellen Sie dann das Verzeichnis .ssh (falls es nicht existiert) und fügen Sie den Schlüssel hinzu:

    mkdir -p ~/.ssh
    echo "ihr-kopierter-öffentlicher-schlüssel" >> ~/.ssh/authorized_keys
    chmod 600 ~/.ssh/autorisierte_Schlüssel

Schritt 7: Testen Sie die SSH-Verbindung

Sobald der öffentliche Schlüssel auf den Remote-Server kopiert wurde, können Sie die Verbindung testen:

ssh user@your-server.com

Wenn alles richtig eingerichtet ist, sollten Sie sich ohne Eingabe eines Kennworts anmelden können (es sei denn, Sie haben eine Passphrase für Ihren Schlüssel festgelegt, die Sie in diesem Fall eingeben müssen).

SSH-Schlüssel verwalten

  • Alle Schlüssel auflisten: Wenn Sie mehrere Schlüssel haben, können Sie diese auflisten, indem Sie zum Verzeichnis .ssh navigieren:
    ls ~/.ssh
  • Schlüssel zum SSH-Agenten hinzufügen: Wenn Sie die wiederholte Eingabe der Passphrase vermeiden wollen, können Sie Ihren Schlüssel zum SSH-Agenten hinzufügen:
    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_rsa

Fazit

Das Erstellen von SSH-Schlüsseln mit OpenSSH unter macOS oder Linux ist ein unkomplizierter Prozess, der die Sicherheit von Remote-Server-Verbindungen erheblich verbessert. Wenn Sie die in dieser Anleitung beschriebenen Schritte befolgen, können Sie ein Schlüsselpaar erzeugen und eine passwortlose Authentifizierung einrichten, was die sichere Verwaltung entfernter Rechner erleichtert. SSH-Schlüssel sind ein unverzichtbares Werkzeug für jeden Entwickler, Systemadministrator oder jeden, der häufig mit entfernten Servern arbeitet.

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

Code an der Kasse verwenden:

Skills