Проблема
Каждый раз приходится вводить логин и пароль при подключении к серверу по SSH?
В этой статье описан процесс настройки подключения без ввода пароля.
Исследование
В интернете есть много разных статей по этой теме. Остаётся найти верную информацию, и в дальнейшем использовать
- Немного о SSH: https://ru.wikipedia.org/wiki/SSH
- Статья на Хабре: https://habrahabr.ru/post/331348/#t6
- Хорошая статья: Генерация открытого SSH ключа
- Лучшая статья: https://www.ssh.com/ssh/copy-id
Создание ключа
Мой сервер находится на хостинге HTS.
На своем компьютере создаём для него ключ. Вводим команду в консоле:
ssh-keygen -t rsa
> cd ~
> ls -l .ssh/hts*
Вывод выглядит примерно так:
hts_rsa
hts_rsa.pub
Копируем ключ на сервер HTS:
> ssh-copy-id -i ~/.ssh/hts_rsa.pub login@host
Подключаемся к серверу с помощью нашего ключа:
> ssh -i ~/.ssh/hts_rsa login@host
На своем компьютере создаём для него ключ. Вводим команду в консоле:
ssh-keygen -t rsa
Даём ключу название hts_rsa. Будет сгенерировано два файла, которые находятся в папке .ssh. Чтобы посмотреть эти файлы, выполните команду:
> cd ~
> ls -l .ssh/hts*
Вывод выглядит примерно так:
hts_rsa
hts_rsa.pub
Копируем ключ на сервер HTS:
> ssh-copy-id -i ~/.ssh/hts_rsa.pub login@host
Подключаемся к серверу с помощью нашего ключа:
> ssh -i ~/.ssh/hts_rsa login@host
Итого
У меня есть папка scripts, куда я добавляю новый скрипт hts-connect.sh. Теперь я подключаюсь к своему серверу, выполнив простую команду:
> ~/scripts/hts-connect.sh