Соединение SSH Keypaired требует пароля на начальном соединении

У меня были соединенные ключом логины, "работающие" над моими серверами некоторое время теперь, однако у одного из них всегда были проблемы, и он наконец перешел к сути дела, где он вмешивается в определенные задачи.

Ситуация:

Хостом является мой ПК, который я использую для ssh к серверам. Server1 был настроен сначала и имеет работу ssh установка аутентификации с открытым ключом. Server2 был настроен после Server1 и имел проблемы входа в систему от запуска. То же имя пользователя используется для всех трех. Все три компьютера зашифровали корневые каталоги.

Проблема:

Когда Вы пытаетесь к SSH в Server2 от Хоста, после того, как Хост был перезагружен/перезапущен, Вам предложат пароль, если Вы введете пароль и продолжите, то Вы сможете к ssh без любых проблем, пока Хост не перезагружает. После любой перезагрузки необходимо будет повторно ввести пароль.

Этого можно иногда избегать если Вы ssh с -vvv тег. При этом условии Вы не должны вводить пароль на первом входе в систему, но все последующие попытки SSH требуют пароля.

Тестирование:

Я использовал: ssh -o PreferredAuthentications=publickey Server2 протестировать возможность соединения с помощью доступа с открытым ключом только между Хостом и Server2. Я буду использовать результаты их, тестируют, а не -vvv выходные тесты, так как это короче. Я выдержал сравнение -vvv вывод sshing к Server2 и функционированию Server1 и единственная noticable область расхождения находится в следующей области:

Для Server1:

debug1: Offering RSA 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

Для Server2:

debug1: Offering RSA 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,password

Хост ~/.ssh/id_rsa.pub содержание соответствует Server2 ~/.ssh/authorized_keys файл.

ssh_config и sshd_config файлы идентичны между Server1 и 2.

Содержание и полномочия ~/.ssh на Server2:

total 56
drwx------ 2 USER USER 4096 Jul  1 17:59 .
drwx------ 6 USER USER 4096 Jun 30 11:50 ..
-rw------- 1 USER USER  391 Apr 28 17:31 authorized_keys
-rw------- 1 USER USER 1679 Jun 30 14:51 id_rsa
-rw-r--r-- 1 USER USER  394 Jun 30 14:51 id_rsa.pub
-rw-r--r-- 1 USER USER  442 Jun 30 10:32 known_hosts

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

Результаты/usr/sbin/sshd-d на Server2:

debug1: sshd version OpenSSH_7.2, OpenSSL 1.0.2g  1 Mar 2016
debug1: key_load_private: Permission denied
Could not load host key: /etc/ssh/ssh_host_rsa_key
debug1: key_load_private: Permission denied
Could not load host key: /etc/ssh/ssh_host_dsa_key
debug1: key_load_private: Permission denied
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
debug1: key_load_private: Permission denied
Could not load host key: /etc/ssh/ssh_host_ed25519_key
debug1: setgroups() failed: Operation not permitted
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-d'
debug1: Set /proc/self/oom_score_adj from 0 to -1000
debug1: Bind to port 22 on 0.0.0.0.
Bind to port 22 on 0.0.0.0 failed: Permission denied.
debug1: Bind to port 22 on ::.
Bind to port 22 on :: failed: Permission denied.
Cannot bind any address.

Это идентично выводу для Server1.

Результаты тестового использования ssh -o PreferredAuthentications=publickey Server2 следующие:

Неудавшийся вход в систему: Permission denied (publickey,password)

  • После перезагрузки хоста
  • После катастрофических отказов терминала хоста
  • После установления a -vvv соединение SSH
  • После перезапуска ssh сервиса (только иногда работает),

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

Попытки решения:

Зашифрованное обходное решение корневого каталога. Неудавшийся. Пользователь смог к ssh в, не обеспечивая пароль, однако сессия потребовала, чтобы корневой каталог был не зашифрован (которого Server1 не требует), и .profile и связанные файлы правильно не использовались.

Как я позволяю этому серверу принимать соединенные ключом ssh сессии? Это должна быть установка, идентичная Server1 в отношении ssh сервиса. Я просматривал журналы и выводы некоторое время теперь поэтому, возможно, новая пара глаз может определить что-то, что я пропустил.

Править: Теперь первый вход в систему после перезагрузки машины успешен, но последующая попытка входа в систему требует пароля. Если пароль будет обеспечен на второй попытке, то весь после попыток будет работать.

0
задан 2 July 2017 в 17:55

1 ответ

Из-за Вашего зашифрованного дома необходимо изменить sshd_config от Server2 как это:

Набор

AuthorizedKeysFile    /etc/ssh/%u/authorized_keys

И подвергнутый Ваш authorized_keys файл/etc/ssh/USERNAME/

Когда Вы хотите это только быть допустимыми для специального пользователя, чем можно объединить его с Соответствием как это:

Match User myuser
  AuthorizedKeysFile    /etc/ssh/my_authorized_keys

Одно примечание оставлено: Ваш корневой каталог не дешифрован без пароля. Надежда это помогает ;-) Но Ваш pam модуль должен запросить Вас для пароля.

1
ответ дан 3 November 2019 в 00:24

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

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