Ich habe ein Problem, bei dem ich mich nicht über SSH anmelden kann. Ich habe andere Anleitungen befolgt und sichergestellt, dass die Berechtigungen korrekt festgelegt wurden und dass die Veröffentlichungsschlüssel auf meinem lokalen Computer und auf dem Remotecomputer ebenfalls übereinstimmen. Der Standardwert lautet jedoch immer das Passwort...
(Ich melde mich als einfacher Benutzer an, nicht als root)
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 53: Applying options for *
debug1: Connecting to ________________ port 22.
debug1: Connection established.
debug1: identity file /Users/s/.ssh/id_rsa type -1
debug1: identity file /Users/s/.ssh/id_rsa-cert type -1
debug1: identity file /Users/s/.ssh/id_dsa type 2
debug1: identity file /Users/s/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH_5*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 88:ea:bd:20:af:78:f8:4f:1f:45:3c:dd:d6:c6:10:dd
debug1: Host '______________' is known and matches the RSA host key.
debug1: Found key in /Users/s/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/s/.ssh/id_rsa
debug1: Offering DSA public key: /Users/s/.ssh/id_dsa
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: password
Kann mir jemand sagen, woran das liegen könnte?
ls -lR ~/.ssh
run auf dem Server.Antworten:
Wenn Ihre
ssh -v
Ausgabe auf dem Client anzeigt, dass es sich um "Offering public key" handelt, und dann ohne offensichtlichen Fehler zu "Next authentication method: password" übergeht, sollten Sie Folgendes versuchen (diese funktionieren für mich unter CentOS und Fedora):sshd_config
überStrictModes yes
(normalerweise die Standardeinstellung) verfügt, müssen Sie einige Berechtigungsregeln einhalten: Auf dem Server kann das Benutzer-Ausgangsverzeichnis nicht von Gruppen oder anderen Benutzern beschrieben werden (700, 711 oder 755 sollten funktionieren) und~/.ssh
sollte 700 sein und~/.ssh/authorized_keys
sollte 600 sein (beide privat).~/.ssh
Verzeichnis auf dem Server als anderer Benutzer erstellt haben und sich Ihr SELinux im strikten Modus befindet, kann dies zu Problemen führen. Führen Sie auf dem Server dierestorecon -Rv ~/.ssh
Funktion des Benutzers aus . Wenn er Änderungen vornimmt, kann dies das Problem beheben. (Dies ist ein guter Grund, denssh-copy-id
Befehl vom Client aus zu verwenden. Er~/.ssh
wird als Benutzer erstellt.)/var/log/audit/audit.log
Fehler untersuchen ... Einmal habe ich versucht, mit SSH einen Befehl als Benutzer eines Daemons auszuführen, dessen Ausgangsverzeichnis sich darunter befindet/var
, und SELinux hat~/.ssh/authorized_keys
in diesem Fall die Lesefähigkeit verweigert .quelle