4

На машине с Ubuntu я сделал следующее:

~$ sudo su -
[sudo] password for jamie:
root@mydomain:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
12:34:56:78:9a:bc:de:f0:12:34:56:78:9a:bc:de:f0 root@mydomain.ca
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|                 |
|                 |
|                 |
|                 |
|                 |
|                 |
+-----------------+
root@mydomain:~# cat /root/.ssh/id_rsa.pub | ssh -p 443 jamie@remote.server.box 'cat > ~/.ssh/authorized_keys'
jamie@remote.server.box's password:
root@mydomain:~# ssh jamie@remote.server.box
jamie@remote.server.box's password:

Он просит у меня пароль.

Однако, используя обычный аккаунт, работает следующее:

$ cd ; ssh-keygen -t rsa ; cat ~/.ssh/id_rsa.pub | ssh jamie@remote.server.box 'cat >> ~/.ssh/authorized_keys'
$ ssh jamie@remote.server.box
Last login: Thu Oct 24 14:48:41 2013 from 173.45.232.105
[jamie@remote.server.box ~]$ 

Что заставляет меня верить, что это не проблема authorized_keys против authorized_keys2 или разрешений.

Почему учетная запись «root», обращающаяся к удаленной учетной записи «jamie», не работает?

Удаленная машина - CentOS, если это актуально.

2 ответа2

2

Ответ был найден здесь: https://askubuntu.com/a/90465/14447

Вероятно, следует отметить этот вопрос как дубликат одного и того же.

1

Попробуйте запустить ssh в подробном режиме. Я считаю, что это часто дает ключ к пониманию того, что происходит.

Проверьте безопасность каталогов вплоть до .ssh на целевой машине. Если какие-либо каталоги доступны для записи по всему миру или группе, это может привести к тому, что ssh откажется получить доступ к вашему файлу авторизованных ключей. Я считаю, что каталог .ssh не должен быть доступен ни группе, ни миру.

Попробуйте создать файл ключей на пульте дистанционного управления и добавить открытый ключ в файл авторизованные_ключи. Сначала ssh localhost , а затем попробуйте удаленный доступ.

Вы можете настроить файл .ssh/config в корневом каталоге, чтобы добавить пользователя для вас. Примерно так должно работать:

host remote
    hostname remote.server.box
    user=jamie

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .