PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : probleme mit Automatische Anmeldung ssh



thebrain05
18.03.08, 16:40
Hallo zusammen,
ich möchte mich gerne an einen Server über Schlüssel anmelden. leider geht das nicht.
Ich habe auf dem server keine root rechte, sondern nur einen normalen user. welcher aber reicht für die befehle die ich brauche.
Jetzte möchte ich mich aber nicht immer mit pw anmelden und habe mit ssh-keygen -t rsa einen schlüssel erstellt.
Diesen habe ich dann mit ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip auf den anderen Rechner kopiert. Leider geht es immer noch nicht. auf dem entfernten rechner ist der schlüssel richtig eingetragen.

das ist das logfile beim anmelden.


OpenSSH_4.6p1 Debian-5ubuntu0.1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /home/user/.ssh/config
debug1: Applying options for tng
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to xxxxxx [xxxxxxxx] port 22.
debug1: Connection established.
debug1: identity file /home/user/.ssh/identity type -1
debug1: identity file /home/user/.ssh/id_rsa type 1
debug1: identity file /home/user/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.6p1 Debian-5
debug1: match: OpenSSH_4.6p1 Debian-5 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6p1 Debian-5ubuntu0.1
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 'xxxxxxxxxxx' is known and matches the RSA host key.
debug1: Found key in /home/user/.ssh/known_hosts:11
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,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/user/.ssh/identity
debug1: Offering public key: /home/user/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /home/user/.ssh/id_dsa
debug1: Next authentication method: password


kann mir vielleicht wer helfen oder mir sagen was ich falsch mache.

mkahle
18.03.08, 17:20
Du mußt den Schlüssel in die Datei ~/.ssh/authorized_keys (für SSH1 Keys) oder ~/.ssh/authorized_keys 2 (für SSH1 Keys) reinkopieren ...

cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys2

thebrain05
19.03.08, 12:29
Das funktioniert leider auch nicht.

P17
19.03.08, 12:58
SSH neu gestartet?

drcux
19.03.08, 13:04
wie sieht denn das .ssh auf dem Server aus?

ls -al ~/.ssh

marce
19.03.08, 14:17
Jetzte möchte ich mich aber nicht immer mit pw anmelden und habe mit ssh-keygen -t rsa einen schlüssel erstellt.
Diesen habe ich dann mit ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip auf den anderen Rechner kopiert. Leider geht es immer noch nicht. auf dem entfernten rechner ist der schlüssel richtig eingetragen.
Was hast Du wo erstellt und wohin kopiert?

Den Key musst Du auf deinem PC erstellen (ssh-keygen) und dann mit ssh-copy-id auf den Server kopieren.

thebrain05
19.03.08, 15:48
das habe ich doch gemacht. auf meinen rechner erstellt und dann dort hin kopiert. das ist ja auch klar.

das Komando gibt bei mir das aus


-rw------- 1 root root 883 Mar 18 14:53 id_rsa
-rw-r--r-- 1 root root 226 Mar 18 14:53 id_rsa.pub
-rw-r--r-- 1 root root 3901 Feb 28 09:54 known_hosts


und auf dem entfernten:


-rw-r--r-- 1 whiteboxx whiteboxx 226 2008-03-19 15:04 authorized_keys
-rw-r--r-- 1 whiteboxx whiteboxx 226 2008-03-19 11:47 authorized_keys2
-rw-r--r-- 1 whiteboxx whiteboxx 1964 2008-02-18 10:11 known_hosts

marce
19.03.08, 16:22
das habe ich doch gemacht. auf meinen rechner erstellt und dann dort hin kopiert. das ist ja auch klar.
ok, wunderbar - wollte nur noch mal nachfragen - wenn Leute mal von Rechner, Client, Server reden und dann die Bezeichnungen nicht konsequent durchgezogen werden kann das durchaus mal zu Missverständnissen führen.



das Komando gibt bei mir das aus


-rw------- 1 root root 883 Mar 18 14:53 id_rsa
-rw-r--r-- 1 root root 226 Mar 18 14:53 id_rsa.pub
-rw-r--r-- 1 root root 3901 Feb 28 09:54 known_hosts


und auf dem entfernten:


-rw-r--r-- 1 whiteboxx whiteboxx 226 2008-03-19 15:04 authorized_keys
-rw-r--r-- 1 whiteboxx whiteboxx 226 2008-03-19 11:47 authorized_keys2
-rw-r--r-- 1 whiteboxx whiteboxx 1964 2008-02-18 10:11 known_hosts

Setz auf dem Server die auth*-Files mal auf 600 - bei allen anderen chmods lässt der sshd Dich vermutlich nicht rein (je nach Konfig)

thebrain05
19.03.08, 16:45
Habe ich gemacht, leider keinen Erfolg.

Ne weil ich keine Rootrecht habe. nur einen normalen User.
Das muss doch irgendwie gehen.

marce
19.03.08, 17:32
hm, hier funktioniert Dein Vorgehen problemlos...

lösche doch noch mal komplett die Dateien und mache es komplett neu. Und frag vorher mal den Admin des Servers, ob PubKey-Auth überhaupt zugelassen ist...

rudi_m
22.03.08, 10:48
Und frag vorher mal den Admin des Servers, ob PubKey-Auth überhaupt zugelassen ist...

einfach mal mit "ssh -v" anmelden, dann sollten die angebotenen authentication verfahren angezeigt werden:

[...]
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering public key: /home/rudi/.ssh/id_rsa
[...]

edit: sry, ich sehe gerade, dass du das ja schon gemacht hattest...
Aber versuche doch mal "ssh -vvv" dann gibts vlt den Grund warum er deinen private key nicht will.

thebrain05
26.03.08, 15:40
ok habe ich mal gemacht



OpenSSH_3.8.1p1 Debian-8.sarge.4, OpenSSL 0.9.7e 25 Oct 2004
debug1: Reading configuration data /etc/ssh/ssh_config
debug2: ssh_connect: needpriv 0
debug1: Connecting to xxxxxxx [xxxxxxxx] port 22.
debug1: Connection established.
debug3: Not a RSA1 key file /root/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /root/.ssh/id_rsa type 1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.6p1 Debian-5
debug1: match: OpenSSH_4.6p1 Debian-5 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.8.1p1 Debian-8.sarge.4
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,zlib
debug2: kex_parse_kexinit: none,zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,zlib@openssh.com
debug2: kex_parse_kexinit: none,zlib@openssh.com
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: mac_init: found hmac-md5
debug1: kex: server->client aes128-cbc hmac-md5 none
debug2: mac_init: found hmac-md5
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
debug2: dh_gen_key: priv key bits set: 135/256
debug2: bits set: 494/1024
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug3: check_host_in_hostfile: filename /root/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 14
debug1: Host 'xxxxxxxxxxxxx' is known and matches the RSA host key.
debug1: Found key in /root/.ssh/known_hosts:14
debug2: bits set: 509/1024
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /root/.ssh/id_rsa (0x808c110)
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /root/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password

rudi_m
27.03.08, 01:56
Ich glaube das hier sind die entscheidenden Zeilen:

debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug2: we did not send a packet, disable method
nicht sehr hilfreich - mehr kann man vlt erfahren wenn man den ssh server auch im debug mode statet, siehe
http://mysecondhead.blogspot.com/2006/02/openssh-headache.html

Es koennte z.B. daran liegen, dass dein key (oder auch nur dein user home!) zu viele Rechte fuer andere hat. So wie bei ihm hier:
http://www.linuxforen.de/forums/showthread.php?p=1623660

thebrain05
27.03.08, 11:28
Ich habe es gelöst.

es lag einfach nur daran das die Gruppe auf das Verzeichnis schreibrechte hatte. Ist wohl ein Schutz von ssh. Und der User ist alleine in der Gruppe. Also schreibrechte entfernen und schon geht es.

marce
27.03.08, 11:32
wie sieht denn das .ssh auf dem Server aus?

ls -al ~/.ssh
hm, hättest Du die Ausgabe des Befehls kompett gepostet hätten wir das wohl früher hinbekommen...