Як зробити роботу з входом без пароля


12

Я згенерував ключ і скопіював його до своєї цілі:

ssh-keygen
ssh-copy-id username@hostname

Я залишив розташування ключа за замовчуванням і не встановив жодної фрази.

Невеликий час після цього я зміг, ssh username@hostnameне запросивши пароль, а потім він чомусь перестав працювати.


2
Дивіться unix.stackexchange.com/tags/ssh/info… Давайте зробимо це довідковим питанням, яким ми можемо закрити інших як дублікат.
Жил 'ТАК - перестань бути злим'

Відповіді:


8

Якщо автентифікація відкритих ключів не працює: переконайтеся, що на стороні сервера домашній каталог ( ~), ~/.sshкаталог та ~/.ssh/authorized_keysфайл можуть бути записані лише їх власником . Зокрема, жодна з них не повинна бути доступною для запису групою (навіть якщо користувач один у групі). chmod 755або chmod 700все в порядку, chmod 770ні.

Що перевірити, коли щось не так:

  • Запустіть, ssh -vvvщоб побачити багато результатів налагодження. Якщо ви публікуєте запитання, чому ви не можете з'єднатися з ssh, включіть цей вихід (ви можете анонімізувати імена хостів та користувачів).
  • Якщо ви можете, перевірте журнали сервера, як правило, у тому /var/log/daemon.logчи /var/log/auth.logіншому подібному.
  • Якщо автентифікація відкритого ключа не працює, ще раз перевірте дозволи, особливо біт групи (див. Вище).

Привіт, чому authorized_keysгрупа не повинна писати текст? SSH відхиляє це через проблеми безпеки?
Гей,

1
@YdobEmos Кожен, хто може написати, authorized_keysможе додати там свій власний ключ і таким чином увійти до акаунта. Тому повинен бути дозволений лише користувач. (Наявність файлу для запису файлів насправді безпечно, якщо в цій групі немає жодного іншого користувача, але це важко достовірно визначити, коли членство в групі може надходити з мережевих баз даних.)
Жил "SO-перестань бути злим"

1

Домашній каталог цілі був 755 drwxr-xr-x. Змінивши його для запису на групу, було порушено 775 drwxrwxr-xналаштування без пароля.


Та ж проблема її ще не вирішила.

Ви маєте на увазі, що не можете отримати роботу з входом без паролів, навіть зробивши групу директорій доступними для запису?
thepang

ТАК - див. Unix.stackexchange.com/q/208152/11085 , CentOS 7 64-розрядний файл , де я намагаюся увійти за допомогою своїх ключів id_rsa, але його завжди не вдається.

0

Переконавшись у правильності дозволів, повторіть ключі, він все ще не працює.

Тоді я натрапив на це, чого раніше не робив і не бачив, щоб хтось згадував.

Неможливо використовувати -o enable_other із sshfs (параметр увімкнено у fuse.conf)

Після включення я запускав свої команди sshfs без судо, і все це спрацювало чудово.


0

Припустимо, RHEL / CentOS, і якщо ви маєте доступ адміністратора до віддаленого сервера, на який користувач newuserхоче ssh.

Отримайте newuser'sіснуючі id_rsa.pubта готові.

Виконайте дії:

useradd newuser
mkdir /home/newuser/.ssh
vi /home/newuser/.ssh/authorized_keys
# copy newuser's id_rsa.pub into authorized_keys and save
chmod 640 /home/newuser/.ssh/authorized_keys
chmod 700 /home/newuser/.ssh/
chmod 700 /home/newuser/
chown newuser:newuser -R /home/newuser/

Є newuserспроби входу в систему .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.