LINUX.ORG.RU

Дать SSH-ключи другому пользователю


0

1

Имеется сервер, который принимает для аунтефикации только SSH publickey. На моей машине из-под моего пользователя всё работает. Мне надо скопировать эти ключи другому пользователю (root) на этой же машине, чтобы можно было подключаться к SSH и с него. Простое копирование (и, разумеется, смена владельца) не помогает - не авторизуется.

P.S.: Лучше бы поле «Метки» сделали после «Заглавие», а то уже который раз нечаянно пишу заголовок не туда, хорошо что он слишком большой и постинг валится с ошибкой «заголовок сообщения не может быть пустым Слишком длиный тег: 'дать ssh-ключи другому пользователю' (максимум 25 символов)»

★★★★★
Ответ на: комментарий от ukr_unix_user

Кхм... ну как бы добавлен... авторизация из-под моего пользователя нормально проходит.

Так нормально:

[kiv@kiv-desktop ~]$ ssh root@kiv.dyndns.org

А вот так нет:

[root@kiv-desktop ~]# ssh root@kiv.dyndns.org
Permission denied (publickey).

Содержимое каталогов .ssh у root и у kiv одинаково.

KivApple ★★★★★
() автор топика
Ответ на: комментарий от maxcom
OpenSSH_6.0p1, OpenSSL 1.0.1b 26 Apr 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to kiv.dyndns.org [176.100.71.104] port 22.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/.ssh/id_rsa type 1
debug1: identity file /root/.ssh/id_rsa-cert type -1
debug1: identity file /root/.ssh/id_dsa type -1
debug1: identity file /root/.ssh/id_dsa-cert type -1
debug1: identity file /root/.ssh/id_ecdsa type -1
debug1: identity file /root/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0
debug1: match: OpenSSH_6.0 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0
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: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA e0:ae:4a:e2:f9:c9:7e:9c:4c:a8:87:b4:e6:09:2b:8c
debug1: Host 'kiv.dyndns.org' is known and matches the ECDSA host key.
debug1: Found key in /root/.ssh/known_hosts:1
debug1: ssh_ecdsa_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
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /root/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /root/.ssh/id_dsa
debug1: Trying private key: /root/.ssh/id_ecdsa
debug1: No more authentication methods to try.
Permission denied (publickey).
KivApple ★★★★★
() автор топика

Простое копирование (и, разумеется, смена владельца) не помогает

chmod ещё нужен.

ukr_unix_user ★★★★
()
Ответ на: комментарий от KivApple

Мистика)

Тогда еще разочек, но уже из под рута ssh-keygen -t rsa , потом ssh-copy-id root@kiv.dyndns.org. Оставить «StrictModes no». Ну и " sudo service ssh restart" + перед этим снести папку .ssh

Woklex
()
Ответ на: комментарий от Woklex

Ну так то получилось... просто хотел использовать один и тот же ключ. На Android просто скопировать ключ и использовать в ConnectBot получилось, новый генерировать не пришлось.

KivApple ★★★★★
() автор топика
Ответ на: комментарий от KivApple

Можно с одним, но я предлагаю не заморачиватся,)) Думаю что у тебя домашняя локалка,)

Woklex
()
Ответ на: комментарий от KivApple

Указал ConnectBot (на Android) файл ключа + хост сервера. И больше у меня он ничего не спрашивая логинится минуя все пароли.

KivApple ★★★★★
() автор топика
Ответ на: комментарий от KivApple

Нет, мне это поведение нравится и я так и хочу, однако при этом просить дать ключ достаточно странно)

KivApple ★★★★★
() автор топика
Ответ на: комментарий от KivApple

Ssh использует приватный ключ и публичный. Если скопировать в ConnectBot публичный, то ничего не произойдет. А если приватный, то да он будет конектить без пароля(приватный это «id_rsa»)

p.s. Если теперь все работает, и из конфига не убрано «StrictModes no», советую убрать.

Woklex
()
Ответ на: комментарий от KivApple

Насколько я понимаю любой, кто имеет publickey сможет залогинится на сервер без ввода пароля.

наоборот: любой, кто имеет пабликкей может поднять поддельный сервак, на котором залогинется владелец секретного ключа, без регистрации и смс. Правда с предупреждением, что fingerprint не те.

drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.