Назад | Перейти на главную страницу

ssh аутентификация с открытым ключом

Я попытался настроить ssh для использования аутентификации с открытым ключом

Ссылка

/ etc / ssh / sshd_config имеет эти параметры.

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys

PasswordAuthentication yes

Но мне все еще предлагается ввести пароль. Если я использую

PasswordAuthentication no

Я не могу войти

Любое предложение?


Он работает, но только для пользователя root.

Моя проблема была в том, что у меня был этот параметр

PermitRootLogin нет.

Я могу войти в систему с ключами с пользователем root, если я использую

PermitRootLogin да.

В системе есть только каталог /root/.ssh и файл authorized_keys в этом каталоге

Как я могу добавить это другим пользователям, если в этой системе нет каталога home / $ USER / .ssh и файла authorized_keys для каждого пользователя?

Есть ли способ настроить для каждого пользователя? Мне понадобятся разные файлы authorized_keys для каждого пользователя.

Можно ли настроить под разные хосты, домены или IPS? похож на httpd.conf

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

И на клиенте, и на сервере ~/.ssh каталог должен принадлежать и быть доступным только вам:

chown -R $USER ~/.ssh
chmod u=rwX,g=,o= ~/.ssh

На клиенте закрытый ключ должен принадлежать и быть доступным только вам:

chmod u=rwX,g=,o= ~/.ssh/id_rsa

На сервере файл авторизованных ключей должен принадлежать и быть доступным только вам:

chmod u=rwX,g=,o= ~/.ssh/authorized_keys