ssh авторизация по ключу
В статье дана инструкция по организации ssh авторизации по ключу. Клиент linux, сервер linux. Все операции проводим в комадной строке.
План действий:
- генерация открытого и закрытого ключа на клиенте
- копирование открытого ключа на сервер
- конфигурация sshd
Генерация ключей
На клиенте выполняем команду
ssh-keygen -f /home/user/.ssh/id_rsa
где user — каталог локального пользователя.
Получаем 2 файла:
id_rsa — закрытый ключ. Храним надежно. Имея его, можно получить доступ к серверу без пароля!
id_rsa.pub — открытый ключ. Должен находится на сервере, к которому хотим подключаться.
Копируем открытый ключ на сервер
Копируем открытый ключ id_rsa.pub на сервер в папку .ssh пользователя, под которым хотим авторизоваться и переименовываем ключ в ‘authorized_keys’.
Выставляем права на каталог .ssh — 700, на authorized_keys — 600.
chmod 700 /home/server_user/.ssh chmod 600 /home/server_user/.ssh/authorized_keys
Конфигурация sshd
Конфиг на сервере /etc/ssh/sshd_config изменяем/добавляем:
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys
и перезагружаем sshd:
service ssh restart
Результат
Теперь выполняем подключение с клиента на сервер:
ssh user@ip ssh -i /home/user/.ssh/authorized_keys user@ip
Подключение должно пройти без запроса пароля.
Быстрый способ
ssh-keygen -t rsa -b 2048 ssh-copy-id id@server