Wie kann ich ein passwortloses SSH-Login einrichten?


252

Ich möchte mich über ssh bei einer Gegenstelle anmelden können, ohne ständig das Passwort eingeben zu müssen.

  • Wie richte ich es ein?
  • Ist ein anderer Befehl erforderlich, um eine Sitzung ohne Kennwort auszuführen?

Benutzt du openssh? (wenn ja, ist das einfach;))
Rinzwind

@Rinzwind, warum sollte ich die proprietäre Version kaufen, wenn OpenSSH bereits vorinstalliert ist?
Oxwivi

15
Ich versuche, keine Unterstellungen zu machen;)
Rinzwind

1
@ Kevin, bitte klären Sie sich. Wir sprechen von SSHING ohne Passwort, was im Allgemeinen eine gute Praxis ist . Meinen Sie damit, in eine Root-Shell zu sshen? Das wird von dieser Frage nicht abgedeckt.
Oxwivi

@Oxwivi: Entschuldigung, dies hätte ein Kommentar zu Ravindras Antwort sein sollen, der auf die Anmeldung als Root abzielt.
Kevin

Antworten:


266

Antworten

Führen Sie diese Befehle aus:

ssh-keygen

Dann müssen Sie den neuen Schlüssel auf Ihren Server kopieren :

ssh-copy-id user@host
## or if your server uses custom port no:
ssh-copy-id "user@host -p 1234"

Nachdem der Schlüssel kopiert wurde, führen Sie ssh wie gewohnt auf dem Computer aus:

ssh user@host

Sie können sich jetzt anmelden, ohne ein Kennwort von dem Computer einzugeben, auf dem Sie die Befehle ausgeführt haben.

Beispiel

not-marco@rinzwind-desktop:~$ ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/home/not-marco/.ssh/id_rsa): 
Created directory '/home/not-marco/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/not-marco/.ssh/id_rsa.
Your public key has been saved in /home/not-marco/.ssh/id_rsa.pub.
The key fingerprint is:
b1:25:04:21:1a:38:73:38:3c:e9:e4:5b:81:e9:ac:0f not-marco@rinzwind-desktop
The key's randomart image is:
+--[ RSA 2048]----+
|.o= . oo.        |
|*B.+ . .         |
|*=o .   o .      |
| = .     =       |
|. o     S        |
|E.               |
| o               |
|  .              |
|                 |
+-----------------+

not-marco@rinzwind-desktop:~$ ssh-copy-id not-marco@server
not-marco@server's password: 
Now try logging into the machine, with "ssh 'not-marco@server'", and check in:

  ~/.ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

Erläuterung

Dies setzt voraus, dass Sie bereits erfolgreich über SSH eine Verbindung zu Ihrem Server herstellen können.

Sie müssen ein SSH-Schlüsselpaar generieren, mit dem Sie sich ohne Kennwort identifizieren können. Wenn Sie möchten, können Sie die Schlüssel mit einem Passwort schützen. Sie können dieses Feld jedoch auch leer lassen, um einen SSH-Zugriff ohne Passwort zu ermöglichen.

  1. Erstellen Sie zuerst Ihr SSH-Schlüsselpaar, indem Sie ssh-keygendieses ausführen, um eine id_rsaund id_rsa.pub-Datei zu erstellen . Die pubDatei wird auf den Servern gespeichert, der private Schlüssel ( id_rsa) verbleibt bei Ihnen und zeigt an, wie Sie sich identifizieren.
  2. Kopieren Sie anschließend den öffentlichen Schlüssel auf Ihren Server, ssh-copy-id user@serverindem Sie den Benutzer durch den Remotebenutzer und den Server mit dem DNS-Namen oder der IP-Adresse des Computers ersetzen. Sie werden aufgefordert, Ihr SSH-Passwort einzugeben. Wenn alles erfolgreich abgeschlossen wurde, können Sie über auf das Gerät zugreifen, ssh user@serverohne ein Passwort zu benötigen.

Verweise


11
@Oxwivi diese Antwort ist die korrektere Methode - aber es scheint länger zu dauern. Alles, was Sie tun müssen, ist ssh-keygen, den Anweisungen auf dem Bildschirm zu folgen und dann ssh-copy-id user@serverBenutzer durch Ihren Remotebenutzer und Server durch den Remotecomputer zu ersetzen
Marco Ceppi

3
Ich hatte diesen Fehler "Agent gab zu, dass er nicht mit dem Schlüssel signiert hat." Jedes Mal, wenn Sie versuchen, sich anzumelden, nachdem Sie diesen Vorgang ausgeführt haben. Die Lösung bestand darin, "> ssh-add" auf dem lokalen Computer auszuführen, und jetzt kann ich mich erwartungsgemäß auf dem Remote-Computer anmelden.
Jmbouffard

1
Es lohnt sich zu erwähnen , dass , wenn Sie benutzerdefinierte Port für @server verwenden, Sie müssen dies tun , mit: ssh-copy-id "not-marco@127.0.0.1 -p 1234".
S3M3N

@ Rinzwind: Bedeutet dies, dass ich mich nie von einem unbekannten Client / Computer bei meinem Server authentifizieren kann, wenn ich die passwd-Authentifizierung deaktiviere und nur die Schlüsselauthentifizierung zulasse. Gibt es eine Möglichkeit, die Anmeldung von einem unbekannten Computer mit dem privaten Schlüssel zuzulassen, der für den bekannten / konfigurierten Client generiert wurde, um mit dem Server zu kommunizieren? Ich meine, ist dieser private Schlüssel tragbar und kann verwendet werden, um mich im Notfall gegenüber dem Server anderer Computer zu authentifizieren?
Rajat Gupta

4
Aber der Server fragt immer noch nach dem Passwort ,,,
Lerner Zhang

34

Geben Sie die folgenden Befehle ein:

  1. ssh-keygen

    Drücken Sie EnterTaste , bis Sie die Aufforderung erhalten

  2. ssh-copy-id -i root@ip_address

    (Es wird einmalig nach dem Passwort des Hostsystems gefragt)

  3. ssh root@ip_address

Jetzt sollten Sie sich ohne Passwort anmelden können.


25

So mache ich das normalerweise:

ssh-keygen -t rsa

(Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, lassen Sie es leer.)

Dann: cat ~/.ssh/id_rsa.pub | ssh username@hostname 'cat >> .ssh/authorized_keys'

(Dazu muss sich der Ordner .ssh im Ausgangsverzeichnis auf dem Zielhostnamen befinden, in dem sich die Datei authorized_keys befindet.)

Ersetzen Sie natürlich den Benutzernamen durch den gewünschten Benutzernamen und den Hostnamen durch den gewünschten Hostnamen oder die gewünschte IP-Adresse

Danach nur noch SSH zu dieser Box, so wie du es gewohnt bist.


Was ist mit dem Befehl touchund chmodin Rinzwinds Antwort?
Oxwivi

7
Sie müssen die .ssh/authorized_keysDatei auf 0600 chmod oder dies wird nicht funktionieren
Marco Ceppi

Dies hat wirklich geholfen, da ich ssh-copy-id nicht für root auf meinem Server zum Laufen bringen konnte. Es muss root sein, wenn backuppc (oder ein anderer Daemon) auf einen anderen Rechner ssh muss.
Adam

18

Ich benutze normalerweise sshpassdafür, installiere es mit sudo apt-get install sshpassund benutze es so

sshpass -p 'password' ssh your_username@your_server

6
Warum nicht SSH-Schlüssel verwenden?
Enzotib

1
Es ist keine "Warum nicht" Situation, es funktioniert immer noch perfekt, ohne Schlüssel hinzuzufügen, es ist nur eine andere Methode, die ich sagen würde.
Bruno Pereira

Vielen Dank für die Informationen zu sshpass, von denen ich noch nie gehört habe.
Panther

7
SSH-Schlüssel sind die "richtige" Antwort auf die Frage, aber sshpassein sehr nützlicher Hack, wenn Sie die Authentifizierungsmethode auf dem Remote-Server nicht ändern können!
Jacob Krall

9
Dies ist sehr gefährlich, Sie werden bash_history oder was auch immer die einfachen Passwörter für die Hosts, mit denen Sie verbinden, behalten.
Kappa

10

Deaktivieren Sie die Kennwortauthentifizierung

Da viele Leute mit SSH-Servern schwache Passwörter verwenden, werden viele Online-Angreifer nach einem SSH-Server suchen und dann nach dem Zufallsprinzip Passwörter erraten. Ein Angreifer kann innerhalb einer Stunde Tausende von Passwörtern ausprobieren und selbst das sicherste Passwort erraten, wenn genügend Zeit zur Verfügung steht. Die empfohlene Lösung ist die Verwendung von SSH-Schlüsseln anstelle von Kennwörtern. Um so schwer zu erraten wie ein normaler SSH-Schlüssel zu sein, müsste ein Passwort 634 zufällige Buchstaben und Zahlen enthalten. Wenn Sie sich immer mit einem SSH-Schlüssel bei Ihrem Computer anmelden können, sollten Sie die Kennwortauthentifizierung vollständig deaktivieren.

Wenn Sie die Kennwortauthentifizierung deaktivieren, können Sie nur Verbindungen von Computern herstellen, die Sie speziell genehmigt haben. Dies verbessert Ihre Sicherheit erheblich, macht es Ihnen jedoch unmöglich, von einem PC eines Freundes aus eine Verbindung zu Ihrem eigenen Computer herzustellen, ohne den PC vorher zu genehmigen, oder von Ihrem eigenen Laptop, wenn Sie versehentlich Ihren Schlüssel löschen.

Es wird empfohlen, die Kennwortauthentifizierung zu deaktivieren, es sei denn, Sie haben einen bestimmten Grund, dies nicht zu tun.

Suchen Sie in der Datei sshd_config nach der folgenden Zeile, um die Kennwortauthentifizierung zu deaktivieren:

#PasswordAuthentication yes

Ersetzen Sie es durch eine Zeile, die so aussieht:

PasswordAuthentication no

Nachdem Sie die Datei gespeichert und Ihren SSH-Server neu gestartet haben, sollten Sie beim Anmelden nicht einmal nach einem Kennwort gefragt werden.

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#disable-password-authentication


2
Dies ist die grundlegendste richtige Antwort, aber gut für die Sicherheit! Auch die Deaktivierung der Root-Anmeldung ist eine weitere gute
Option

Betrifft PasswordAuthentication noalle Benutzer? Wenn nicht, wie schalte ich es für normale Benutzer aus, aber lasse es für root unverändert, während ich es teste? Ich möchte es nicht wirklich fesseln und mich komplett aussperren.
Adam

Lassen Sie eine SSH-Sitzung geöffnet, damit Sie sie wieder ändern können. Sie möchten Passwörter und root deaktivieren. Ja, Sie können es fubar. Tun Sie nicht;)
Thufir

Während ssh habe ich einen Fehler Permission denied (publickey).mit PasswordAuthentication no. Was soll ich tun Ändere ich PasswordAuthentication noauf einem anderen Host?
Paris,

9

Diese Lösung ist speziell für Anwender mit Windows - ssh in ihre Remote - Maschinen einschließlich Cloud Bilder auf AWS - Cloud und GCE Wolke

Haftungsausschluss

Kürzlich wurde diese Lösung zum Remote-Anmelden neuer bereitgestellter VM-Images auf GCE verwendet.


Benutztes Werkzeug:

  1. puttygen puttygen herunterladen
  2. winscp Winscp herunterladen

Durchzuführende Schritte:

  1. Generieren Sie mit puttygen ein öffentliches / privates Schlüsselpaar.
  2. Laden Sie den öffentlichen Schlüssel auf Ihren Server in der Cloud oder an einem Remotestandort hoch.

Wie es geht:

1. Generieren Sie einen Schlüssel / ein Paar oder verwenden Sie einen vorhandenen privaten Schlüssel

Wenn Sie einen privaten Schlüssel besitzen:

Öffnen Sie puttygen, drücken Sie die Ladetaste und wählen Sie Ihre private Schlüsseldatei ( *.pem) aus.


Wenn Sie keinen privaten Schlüssel besitzen:

  • Öffnen puttygen,
  • Wählen Sie den gewünschten Schlüsseltyp SSH2 DSA (Sie können RSA oder DSA verwenden) im Abschnitt Parameter . Es ist wichtig, dass Sie das Passwortfeld leer lassen.
  • Drücken generateund befolgen Sie die Anweisungen, um ein (öffentliches / privates) Schlüsselpaar zu generieren.

Beispiel Key Generation Bild

(von Quelle 1, unten angegebener Link)

2. Erstelle eine neue 'authorized_keys' Datei (mit notepad)

Kopieren Sie Ihre öffentlichen Schlüsseldaten aus dem Abschnitt "Öffentlicher Schlüssel zum Einfügen in die OpenSSH-Datei authorized_keys" des PuTTY-Schlüsselgenerators und fügen Sie die Schlüsseldaten in die authorized_keysDatei ein.


Stellen Sie sicher, dass diese Datei nur eine Textzeile enthält.


3. Laden Sie den Schlüssel auf den Linux-Server hoch

  • Öffnen Sie WinSCP,
  • Wählen Sie das SFTP-Dateiprotokoll und melden Sie sich mit Ihren SSH-Anmeldeinformationen an.
  • Bei Erfolg sehen Sie die Basisverzeichnisstruktur auf Ihrem Remotecomputer.

Laden Sie die Datei "authorized_keys" in das Ausgangsverzeichnis auf dem Remote-Computer hoch.


4. Legen Sie die richtigen Berechtigungen fest

.sshVerzeichnis erstellen (falls nicht vorhanden)


authorized_keysDatei in .sshVerzeichnis kopieren .
(Dies ersetzt alle vorhandenen authorized_keysDateien, beachten Sie dies).

Wenn eine Datei vorhanden war, fügen Sie einfach den Inhalt dieser Datei zur vorhandenen Datei hinzu.


Führen Sie Befehle aus, um Berechtigungen festzulegen:

sudo chmod 700 .ssh && chmod 600 .ssh/authorized_keys

Jetzt können Sie sshjedes Mal auf einen Remote-Computer zugreifen, ohne Anmeldeinformationen eingeben zu müssen.

Weitere Lektüre:


4

Wenn Sie ein öffentliches Schlüsselpaar erstellen und sich mit unserem neu erstellten öffentlichen Schlüssel anmelden, müssen Sie Ihr Kennwort nicht eingeben. Abhängig von der Konfiguration Ihres Schlüsselbunds und / oder SSH-Agenten müssen Sie Ihren Schlüssel möglicherweise mit einer Passphrase schützen.

Hier ist eine von vielen kurzen Anleitungen für Sie. Für die Sicherheit dieser Methode ist es von entscheidender Bedeutung, dass der generierte private Schlüssel privat bleibt! Sie sollten es niemals an Dritte weitergeben oder den Zugriff darauf in irgendeiner Form gestatten.

Dieser Befehl generiert einen relativ starken Schlüssel für ~/.ssh/:

ssh-keygen -b 4096

In ~/.ssh/finden Sie Ihren öffentlichen Schlüssel als id_rsa.pub. Der Inhalt sollte an Ihre authorized_keysServerdatei angehängt werden, indem Sie die Datei über ein transportierbares Medium (USB-Stick) transportieren oder die Kennwortauthentifizierung auf dem Server kurz aktivieren, dann verwenden ssh-copy-id ~/.ssh/id_rsa.pub username@serverund wieder deaktivieren.

Wenn Sie sich dafür entschieden haben, Ihren Schlüssel mit einer Passphrase zu sichern (im ersten Schritt), können Sie ssh-agentoder den Ubuntu-Schlüsselring verwenden, um diese Pharse lokal zu sichern, damit Sie sie nicht die ganze Zeit eingeben müssen.


3

Einige Ergänzungen vornehmen:

  • Mac standardmäßig nicht, müssen ssh-copy-idSie es selbst installieren:

    curl https://raw.github.com/beautifulcode/ssh-copy-id-for-OSX/master/ssh-copy-id.sh -o /usr/local/bin/ssh-copy-id
    chmod +x /usr/local/bin/ssh-copy-id
    

Weitere Informationen finden Sie hier: https://github.com/beautifulcode/ssh-copy-id-for-OSX

  • Wenn Sie eine Portweiterleitung durchgeführt haben, sollte der Befehl folgendermaßen lauten:

    ssh-copy-id "not-marco@127.0.0.1 -p 2222"
    

Beachten Sie, dass die Anführungszeichen erforderlich sind.


3

Remote Login / Kopie ohne Passwort

Die Anwendungen sshund scpfür Remote - Login und Remote - Copy bzw. können Sie mit einer Remote - Host kommunizieren , ohne ein Passwort zu geben. Dies setzt voraus, dass Sie einem Authentifizierungsverfahren wie dem unten beschriebenen folgen. Unter Client verstehen wir die Maschine, auf der Sie sitzen, und unter Server die Maschine, auf der Sie sich anmelden möchten, ohne ein Kennwort anzugeben. Die Schritte des Authentifizierungsverfahrens sind:

  1. Führen Sie ssh-keygen aus, um private und öffentliche Schlüssel zu generieren, sofern dies auf Ihrem Computer noch nicht geschehen ist. Diese werden in Dateien in gespeichert $HOME/.ssh.
  2. Hängen Sie den Inhalt der öffentlichen Schlüsseldatei an die Datei $HOME/.ssh/authorized_keysoder $HOME/.ssh/authorized_keys2an den Server an.

Es gibt drei verschiedene Arten von Authentifizierungsprotokollen. Sie geben den Typ an, wenn Sie ssh-keygen ausführen:

  1. SSH- Protokoll Version 1, RSA1: Dies ist die Standardeinstellung und führt zur Identität der Dateien (privater Schlüssel, sollte chmod 0700sicherstellen, dass diese Datei für andere nicht lesbar ist) und zur Datei identity.pub (öffentlicher Schlüssel).
  2. SSH- Protokoll Version 1, RSA : Dies wird durch Ausführen von ssh-keygen -t rsaDateien id_rsa(privater Schlüssel) und id_rsa.pub(öffentlicher Schlüssel) erzielt.
  3. SSH- Protokoll Version 1, DSA : Dies wird durch Ausführen erhalten ssh-keygen -t dsaund führt zu Dateien id_dsa(privater Schlüssel) und id_dsa.pub(öffentlicher Schlüssel)

Wenn Sie ssh-keygen ausführen, können Sie sich auf Standardantworten verlassen (was bedeutet, dass Sie keine Passphrase angeben). Dies macht die gesamte Einrichtung einfach, aber auch unsicher.

Sie können den Schlüsseltyp angeben, der von einer Option für ssh verwendet werden soll . ssh -1Kräfte Verwendung von RSA1 Tasten (Protokoll Version 1), während ssh -2Kräfte ssh versuchen RSA oder DSA Schlüssel nur (Protokoll Version 2). In den folgenden Beispielen generieren und installieren wir RSA1- und DSA- Schlüssel auf dem Remote-Host, damit Sie flexibler sind. .sshMit der Zeile können Sie eine Konfigurationsdatei in Ihrem Verzeichnis erstellen

Protocol 1,2

Dies veranlasst ssh , eine RSA1-Verbindung (Protokollversion 1) vor RSA / DSA (Protokollversion 2) zu versuchen .

Verwenden von RSA1-Tasten

remote=user@remotehost   # fill in correct user and remotehost names
cd $HOME/.ssh
# create .ssh on remote host if it is non-existing:
ssh $remote 'if [ ! -d .ssh ]; then mkdir .ssh; fi' 
# copy RSA1 key: 
scp identity.pub ${remote}:.ssh
ssh $remote "cd .ssh; cat identity.pub >> authorized_keys"

Verwenden von DSA-Schlüsseln

remote=user@remotehost   # fill in correct user and remotehost names
cd $HOME/.ssh
# create .ssh on remote host if it is non-existing:
ssh $remote 'if [ ! -d .ssh ]; then mkdir .ssh; fi' 
# copy DSA key: 
scp id_dsa.pub ${remote}:.ssh
ssh $remote "cd .ssh; cat id_dsa.pub >> authorized_keys2"

Dies ist alles, was Sie tun müssen, wenn Sie beim Generieren der Schlüssel keine Passphrase verwendet haben. Sie können die Verbindung testen, indem Sie ssh $ remote ausführen und prüfen, ob Sie sich ohne Angabe eines Kennworts anmelden können (möglicherweise müssen Sie -1oder -2als Optionen für ssh verwenden ). Der Vorgang kann natürlich für jeden Computer wiederholt werden, auf dem Sie sich anmelden möchten.

Wenn Sie eine Passphrase verwendet haben, müssen Sie das Programm ausführen ssh-agent, um eine spezielle Shell zu starten. Anschließend müssen Sie ssh-addIhre Kombination aus Schlüssel und Passphrase bei registrieren sshd. Weitere Informationen finden Sie auf den Manpages dieser Programme.

Ein Skript zur Automatisierung von kennwortfreien Verbindungen: ssh-no-password.sh

#!/bin/sh

# create ssh connections without giving a password

if [ $# -lt 1 ]; then
  echo Usage: $0 username@remotehost
  exit
fi
remote="$1"  # 1st command-line argument is the user@remotehost address
this=$HOST   # name of client host

# first check if we need to run ssh-keygen for generating
# $HOME/.ssh with public and private keys:
if [ ! -d $HOME/.ssh ]; then
  echo "just type RETURN for each question:" # no passphrase - unsecure!!
  # generate RSA1, RSA and DSA keys:
  echo; echo; echo
  ssh-keygen
  echo; echo; echo
  ssh-keygen -t rsa
  echo; echo; echo
  ssh-keygen -t dsa
else
  # we have $HOME/.ssh, but check that we have all types of
  # keys (RSA1, RSA, DSA):
  if [ ! -f $HOME/.ssh/identity ]; then
     # generate RSA1 keys:
     echo "just type RETURN for each question:" # no passphrase - unsecure!!
     ssh-keygen
  fi
  if [ ! -f $HOME/.ssh/id_rsa ]; then
     # generate RSA keys:
     echo "just type RETURN for each question:" # no passphrase - unsecure!!
     ssh-keygen -t rsa
  fi
  if [ ! -f $HOME/.ssh/id_rsa ]; then
     # generate DSA keys:
     echo "just type RETURN for each question:" # no passphrase - unsecure!!
     ssh-keygen -t dsa
  fi
fi


cd $HOME/.ssh

if [ ! -f config ]; then
  # make ssh try ssh -1 (RSA1 keys) first and then ssh -2 (DSA keys)
  echo "Protocol 1,2" > config
fi

# copy public keys (all three types) to the destination host:

echo; echo; echo
# create .ssh on remote host if it's not there:
ssh $remote 'if [ ! -d .ssh ]; then mkdir .ssh; fi' 
# copy RSA1 key: 
scp identity.pub ${remote}:.ssh/${this}_rsa1.pub
# copy RSA key:
#scp id_rsa.pub ${remote}:.ssh/${this}_rsa.pub
# copy DSA key:
scp id_dsa.pub ${remote}:.ssh/${this}_dsa.pub
# make authorized_keys(2) files on remote host:

echo; echo; echo
# this one copies all three keys:
#ssh $remote "cd .ssh; touch authorized_keys authorized_keys2; cat ${this}_rsa1.pub >> authorized_keys; cat ${this}_rsa.pub >> authorized_keys2; cat ${this}_dsa.pub >> authorized_keys2;"
# this one copies RSA1 and DSA keys:
ssh $remote "cd .ssh; touch authorized_keys authorized_keys2; cat ${this}_rsa1.pub >> authorized_keys; cat ${this}_dsa.pub >> authorized_keys2;"

echo; echo; echo
echo "try an ssh $remote"

kopiert von: http://folk.uio.no/hpl/scripting/doc/ssh-no-password.html


1

Ich möchte eine Antwort für diejenigen hinzufügen, die möglicherweise feststellen, dass sie das Passwort eingeben sollten, obwohl sie alle Antworten hier gelesen haben, weil Sie IdentitiesOnly als Ja festgelegt haben. Und die Antwort hier kann Ihnen viel Zeit sparen, um mehrere Schlüssel zu verwalten - Schlüssel für Git oder Server.

Nachdem ich den Schlüssel generiert und auf den Server kopiert habe:

ssh-keygen  # change the file to /home/yourname/.ssh/something
ssh-copy-id -i ~/.ssh/something.pub lerner@192.168.20.160

Ich fand es hat nicht funktioniert.

Dann ging ich zum ~/.ssh/configClient, um die Datei zu überprüfen. Ich sah das unten:

Host *
IdentitiesOnly yes

Dann füge ich das oben hinzu:

Host somename
HostName 192.168.20.160
User lerner
IdentityFile ~/.ssh/something

Ich kann mich nur durch Eingabe einloggen ssh somename.

Dann können Sie mehrere SSH-Schlüssel mit Ihren Lieblingsnamen hinzufügen, und Sie müssen nur die Einstellungen wie die obigen vier Zeilen zur Konfigurationsdatei hinzufügen.

Host ist der Name, den Sie eingeben möchten, wenn Sie den Server später verbinden. Der Hostname ist die IP des Servers. Benutzer ist der Benutzername, den Sie beim Server anmelden. und die Identitätsdatei ist die Datei, in der Sie den von Ihnen generierten Schlüssel speichern.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.