Мне нужно настроить ssh-сессии между двумя серверами, и я не хочу, чтобы скрипт каждый раз вводил имя пользователя и пароль.
Однако я не могу выяснить, откуда SSH-сервер использует его конфигурацию.
bash-2.05# ssh -V
Sun_SSH_1.1, SSH protocols 1.5/2.0, OpenSSL 0x0090700f
У меня есть файлы сертификатов в / etc / ssh / и ~ / .ssh /. Я могу найти только один файл конфигурации для SSH, и он находится в / etc / ssh / ssh_config, но он не содержит данных (все закомментировано).
Кто-нибудь знает, как я могу узнать, где хранится сертификат, или как я могу экспортировать его, чтобы я мог перенести его на другой сервер? Я надеялся, что файлы конфигурации дадут мне ответ, но они мало что помогают.
источник
Вам нужно найти открытый ключ ssh для пользователя, который будет входить в систему для сценария.
Например, если у меня есть serverA и serverB, я бы сделал следующее.
затем сделать что-то похожее на ServerB
Затем на сервере A выведите открытый ключ пользователя scriptBunner serverB в
/home/scriptrunner/.ssh/authorized_keys
и сделайте обратное на сервере В (используя пользователя scriptRunner на сервере А в ключе authorized_keys
/home/scriptrunner/.ssh/authorized_keys
на сервере В)Тогда вы должны быть в состоянии сделать
ssh scriptrunner@serverA
с сервера B с помощью ключа, и наоборот.Вы также можете использовать
ssh-copy-id
бит авторизованного ключа.источник
Чтобы установить соединение ssh с аутентификацией с открытым ключом, пользователь, который инициирует соединение, должен иметь пару открытый / закрытый ключ. Во многих дистрибутивах Linux эти ключи не генерируются по умолчанию и должны генерироваться самим пользователем (или администратором от его имени).
Если вы вошли в систему как соответствующий пользователь, перейдите в свой домашний каталог и запустите
Примите все значения по умолчанию, и новая пара ключей будет создана в ~ / .ssh / id_rsa и ~ / .ssh / id_rsa.pub. Теперь скопируйте открытый ключ и вставьте его в файл ~ / .ssh / authorized_keys целевой учетной записи пользователя на целевом компьютере. Затем включите аутентификацию с открытым ключом на целевой машине (в / etc / ssh / sshd_config), и все будет хорошо.
ПРИМЕЧАНИЕ : в этом процессе есть много возможных подводных камней, когда вы делаете это впервые. Все разрешения должны быть правильными, а файлы должны быть в нужных местах. Вероятно, будет лучше, если вы будете следовать HowTo, как этот .
источник