Wenn ich Ihre Frage verstehen, können Sie ssh-keys
einrichten zu ermöglichen Benutzer A und Benutzer B in verschiedenen Computern A & B zwei anmelden, ohne ein Passwort bereitstellt? Sicher, aber Benutzer A können sich nicht anmelden in Benutzer B ‚s Konto via ssh sowenig Benutzer A können melden Sie sich Benutzer B‘ s-Konto auf einem lokalen Computer. (Verzeichniseigentümerschaften sind unterschiedlich für die $HOME
, etc .. Das ist, was su
ist für).
Um ein Passwort weniger Login zu erstellen, lassen Sie uns Benutzer A und Computer A nehmen die ein Konto auf Computer B hat und würde ohne einen Passwort ssh hostnameB
und Login mögen.
(1) Benutzer A einen public_key und private_key auf Computer erstellt ein mit ssh-keygen -t ecdsa
(für einen ecdsa
Chiffrierschlüssel. dsa
Schlüssel werden nicht mehr unterstützt, aufgrund der Unsicherheit im aktuellen openssh). Wenn ssh-keygen
ausgeführt wird, erstellt es zwei Dateien (standardmäßig in $HOME/.ssh
). Die Schlüssel sind id_edcsa
(der private Schlüssel) und id_ecdsa.pub
(der öffentliche Schlüssel).
(2) für Benutzer A ohne Passwort Computer B anmelden, muss er zunächst seine public_key-Computer B übertragen und fügen Sie ihn in seine $HOME/.ssh/authorized_keys
Datei auf Computer B . z.B. von Computer A:
$ ssh-keygen -t ecdsa # generate key-pair
$ cd ~/.ssh # verify private and public keys created
$ rsync -a id_ecdsa.pub hostnameB:~/.ssh/id_ecdsa.pub.hostA
password: enter pw
$ ssh hostnameB
password: enter pw
$ cd ~/.ssh
$ cat id_dsa.pub.hostA >> authorized_keys # permissions must be 0600
$ exit # exit hostnameB
Anmerkung: oben könnten Sie die public_key Verzeichnis auf den Computer B~/.ssh/authorized_keys
Datei rsync
, wenn Sie sicher, dass man bereits, wenn ein vollständig vorhanden ist nicht der letzte Schritt überspringen speichern Kopieren der übertragenen Datei oben. z.B.
$ rsync -a id_ecdsa.pub hostnameB:~/.ssh/authorized_keys
(Sie Berechtigungen auf Computer B überprüfen müssen möglicherweise danach)
nun für den Test, Benutzer A sollte nicht mehr benötigen ein Passwort lang in Computer B.Ein von Computer:
$ ssh hostnameB
$ welcome to hostnameB>
Jetzt einfach Sie den Prozess der Erstellung von Schlüsselpaaren für jeden Benutzer und Übertragen des public_key an den Host Sie w/oa Passwort zugreifen möchten wiederholen und fügen Sie den public_key an die authorized_keys Datei. (Hinweis: Sie können das gleiche private_key in alle ~/.ssh
Verzeichnis kopieren und fügen Sie die gleiche public_key zu jedem ~/.ssh/authorized_keys
Datei, aber diese Art von besiegt den Zweck der separaten Schlüssel). Hinweis: Jede authorized_keys
Datei muss im Besitz des Benutzers sein, der das Verzeichnis $HOME/.ssh
besitzt, und die Dateiberechtigungen müssen 0600
(-rw-------
) oder sshd
sein, um eine Verbindung zu verhindern.
Das ist alles dort ist zu ihm (Sie in /etc/ssh/sshd_config
überprüfen kann der Name authorized_keys
Datei, um sicherzustellen, hat sich nicht auf etwas anderes geändert.
Probieren Sie es und lassen Sie mich wissen, wenn Sie Fragen haben. Ich getan es Hunderte von Zeiten - keine Probleme, solange Sie diese Regeln befolgen.
Googeln Sie Ihre Frage _Wie ich die Passwörter-weniger Authentifizierung zwischen zwei verschiedenen Konten einrichten_ Ich habe einhundert große Tutorials gefunden.Warum bevorzugen Sie zu fragen und warten für die Antwort ** statt eine minimale Forschung zu tun **? –