=============================================== =================
UPDATE: Es stellte sich heraus, dass die Konfiguration von sshd keine host2
Passwortanmeldung zulässt. Vielen Dank an die Leute, die darauf geantwortet haben.
=============================================== =================
Szenario: Mit einer Firma für mein College-Projekt arbeiten. Ich muss PuTTy zuerst für SSH host1
und dann für SSH verwenden host2
(siehe unten). Ich habe auf host2 einen Benutzernamen und ein Passwort erhalten.
Ich habe überhaupt keinen Zugriff auf host2, daher habe ich keine Kenntnis davon sshd_config
.
Dies ist, was passiert ist, als ich versucht habe, in SSH host2
von host1
:
ff@host1:~$ ssh -v host2
OpenSSH_5.1p1 Debian-5, OpenSSL 0.9.8g 19 Oct 2007
debug1: Reading configuration data /home/ff/.ssh/config
debug1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to host2 [192.*.*.*] port 22.
debug1: Connection established.
debug1: identity file /home/ff/.ssh/identity type -1
debug1: identity file /home/ff/.ssh/id_rsa type -1
debug1: identity file /home/ff/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.3
debug1: match: OpenSSH_4.3 pat OpenSSH_4*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.1p1 Debian-5
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc 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: Host 'sd01' is known and matches the RSA host key.
debug1: Found key in /home/ff/.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: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
debug1: Unspecified GSS failure. Minor code may provide more information
debug1: Next authentication method: publickey
debug1: Trying private key: /home/ff/.ssh/identity
debug1: Trying private key: /home/ff/.ssh/id_rsa
debug1: Trying private key: /home/ff/.ssh/id_dsa
debug1: Next authentication method: password
ff@sd01's password:
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
Permission denied, please try again.
ff@sd01's password:
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
Permission denied, please try again.
ff@sd01's password:
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: No more authentication methods to try.
Permission denied (publickey,gssapi-with-mic,password).
und mein /home/ff/.ssh/config:
Host *
# ForwardAgent no
# ForwardX11 no
# ForwardX11Trusted yes
# RhostsRSAAuthentication no
# RSAAuthentication yes
# HostbasedAuthentication no
BatchMode no
# CheckHostIP yes
# AddressFamily any
# ConnectTimeout 0
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# Port 22
# Protocol 2,1
# AuthorizedKeysFile .ssh/authorized_keys
# Cipher 3des
# Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
# EscapeChar ~
# Tunnel no
# TunnelDevice any:any
# PermitLocalCommand no
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no
Ich frage mich, ob ich irgendetwas tun kann, bevor ich in die Firma gehe.
host2
.Antworten:
Der Benutzername und das Passwort, die Sie versuchen, werden vom Host nicht akzeptiert. Das bedeutet, dass Sie entweder eine Verbindung zum falschen Server herstellen oder der Benutzername oder das Passwort falsch sind. Sie sollten den Administrator bitten, die Anmeldungen zu überprüfen
host2
, damit Sie wissen, welcher der drei Fälle der Fall ist.quelle
Zuerst
und dann :
und teste dies:
quelle
In meinem Fall wurde es durch die Verschlüsselung des Home-Verzeichnisses verursacht. Ich habe die Lage des SSH - Schlüssels geändert und das Problem gelöst: (Webarchiv Kopie) http://tweaktheserver.com/ssh-cant-connect-authentications-that-can-continue-publickeygssapi-keyexgssapi-with-micpassword/
quelle
Die GSSAPI-Authentifizierung scheint auf dem Client aktiviert zu sein, schlägt jedoch fehl und greift auf die Kennwortauthentifizierung zurück. Wenn Sie sich nicht mit dem angegebenen Login und Passwort anmelden können, ist es nur sinnvoll, sich an eine für die Serververwaltung zuständige Person (die "Firma") zu wenden.
quelle
Ich hatte das gleiche Problem, aber das Problem für mich war, dass die Standardkonfiguration des Betriebssystems (CentOS 7) darin bestand, das Benutzerverzeichnis zu verschlüsseln, sodass die darin
authorized_keys
abgelegte Datei~/.ssh/
nicht funktionieren würde. Die Lösung kam von hier aber grundsätzlich:/etc/ssh/sshd_config
setze die AuthorizedKeysFile Eigenschaft auf etwas außerhalb des Benutzerverzeichnisses (/etc/ssh/authorized_keys
)quelle
Versuch:
ssh Server -p Port -o PreferredAuthentications = publickey
quelle
code styling
für Befehle gilt als guter Stil:``
Ich musste
/home/ec2-user
Berechtigungen 700 geben:quelle
Lassen Sie mich hinzufügen, dass Sie sicherstellen sollten, dass der Schlüssel Ihrem Benutzer gehört.
Geben Sie ein, um
ls -la
zu sehen, welchem Benutzer Ihr Schlüssel gehört.Sie können den Eigentümer ändern:
Stellen Sie außerdem sicher:
.pem
Schlüssel, wenn Sie Linux verwenden (Putty ist anders)sudo chmod 400 mykey.pem
ssh -i mykey user@instanceip
quelle
Du kannst es versuchen
ODER fügen Sie in / etc / ssh / sshd_config die Eigenschaft hinzu / ändern Sie sie
quelle
ssh server -l user -o "PubkeyAuthentication=no"
gleichssh user@server -o "PubkeyAuthentication=no"
$ ssh [email protected] -i .vagrant / machines / default / virtualbox / private_key
Das hat bei mir funktioniert
quelle