Ich habe einen Benutzer mit dem Namen grader
meiner Instanz erstellt und ihm die Sudo-Berechtigung erteilt. Außerdem habe ich das Kennwort auf „ /etc/ssh/sshd_config
Aus“ gesetzt.
Ich habe ein Schlüsselpaar auf meinem lokalen Rechner generiert und den öffentlichen Schlüssel zur Instanz hinzugefügt. Wenn ich versuche, mit dem von Amazon AWS bereitgestellten DEFAULT-Benutzer und meinen generierten Schlüsseln auf die Instanz zuzugreifen, funktioniert es
ssh -i "udacityLinux" [email protected]
aber wenn ich dasselbe mit dem grader
Benutzer versuche, erhalte ich diese Fehlermeldung:
ssh -i "udacityLinux" [email protected]
[email protected]: Permission denied (publickey).
grader
Wie kann ich das beheben, um mich mit meinem Benutzernamen anmelden zu können ?
Antwort1
Sie scheinen ein Missverständnis bezüglich des öffentlichen Schlüssels zu haben, den Sie auf den Server hochladen.
~/.ssh/authorized_keys
Dieser Schlüssel muss für jeden Benutzer, der durch diesen Schlüssel identifiziert werden soll, in der Datei gespeichert werden .
Dieser Pfad ~/.ssh/authorized_keys
entspricht Ihrem aktuellen Benutzerverzeichnis. Wenn Sie als grader
Benutzer angemeldet sind, verweist dieser Pfad auf:
/home/grader/.ssh/authorized_keys
Falls Sie als ubuntu
Benutzer angemeldet sind, verweist dieser Pfad auf:
/home/ubuntu/.ssh/authorized_keys
Sie können die Schlüsseldatei vorerst wie folgt kopieren:
sudo cp /home/ubuntu/.ssh/authorized_keys /home/grader/.ssh/
Legen Sie dann den richtigen Besitzer und die richtigen Berechtigungen fest:
sudo chown grader:grader /home/grader/.ssh/authorized_keys
sudo chmod 0600 /home/grader/.ssh/authorized_keys
Bedenken Sie, dass Sie nun alle Schlüssel, die Sie ggf. für den Benutzer aktiviert haben, auch ubuntu
für den Benutzer akzeptieren.grader