Ubuntu не загружается с моего ручного привода

По умолчанию ssh ищет файлы id_dsa и id_rsa. Ключи не обязательно должны быть названы так, вы также можете назвать его mykey или даже поместить в другой каталог. Однако, если вы выполните одно из этих действий, вам нужно явно ссылаться на ключ в команде ssh следующим образом:

ssh user@server -i /path/to/mykey

Если команда не принимает -i, например. sshfs, используйте параметр IdentityFile:

sshfs -o IdentityFile=/path/to/mykey user@host:/path/on/remote /mountpoint

Как это работает

При генерации ключа вы получите два файла: id_rsa (закрытый ключ) и id_rsa.pub (открытый ключ). Как показывают их имена, секретный ключ должен храниться в секрете, а публичный ключ может публиковаться публично.

Аутентификация с открытым ключом работает с открытым и закрытым ключом. У клиента и сервера есть свои ключи. При установке openssh-server открытые и закрытые ключи сервера генерируются автоматически. Для клиента вам придется сделать это самостоятельно.

Когда вы (клиент) подключаетесь к серверу, обмениваются открытыми ключами. Вы получите серверы один, а сервер ваш. При первом получении открытого ключа сервера вас попросят принять его. Если этот открытый ключ изменится с течением времени, вы будете предупреждены, потому что происходит возможная атака MITM (Человек в середине), перехватывая трафик между клиентом и сервером.

Сервер проверяет, вам разрешено подключаться (определено в /etc/ssh/sshd_config), и если ваш открытый ключ указан в файле ~/.ssh/authorized_keys. Возможные причины отказа публичного ключа:

/etc/ssh/sshd_config: указывается AllowUsers или AllowGroups, но ваш пользователь не указан в списке групп или пользователей (по умолчанию не определен, ограничение доступа к пользователям или группам). DenyUsers или DenyGroups, и вы находитесь в списке пользователей или групп. Вы пытаетесь войти в систему как root, но PermitRootLogin установлено в No (по умолчанию yes). PubkeyAuthentication установлен на No (по умолчанию yes). AuthorizedKeysFile устанавливается в другое место, а открытые ключи не добавляются в этот файл (по умолчанию .ssh/authorized_keys, по отношению к домашнему директорию) ~/.ssh/authorized_keys: ваш открытый ключ не добавляется в этот файл (обратите внимание, что этот файл читайте как пользователь root)

Использование нескольких клавиш

Нередко используется несколько клавиш. Вместо ssh user@host -i /path/to/identity_file вы можете использовать файл конфигурации ~/.ssh/config.

Общие настройки - это IdentityFile (ключи) и порт. Следующая конфигурация будет проверять «id_dsa» и «bender» только при соединении с ssh youruser@yourhost:

Host yourhost
   IdentityFile ~/.ssh/id_dsa
   IdentityFile ~/.ssh/bender

Если вы опустите Host yourhost, настройки будут применяться ко всем соединениям SSH. Другие параметры также могут быть указаны для этого совпадения с хостом, например User youruser, Port 2222 и т. Д. Это позволит вам соединить стенографию ssh yourhost вместо ssh -p2222 youruser@yourhost -i ~/.ssh/id_dsa -i ~/.ssh/bender.

1
задан 13 April 2017 в 15:24

0 ответов

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

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