OpenSSH_4.3p2 не может зайти на OpenSSH_5.8p1 по ключу

Bird_V

Есть клиент - SLC 5 c OpenSSH_4.3p2. Он пытается зайти на сервер (Ubuntu 11.04) с OpenSSH_5.8p1, авторизация public-key. Но сервер его ключ не признаёт ни в какую. Тот же самый ключ при заходе с Linux Mint 11 (OpenSSH_5.8p1) или через Putty (после конвертации) сервером принимается. Вопрос простой - WTF?

katrin2201

ssh -vvv ?

Bird_V


ssh -vvvv -l user yyy.yyy
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to yyy.yyy [yyy.yyy.yyy.yyy] port 22.
debug1: Connection established.
debug1: identity file /home/user/.ssh/identity type 0
debug3: Not a RSA1 key file /home/user/.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
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
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
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 /home/user/.ssh/id_rsa type 1
debug3: Not a RSA1 key file /home/user/.ssh/id_dsa.
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
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
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
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /home/user/.ssh/id_dsa type 2
debug1: loaded 3 keys
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debian-1ubuntu3
debug1: match: OpenSSH_5.8p1 Debian-1ubuntu3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.3
debug2: fd 3 setting O_NONBLOCK
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: 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-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,openssh.com,zlib
debug2: kex_parse_kexinit: none,openssh.com,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: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,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-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-openssh.com,hmac-ripemd160,hmac-openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-openssh.com,hmac-ripemd160,hmac-openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,openssh.com
debug2: kex_parse_kexinit: none,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-ctr hmac-md5 none
debug2: mac_init: found hmac-md5
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
debug2: dh_gen_key: priv key bits set: 122/256
debug2: bits set: 530/1024
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug3: check_host_in_hostfile: filename /home/user/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 16
debug3: check_host_in_hostfile: filename /home/user/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 16
debug1: Host 'yyy.yyy' is known and matc

evgen5555


debug1: Offering public key: /home/user/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey
debug1: Offering public key: /home/user/.ssh/id_dsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey

не нравятся ему ключи твои
пс.: указывать ключи желательно по имени (через -i вроде чтобы не было переборов и гаданий

Bird_V


Это я знал ещё до открытия темы. Ключ правильный - Linux Mint по нему входит.

evgen5555

ну дык все равно даже сама постановка проблемы не понятная, у тебя клиент находит два ключа, а ты говоришь про один

Bird_V

Забудь про id_dsa.

tokuchu

debug2: key_type_from_name: unknown key type '-----BEGIN' debug3: key_read: missing keytype
Тебе это странным не показалось? У тебя ключ в неправильной форме, возможно.
Можешь эти строчки полностью привести (заголовки, не сам ключ).

Bird_V

Это нормально, насколько я понимаю - это ssh пытается файл распознать как RSA Type 1.
Файл начинается так:

-----BEGIN RSA PRIVATE KEY-----

Файл оканчивается так:

-----END RSA PRIVATE KEY-----

tokuchu

Может всё-таки это не "Тот же самый ключ". :)
Можно ещё на сервере sshd с дебагом запустить и посмотреть.
Там была фишка, что ключи сгенерённые с дебиановским рандомом были включены в чёрный спискок в какое-то время, но тут просто сервер бы отверг или твой комп не предлагал бы их.

evgen5555

md5sum

kiracher

Покопался ради интереса на своих машинах. Наблюдаю практически такие же логи, но все работает.
1) Проблема не в ключе. Он считывается и предлагается для авторизации, дальше в логах это видно. Хотя в начале и идет куча ругани.
debug2: key: /home/user/.ssh/id_rsa (0x8005a438)
debug2: key: /home/user/.ssh/id_dsa (0x8005a450)
если бы ключ не считывался было бы типа
debug2: key: /home/user/.ssh/id_dsa nil
2) принципиальная разница в логах начинается вот тут:
debug1: Offering public key: /home/user/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
у меня дальше идет так:
debug1: Server accepts key: pkalg ssh-rsa blen 279
а у тебя - нет ответа от сервера. В случае если стучусь на другую машину, для которой этот ключ недействителен, то лог продолжается именно так же.
Вывод - копаться надо на серверной стороне - это ей не нравится переданный ключ, клиентская часть отрабатывает нормально.

evgen5555

Вот еще вспомнил, кстати
Если на серваке права к ~/.ssh/authorized_keys не 0700 (rwx------ то сервер ключ не примет, типа unsafe.

tata2410

Если на серваке права к ~/.ssh/authorized_keys не 0700 (rwx------ то сервер ключ не примет, типа unsafe.
Заведомо ложная, проверить же можно за минуту. Отказываться будет только при райт-записи на группу и выше.

sergey_m

На той стороне у тебя есть возможность прочитать public key? Он там не привязан к хосту?

evgen5555

проверить же можно за минуту
Тот, кому было можно это проверить за минуту, мог бы за пять минут посоветовать, как это правильно делается.
Однако же он не стал этого делать, а тупо искал пост, который можно было бы обговнять :)
Надо сказать, три недели ожидания дали свои плоды, лол.

Bird_V

У меня есть доступ к серверу, но не к клиенту. Как проверить привязанность к хосту? Если ключ создавался командой "ssh-keygen -t rsa" - он привязан?

sergey_m

Просто открой ключ в текстовом редакторе, всё сразу станет понятно.
Оставить комментарий
Имя или ник:
Комментарий: