Подключаемся к SSH по ключу из скрипта.
Для автоматизированного подключения к серверам и выполнения различных действий, фиксирования какой-либо статистики полезно использовать доступ к SSH по ключу.
Заходим под пользователем от которого будет выполняться скрипт с доступом к ssh на сервере:
# su wwwtemp |
Генерируем ключ для удаленного доступа. На запросы пароля просто нажимаем Enter если не хотим вводить его при подключении:
# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/var/www/temp/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /var/www/temp/.ssh/id_rsa. Your public key has been saved in /var/www/temp/.ssh/id_rsa.pub. |
Для генерации ключа в программе Putty можно сделать так:
$ puttygen -t rsa -b 4096 -o sample |
Содержимое файла
# cat /var/www/aido/.ssh/id_rsa.pub |
надо будет скопировать в файл домашней папки на удаленном сервере.
На удаленном сервере создаем пользователя под котором будет осуществляться вход по SSH:
# useradd -m remote |
Вставляем в файл удаленного сервера
/home/remote/.ssh/authorized_keys |
строки из файла
/var/www/aido/.ssh/id_rsa.pub |
На удаленном сервер проверяем настройки SSH:
# cat /etc/ssh/ssh_config | grep Auth RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys |
Проверяем SSH подключения по ключу без пароля:
# ssh 192.168.1.1 pwd /home/remote |
В данном случае — все работает.