Seit gestern wurde ich jedes Mal, wenn ich versuche, eine Verbindung zu einem SSH-Server herzustellen, nach meinem Passwort gefragt. Was soll ich tun, damit SSH nicht jedes Mal nach meinem Passwort fragt?
Seit gestern wurde ich jedes Mal, wenn ich versuche, eine Verbindung zu einem SSH-Server herzustellen, nach meinem Passwort gefragt. Was soll ich tun, damit SSH nicht jedes Mal nach meinem Passwort fragt?
Antworten:
Geben Sie Ihren öffentlichen Schlüssel ein hostnachine:~/.ssh/authorized_keys
und stellen Sie sicher, dass er über die entsprechenden Berechtigungen verfügt - chmod 600. Weitere Informationen finden Sie in der Manpage, Abschnitt AUTHENTICATION. Beachten Sie, dass sshd möglicherweise so konfiguriert ist, dass diese Anmeldemethode nicht zulässig ist, obwohl ich nicht verstehen kann, warum.
Überprüfen Sie die Verzeichnis- und Dateiberechtigungen.
$HOME
kann nicht von einer Gruppe oder anderen beschreibbar sein.
$HOME/.ssh
muss über 700
Berechtigungen verfügen , die von Gruppen und anderen nicht lesbar, beschreibbar oder ausführbar sind.
$HOME/.ssh/authorized_keys
von niemandem beschreibbar oder ausführbar sein.
Wenn Sie feststellen, dass die Berechtigungen nicht streng genug sind, versuchen Sie herauszufinden, was das Problem verursacht hat. Das letzte Mal, als mir das passiert ist, hatte ich PHP von Grund auf neu kompiliert. Die Ausführung make install
als root (Slackware) hat die Berechtigungen und den Besitz von /
oder, /home
wie ich mich erinnere, geändert authorized_keys
und verhindert id_rsa.pub
, dass ssh mit Dateien arbeitet, die bereits vorhanden waren und seit Ewigkeiten funktionieren. Sie möchten feststellen, was das Problem verursacht hat, da aufgrund einer Rootkit-Installation oder ähnlichem ein geänderter Verzeichnisbesitz und / oder eine geänderte Berechtigung auftreten kann.
ssh-add -l
.