Иногда возникает необходимость отказаться от использования паролей при подключении по SSH.
Например при работе скрипта нужно подключиться к удаленной машине и выполнить на ней что-то или скачать от туда какой то файл.
SSH имеет встроенную проверку пользователей с использованием ключей. Работает это следующим образом.
На ПК-клиенте находясь в той учетной записи из под которой предполагается подключение к удаленному серверу генерируем пару ssh ключей командой:
$ ssh-keygen
И закидываем открытый ключ на удаленный сервер командой:
$ ssh-copy-id username@remote_host
username - учетная запись удаленного сервера в которую нам нужно залогиниться
remote-host - адрес удаленного сервера
При выполнении этой команды удаленная система попросит нас авторизоваться по-старинке паролем. При следующем логине все призойдет прозрачно, без ввода проля, по ключу.