Ich habe einen Schlüssel generiert und auf mein Ziel kopiert:
ssh-keygen
ssh-copy-id username@hostname
Ich habe den Speicherort des Schlüssels als Standard festgelegt und keine Passphrase festgelegt.
Für eine kurze Zeit danach konnte ich ssh username@hostname
ohne Aufforderung ein Passwort eingeben, und dann funktionierte es aus irgendeinem Grund nicht mehr.
ssh
key-authentication
Tshepang
quelle
quelle
Antworten:
Wenn die Authentifizierung mit öffentlichem Schlüssel nicht funktioniert: Stellen Sie sicher, dass Ihr Ausgangsverzeichnis (
~
), das~/.ssh
Verzeichnis und die~/.ssh/authorized_keys
Datei auf der Serverseite nur von ihrem Eigentümer beschreibbar sind . Insbesondere darf keiner von ihnen von der Gruppe beschreibbar sein (auch wenn der Benutzer alleine in der Gruppe ist).chmod 755
oderchmod 700
ist ok,chmod 770
ist nicht.Was ist zu überprüfen, wenn etwas nicht stimmt?
ssh -vvv
das Programm aus , um viele Debugging-Ausgaben zu sehen. Wenn Sie eine Frage stellen, warum Sie keine Verbindung zu ssh herstellen können, schließen Sie diese Ausgabe ein (Sie möchten möglicherweise Host- und Benutzernamen anonymisieren)./var/log/daemon.log
oder/var/log/auth.log
oder ähnliches.quelle
authorized_keys
die Gruppe nicht beschreibbar sein? Lehnt SSH dies aus Sicherheitsgründen ab?authorized_keys
kann dort seinen eigenen Schlüssel hinzufügen und sich so in das Konto einloggen. Es muss also nur der Benutzer zugelassen werden. (Das Beschreiben der Datei mit Gruppen ist tatsächlich sicher, wenn sich kein anderer Benutzer in dieser Gruppe befindet. Es ist jedoch schwierig, zuverlässig zu erkennen, wann Gruppenmitgliedschaften aus Netzwerkdatenbanken stammen können.)Das Ausgangsverzeichnis des Ziels war
755 drwxr-xr-x
. Durch das Ändern der Schreibberechtigung für Gruppen wurde775 drwxrwxr-x
das kennwortlose Setup unterbrochen.quelle
Nachdem Sie sichergestellt haben, dass die Berechtigungen korrekt sind und die Schlüssel erneut gesendet wurden, funktionierte dies immer noch nicht.
Dann stolperte ich über das, was ich vorher nicht getan und niemanden erwähnt hatte.
-O allow_other kann nicht mit sshfs verwendet werden (Option in fuse.conf aktiviert)
Nach der Aktivierung habe ich meine sshfs-Befehle ohne sudo ausgeführt und alles hat perfekt funktioniert.
quelle
Angenommen, RHEL / CentOS und Sie haben Administratorzugriff auf den Remote-Server, auf dem der Benutzer
newuser
ssh ausführen möchte.newuser's
Bestehendes besorgenid_rsa.pub
und fertig haben.Folge den Schritten:
Habe
newuser
versucht mich einzuloggen.quelle