ssh без пароля, не работающий

Я попытался установить пароль меньше ssh черно-белый A кому: B и B кому: A также. Сгенерированный использование с закрытым ключом и с открытым ключом ssh-keygen -trsa на обоих машины. Используемый ssh-copy-id утилита для копирования открытых ключей с A кому: B а также B кому: A.

ssh без пароля работает от A кому: B но not от B кому: A. Я проверил полномочия ~/ssh/папка, и, кажется, нормален.

A's .ssh полномочия папки:

-rw-------  1 root root 13530 2011-07-26 23:00 known_hosts
-rw-------  1 root root   403 2011-07-27 00:35 id_rsa.pub
-rw-------  1 root root  1675 2011-07-27 00:35 id_rsa
-rw-------  1 root root   799 2011-07-27 00:37 authorized_keys
drwxrwx--- 70 root root  4096 2011-07-27 00:37 ..
drwx------  2 root root  4096 2011-07-27 00:38 .

B's .ssh полномочия папки:

-rw------- 1 root root  884 2011-07-07 13:15 known_hosts
-rw-r--r-- 1 root root  396 2011-07-27 00:15 id_rsa.pub
-rw------- 1 root root 1675 2011-07-27 00:15 id_rsa
-rw------- 1 root root 2545 2011-07-27 00:36 authorized_keys
drwxr-xr-x 8 root root 4096 2011-07-06 19:44 ..
drwx------ 2 root root 4096 2011-07-27 00:15 .

A человечность 10.04 (OpenSSH_5.3p1 Debian-3ubuntu4, OpenSSL 0.9.8k 25 марта 2009) B debian машина (OpenSSH_5.1p1 Debian-5, OpenSSL 0.9.8 г 19 октября 2007)

От A:

#ssh B

хорошо работает.

От B:

#ssh -vvv A 
...
...
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /root/.ssh/identity ((nil))
debug2: key: /root/.ssh/id_rsa (0x7f1581f23a50)
debug2: key: /root/.ssh/id_dsa ((nil))
debug3: Wrote 64 bytes for a total of 1127
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,gssapi,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: Trying private key: /root/.ssh/identity
debug3: no such identity: /root/.ssh/identity
debug1: Offering public key: /root/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 368 bytes for a total of 1495
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /root/.ssh/id_dsa
debug3: no such identity: /root/.ssh/id_dsa
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
root@192.168.122.1's password: 

Который по существу означает, что это не аутентифицирует использование файла /root/id_rsa. Я работал ssh-add команда в обоих машины также.

Часть аутентификации /etc/ssh/sshd_config файл

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile     %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files

У меня заканчиваются идеи. Любая справка ценилась бы.

35
задан 27 July 2011 в 04:49

5 ответов

Просто удостоверьтесь, что Вы следовали за следующей процедурой:

На машине A

откройте терминал и введите команды следующим образом:

root@aneesh-pc:~# id

Только, чтобы удостовериться, что мы - корень.

Если вышеупомянутая команда произвела что-то как ниже, мы - корень, еще переключаются на корень с помощью su команда

uid=0(root) gid=0(root) groups=0(root)

1) Создайте ключи.

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:
49:7d:30:7d:67:db:58:51:42:75:78:9c:06:e1:0c:8d root@aneesh-pc
The key's randomart image is:
+--[ RSA 2048]----+
|          ooo+==B|
|         . E=.o+B|
|        . . .+.*o|
|       . . .  ...|
|        S        |
|                 |
|                 |
|                 |
|                 |
+-----------------+

Я не использовал пароля. При необходимости в том, можно использовать его.

2) Скопируйте открытый ключ в в машину B .ssh/authorized_keys файл

root@aneesh-pc:~# ssh-copy-id -i /root/.ssh/id_rsa.pub root@mylap
root@mylap's password: 

Теперь попытайтесь войти в машину, с ssh 'root@mylap', и регистрация:

~/.ssh/authorized_keys

для проверки мы не добавили дополнительные ключи, которые Вы не ожидали.

Замените mylap именем хоста или IP машины, в которую Вы хотите войти (т.е. машина B)

3) Войдите в B без пароля

root@aneesh-pc:~# ssh root@mylap
Warning: Permanently added 'mylap,192.168.1.200' (RSA) to the list of known hosts.
Welcome to Ubuntu 11.04 (GNU/Linux 2.6.38-8-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

Last login: Wed Jul 27 15:23:58 2011 from streaming-desktop.local
aneesh@mylap:~$

На машине B

4) Создайте ключи для входа в систему назад в Машину A

root@mylap:~# 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:
35:9f:e7:81:ed:02:f9:fd:ad:ef:08:c6:4e:19:76:b1 root@streaming-desktop
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|          o   .  |
|         . + + o |
|        S o * E  |
|           = O . |
|            O +  |
|           + o o.|
|            . o+=|
+-----------------+

5) Скопируйте открытый ключ в в машину A .ssh/authorized_keys файл

root@mylap:~# ssh-copy-id -i /root/.ssh/id_rsa.pub root@aneesh-pc
Warning: Permanently added 'aneesh-pc,192.168.1.20' (RSA) to the list of known hosts.
root@aneesh-pc's password: 

Теперь попытайтесь войти в машину, с ssh 'root@aneesh-pc', и регистрация:

.ssh/authorized_keys

для проверки мы не добавили дополнительные ключи, которые Вы не ожидали.

6) Войдите в без пароля

ssh root@aneesh-pc
Warning: Permanently added 'aneesh-pc,192.168.1.20' (RSA) to the list of known hosts.
Welcome to Ubuntu 11.04 (GNU/Linux 2.6.38-8-generic x86_64)

 * Documentation:  https://help.ubuntu.com/


Last login: Tue Jul 26 18:52:55 2011 from 192.168.1.116

Если Вы можете завершить эти шаги, Вы сделаны. Теперь у Вас есть две машины с ssh-ключом включенный вход в систему (открытого ключа).

24
ответ дан 23 November 2019 в 00:22

Вы используете корневую учетную запись на каждой машине? Обычно на Ubuntu Вы использовали бы учетную запись пользователя и дали бы ей sudo полномочия как требуется.

Если Ваше использование не пользователь root sudo chown $USER -R ~/.ssh может решить Вашу проблему

Другие вещи проверить:

проверьте тот B дважды id_rsa.pub находится в A authorized_keys.

проверьте A /etc/ssh/sshd_config содержит

PermitRootLogin yes
RSAAuthentication yes
PubkeyAuthentication yes
2
ответ дан 23 November 2019 в 00:22

После установки пароля меньше ssh, меня все еще попросили моего пароля пользователя. Взгляд на /var/log/auth.log на удаленной машине указал на проблему:

sshd[4215]: Authentication refused: bad ownership or modes for directory /home/<user>

Так, удостоверьтесь, что имели его правильный:

chmod o-w ~/
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Запрещая другим пользователям переписать Ваш .ssh папка очевидна, имение того же требования для Вашей домашней папки было более хитрым.

Кроме того, проверьте /etc/ssh/ssd_config гарантировать это RSAAuthentication и PubkeyAuthentication опции не отключены. Значение по умолчанию yes так, чтобы не должна была быть проблема.

44
ответ дан 23 November 2019 в 00:22

Вероятно, просто высокоуровневая проблема полномочий. Необходимо удалить полномочия записи из группы и другого к корневому каталогу и .ssh каталогу. Для фиксации этих полномочий работать chmod 755 ~ ~/.ssh или chmod go-w ~ ~/.ssh.

Если Вы все еще имеете проблемы, выпускаете следующий grep на Вашем журнале:

sudo egrep -i 'ssh.*LOCAL_USER_NAME' /var/log/secure

(замена LOCAL_USER_NAME с Вашим локальным пользователем называют...),

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

ИМЯ ХОСТА SSHD [1317] ДАТЫ: Аутентификации отказывают: плохое владение или режимы для каталога,/path/to/some/directory

Это - проблема, описанная выше, и необходимо найти рассматриваемый каталог и удалить полномочия записи из группы и другого.

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

TLDNR: Разрешение доступа для записи для группы и/или другого к Вашему корневому каталогу сделает вход в систему пароля силы ssh.

14
ответ дан 23 November 2019 в 00:22

в/etc/ssh/sshd_config на целевом изменении

PermitRootLogin нет

кому:

PermitRootLogin да

затем уничтожьте - ПОНУКАЮТ Ваш sshd PID:

root@dzone2 # PS-ef|grep ssh базируется 28075 27576 0 17 ноября? 6:11/usr/lib/ssh/sshd

root 17708 20618   0 10:09:30 pts/37      0:00 grep ssh root@dzone2 # kill -HUP 28075 root@dzone2 # ps -ef|grep ssh
root 17861 20618   0 10:09:44 pts/37      0:00 grep ssh
root 17852 27576   0 10:09:42 ?           0:00 /usr/lib/ssh/sshd
-3
ответ дан 23 November 2019 в 00:22

Другие вопросы по тегам:

Похожие вопросы: