angle-left

Перенос ssh ключей на другой сервер

С точки зрения безопасности на каждый отдельный сервер необходимо иметь доступ с разной парой ключей, но иногда необходимо перенести существующую пару ключей на новый сервер.
По умолчанию в корневой директории пользователя находится директория .ssh, если по какой то причине её нет, то создаём её командой:

$ mkdir /home/@user/.ssh
Копируем открытый ключ на удалённую систему:
$ cat ~/.ssh/id_rsa.pub | ssh user@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Устанавливаем права на сервере которым хотим управлять:
$ chmod 700 ~/.ssh/
$ chmod 600 ~/.ssh/authorized_keys
Настройка ssh  авторизации по ключу:
$ nano /etc/ssh/sshd_config

Необходимо изменить параметры на следующее:

PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no

И отключаем вход по паролю:

UseLogin no

Выходим из редактирования с сохранением настроек.
Перезапускаем ssh сервер для принятия настроек:

$ service sshd restart
Вперед

Коротко о себе:

Defuse

Работаю в компании Tune IT. Занимаюсь какими-то проектами, связанными с чем-то.