Ich kann von meinem Computer (OS X) aus keine SSH-Verbindung zu meinem Raspberry Pi (Ubuntu Mate) herstellen, es sei denn, ich verwende sudo. Zur Authentifizierung verwende ich ein öffentliches/privates Schlüsselpaar.
Der entsprechende öffentliche Schlüssel wird der Datei authorized_users auf dem Raspberry Pi hinzugefügt.
Die Berechtigungen für mein .ssh-Verzeichnis sind 700. Die Berechtigungen für meine Schlüsseldateien sind 600.
Dies ist die Ausgabe von ssh mit dem Flag -v:
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/username/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /Users/username/.ssh/id_dsa
debug1: No more authentication methods to try. Permission denied (publickey).
ls:
-rw------- 1 username staff 3326 May 18 23:24 id_rsa
-rw-r--r-- 1 username staff 752 May 18 23:24 id_rsa.pub
.ssh:
drwx------ 11 username staff 374 May 19 21:49 .ssh
Antwort1
Sie haben wahrscheinlich den SSH-Schlüssel von root freigegeben, möglicherweise indem sudo
Sie dies getan haben ssh-copy-id
. Stellen Sie sicher, username
dass der öffentliche Schlüssel von auch im authorized_keys
Ziel vorhanden ist.
Antwort2
Hier scheint es eine Diskrepanz zu geben. Sie sagen immer authorized_users; andere sagen authorized_keys. Der öffentliche Schlüssel für einen Benutzer wird in das Home-Verzeichnis des Benutzers in einer Datei namens .ssh/authorized_keys und nicht .ssh/authorized_users geschrieben. Da ssh für root funktioniert, sollten Sie sich das Verzeichnis für ~root/.ssh ansehen und das Verzeichnis für ~user_name/.ssh genauso aussehen lassen – außer natürlich, dass die Schlüssel dann die für diesen Benutzer sind, nicht die für root.