SSH-Schlüssel auf dem Mac erzeugen und nutzen
Von Lucas Russo, Entwickler von SSHive · Aktualisiert am
Von keinem Schlüssel zu einem Server, der Passwörter ablehnt, in rund fünf Minuten: ein ed25519-Schlüssel aus dem Terminal oder aus SSHive, auf dem Server hinterlegt und von Ihren Profilen genutzt.
Passwort-Logins sind genau das, was die Bots auf Port 22 rund um die Uhr zu erraten versuchen. Ein Schlüsselpaar ersetzt „etwas, das Sie wissen“ durch „etwas, das Sie besitzen“: Die private Hälfte verlässt Ihren Mac nie, der Server bewahrt nur die öffentliche Hälfte auf, und sobald alles eingerichtet ist, tippen Sie nicht mehr bei jeder Verbindung ein Passwort. Diese Anleitung nutzt ed25519, den kurzen, schnellen Schlüsseltyp, den jeder aktuelle OpenSSH-Server annimmt. Den Schlüssel erzeugen Sie entweder im Terminal, als Datei in ~/.ssh, oder in SSHive, das ihn verschlüsselt und außerhalb von ~/.ssh aufbewahrt. Beide Wege führen zum selben Ergebnis, und keiner braucht Pro: Passwort, Schlüssel und Agent funktionieren in der kostenlosen Version des SSH-Clients genauso.
Schritt für Schritt
Das Schlüsselpaar erzeugen, in SSHive oder im Terminal
In SSHive: Einstellungen › SSH-Schlüssel › Schlüssel erzeugen. Geben Sie ihm einen Namen, den Sie wiedererkennen (etwaprod-web), lassen Sie Ed25519 stehen, den als empfohlen markierten Typ (RSA 4096 und ECDSA sind für Server da, die ihn ablehnen), vergeben Sie bei Bedarf eine Passphrase und klicken Sie auf Erzeugen. Der private Schlüssel wird mit einem Schlüssel verschlüsselt, den der macOS-Schlüsselbund verwahrt, und landet nie in~/.ssh. Im Terminal:ssh-keygen -t ed25519 -C "sie@example.com", mit der Eingabetaste~/.ssh/id_ed25519übernehmen, dann eine Passphrase. Diesen Weg nehmen Sie, wenn andere Werkzeuge auf dem Mac, git oder Ihre Skripte, den Schlüssel als Datei brauchen.Den öffentlichen Schlüssel auf den Server bringen (das letzte Passwort, das Sie dort eingeben)
In SSHive erzeugter Schlüssel: Verbinden Sie sich einmal mit Passwort mit dem Server, öffnen Sie dann unter Einstellungen › SSH-Schlüssel neben dem Schlüssel Auf Host installieren und wählen Sie diese Sitzung. SSHive hängt den öffentlichen Schlüssel über die offene Verbindung an~/.ssh/authorized_keysan, wie esssh-copy-idtäte, und sagt Bescheid, falls er schon dort stand. Mit Öffentlichen Schlüssel kopieren daneben fügen Sie ihn lieber selbst ein. Schlüsseldatei aus dem Terminal:ssh-copy-id -i ~/.ssh/id_ed25519.pub user@host, dann ein letztes Mal das Passwort.Den Schlüssel im Profil auswählen
Öffnen Sie das Profil (Rechtsklick › Bearbeiten, oder + für ein neues). Wählen Sie unter Authentifizierung Privater Schlüssel, dann erscheint ein Menü SSH-Schlüssel. Ein in SSHive erzeugter Schlüssel steht unter Verwaltete Schlüssel (Tab Schlüssel), seine Passphrase sucht SSHive selbst heraus. Für eine Datei lassen Sie Lokale Datei… stehen, klicken auf Durchsuchen und wählen~/.ssh/id_ed25519: Ein grünes ✓ heißt, SSHive kann sie lesen, ein oranges ⚠, dass macOS dieselbe Datei noch einmal ausgewählt haben will, um den Zugriff freizugeben. Setzen Sie gegebenenfalls das Häkchen Schlüssel durch eine Passphrase geschützt und tippen Sie sie einmal ein. Stehen Ihre Hosts mitIdentityFile-Zeilen schon in~/.ssh/config? Diese Datei zu importieren füllt das Feld für jeden Host aus.Was SSHive aufbewahrt und wo
Eine Schlüsseldatei, die Sie auswählen, bleibt in~/.ssh: SSHive merkt sich nur ihren Pfad und die Erlaubnis von macOS, sie zu lesen. In SSHive erzeugte Schlüssel, Passphrasen und gespeicherte Passwörter werden auf Ihrem Mac mit einem Schlüssel verschlüsselt, den der macOS-Schlüsselbund verwahrt. Touch ID ist freiwillig: Touch ID vor dem Entschlüsseln von Passwörtern verlangen ist ein Schalter in den Einstellungen, standardmäßig aus.Passwort-Logins auf dem Server abschalten
Sobald SSHive sich mit dem Schlüssel verbindet, härten Sie den Server: in/etc/ssh/sshd_configPasswordAuthentication nosetzen, dann sshd neu laden (sudo systemctl reload sshunter Debian und Ubuntu). Lassen Sie diese Sitzung offen und testen Sie eine neue Verbindung, bevor Sie sich abmelden: Wird der Schlüssel abgewiesen, kommen Sie noch hinein. Ab dann nimmt auf diesem Server nichts mehr ein Passwort an, und die Bots auf Port 22 haben nichts mehr zu raten.
Häufige Fragen
Soll ich RSA, ECDSA oder ed25519 verwenden?+
Wo liegen meine SSH-Schlüssel auf macOS?+
ssh-keygen erzeugte Schlüssel sind Dateien in ~/.ssh/; fügen Sie einen mit ssh-add --apple-use-keychain hinzu, bewahrt macOS seine Passphrase im Schlüsselbund auf. In SSHive erzeugte Schlüssel sind keine Dateien: SSHive speichert sie verschlüsselt und zeigt ihre öffentliche Hälfte unter Einstellungen › SSH-Schlüssel. Schlüsseldateien sichern Sie selbst: Wer die einzige Kopie eines privaten Schlüssels verliert, sperrt sich bei jedem Server aus, der ihm vertraut hat.Kann ein Schlüssel für mehrere Server dienen?+
Passende SSHive-Funktionen
SSH-Terminal
GPU-beschleunigtes Terminal
SSHive kostenlos für macOS testen
Holen Sie sich den All-in-one-Client für SSH, SFTP, RDP und VNC auf dem Mac. Kostenloser Download, ohne Registrierung.
SSHive kostenlos laden