![SSH-Kopier-ID - öffentlicher Schlüssel abgelehnt](https://rvso.com/image/1444049/SSH-Kopier-ID%20-%20%C3%B6ffentlicher%20Schl%C3%BCssel%20abgelehnt.png)
Ich versuche, meinen öffentlichen SSH-Schlüssel auf meinen VPS zu kopieren, damit ich mich mit anmelden kann ssh
.
Wenn ich jedoch den Befehl eingebe:
ssh-copy-id me@myserver
Ich erhalte diese Fehlermeldung
/usr/local/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/local/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
Permission denied (publickey).
Weiß jemand, wie man das behebt? Ich bin auf einem Mac.
Antwort1
Wie Camilo bereits vorgeschlagen hat, können Sie den richtigen öffentlichen SSH-Schlüssel manuell auf dem Remote-Server hinzufügen.
In meinem Fall trat derselbe Fehler auf, als das SSH-Programm versuchte, eine andere Identitätsdatei zu verwenden als bei der Verwendung von ssh-copy-id definiert oder den definierten privaten Schlüssel/die definierte Identitätsdatei einfach nicht finden konnte. Sie können beobachten, was das SSH-Programm bei der Ausführung des ssh-Befehls macht, indem Sie -v hinzufügen:
ssh -v username@your-host-ip-or-domain
Anschließend schnappt man sich auf seinem lokalen Rechner einfach einen beliebigen öffentlichen Schlüssel, von dem das SSH-Programm den privaten Schlüssel ausprobiert, zum Beispiel (auf einem Mac/Linux) den Standardschlüssel:
cat ~/.ssh/id_rsa.pub
... und fügen Sie es der Datei authorized_keys der Fernbedienung hinzu in:
~/.ssh/authorized_keys
Eine andere, in meinem Fall sogar bessere Lösung war, einen benutzerdefinierten Host in meiner lokalen SSH-Konfigurationsdatei hinzuzufügen. Auf meinem Mac ist das:
~/.ssh/config
Hier kannst du zum Beispiel so etwas hinzufügen:
Host mynewserver
HostName some.IP.number.or.domain
Port 20000 #if custom port is used and not the default 22
User the_root
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_for_my_new_server
Dann müssen Sie nur noch Folgendes ausführen:
ssh mynewserver
...und Voilà
Antwort2
Ich hatte das gleiche Problem. Bei mir hat es funktioniert, indem ich es manuell eingegeben habe. Unter diesem Link finden Sie, wie das geht.Manuelle Eingabe. Auf diese Weise konnte ich mich auch bei Verwendung von Schlüsselpaaren über SSH verbinden. Als ich es konfigurierte, enthielt die Datei .ssh/authorized_keys einen anderen Schlüssel, der auf die ursprüngliche Maschine verwies, also überschrieb ich diese Information mit der in /.ssh/id_rsa.pub der ursprünglichen Maschine enthaltenen Information.