- Das ist mir
ssh-copy-id root@c199
schon einmal gelungen. - Ich kann mich
ssh root@c199
ohne Passwortabfrage anmelden - Ich möchte die automatische Anmeldung durch einen anderen Benutzer
ufo
(der Remote-Computer hat diesen Benutzer) ssh-copy-id ufo@c199
Bitten Sie mich, Ihr Passwort einzugeben./usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys ufo@c199's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'ufo@c199'" and check to make sure that only the key(s) you wanted were added.
Die Anmeldung erfolgt jedoch
ssh ufo@c199
weiterhin über die Eingabeaufforderung für das Passwort.
Ich versuche, mich per SSH bei Remote-CentOS auf msys2 (unter Windows) anzumelden. Ich habe festgestellt, dass es viele gleiche Zeilen gibt wie
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCs7RTfvn83Rxdmvgfh+F4kUlM5FzIUb9rRHaqq11xKIW1gztn/+G4tr+OWl4o6GTW2Z361hIi
ugy8DPtMATN66nTTDUYO0sSvw2BrQfDY4iIENdLpkkHO8KQVGpQE+8tDkaZfD6EQLVtl0uvDE3D77tfcnBLODXgZPQsUSlssMi+pxDbSVjjKgrP
hM1G/L9OTrEHKWDhF+ZBgY1RuLl7ZEdoATbhJaK4FFb9hNn/2CSibVfLts8HJGYQXIQRX/RBzaDZp47sKZvq302ewkkVorNY+c9mmoze6mi8Ip2
zEQOMi6S9zM/yRiD0XZrbmzYfNkoXA03WTmMR/DynVvX2nV /c/Users/xxxx/.ssh/id_rsa
in CentOS /home/ufo/.ssh/authorized_keys
,
Ich habe die Ordnerberechtigungen des .ssh-Benutzers auf 700 und die Datei authorized_keys auf 644 geändert.
Gleicher SSH-Schlüssel, ssh root@c199
Anmeldung ohne Eingabeaufforderung, aber ssh ufo@c199
Eingabeaufforderung für das Passwort.
AKTUALISIEREN
ssh ufo@c199 -vv
Ausgabe:
....
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:zmCg5vHhBAMd5P4ei82+KsVg072KXbC63C44P0w3zbU
debug1: Host 'c199' is known and matches the ECDSA host key.
debug1: Found key in /c/Users/xxxxx/.ssh/known_hosts:35
debug2: set_newkeys: mode 1
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug2: set_newkeys: mode 0
debug1: rekey after 134217728 blocks
debug2: key: /c/Users/xxxxx/.ssh/id_rsa (0x60006bec0), agent
debug2: key: /c/Users/xxxxx/.ssh/id_dsa (0x0)
debug2: key: /c/Users/xxxxx/.ssh/id_ecdsa (0x0)
debug2: key: /c/Users/xxxxx/.ssh/id_ed25519 (0x0)
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /c/Users/xxxxx/.ssh/id_rsa
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Trying private key: /c/Users/xxxxx/.ssh/id_dsa
debug1: Trying private key: /c/Users/xxxxx/.ssh/id_ecdsa
debug1: Trying private key: /c/Users/xxxxx/.ssh/id_ed25519
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
Antwort1
Dank anhttps://unix.stackexchange.com/a/55481/106419, das mir erklärte, wie ich SSH debuggen kann.
Um SSH-Debug zu aktivieren, um zu sehen, was passiert
systemctl stop sshd
/usr/sbin/sshd -d -p 22
Ich fand:
Authentication refused: bad ownership or modes for directory /home/ufo
Alle Jungs sagten nur:
/home/ufo/.ssh
Eigentumsverhältnisse sind korrekt 700/home/ufo/.ssh/authorized_keys
Eigentumsverhältnisse sind korrekt 600/644
Aber SSHD überprüft immer noch den Home-Ordner des Benutzers!!! Niemand hat das erwähnt!
sudo chmod 700 /home/ufo
Löse dieses Problem.
Zusammenfassung:
Sie müssen Folgendes sicherstellen:
/home/ufo
Eigentum ist 700/home/ufo/.ssh
Eigentum ist 700/home/ufo/.ssh/authorized_keys
Eigentum ist 600
ändern Sie „ufo“ in den Namen Ihres Home-Ordners
Antwort2
Ich musste meiner Datei folgendes hinzufügen sshd_config
:
PubkeyAcceptedKeyTypes=+ssh-dss
dann neu starten sshd
.
Antwort3
Anscheinend haben Sie keinen Eintrag in die Datei „authorized_keys“ des Benutzers „ufo“ eingefügt … oder die Berechtigungen für ~ufo/.ssh-Dateien/Verzeichnisse sind falsch.
Antwort4
Dies ist eine weitere Lösung für den Fall, dass Sie nicht auf sshd_config zugreifen oder es ändern können, wie von Millican in seiner Antwort vorgeschlagen. Eine Lösung besteht darin, einen neuen SSH-Schlüssel mit dem ED25519-Algorithmus zu erstellen:
ssh-keygen -t ed25519 -C "[email protected]"
wie erklärtHier. Dadurch wurde mein Problem gelöst, das dadurch verursacht wurde, dass der RSA SHA-1-Hash-Algorithmus veraltet ist.