В этом разделе описывается процесс копирования публичного ключа с одной Linux-системы (Клиент) на другую (Сервер). Клиент выступает в роли управляющей системы, а Сервер — в роли управляемой.
Предварительные требования
Для Клиента:
- Система должна управляться операционной системой на базе Linux.
- В системе должен быть установлен клиент OpenSSH. Как его установить описано в инструкции “Linux: Установка клиента SSH“.
- Пользователю должен быть доступен терминал Linux.
Для Сервера:
- В системе должна быть установлена операционная система на базе Linux.
- В системе должен быть установлен сервер OpenSSH. Как его установить описано в инструкции “Linux: Установка сервера SSH“.
- Необходимо знать IP-адрес сервера, имя и пароль пользователя сервера, от имени которого будет выполняться подключение с удаленного клиента, например, пользователя netadmin (root). Процесс создания нового пользователя описан в инструкции “Linux: Создание нового пользователя”.
Команда для копирования публичного ключа
Чтобы скопировать публичный ключ на сервер и добавить его в список авторизованных ключей (файл ~/.ssh/authorized_keys), используйте следующую команду:
ssh-copy-id -i <путь_к_публичному_ключу> <имя_пользователя_сервера>@<IP_сервера>
где:
-i <путь_к_публичному_ключу> – Указывает путь к публичному ключу ключевой пары. Как создать ключевую пару, описано в разделе ”Создание ключевой пары”. По умолчанию публичный ключ имеет расширение *.pub и создаётся в папке текущего пользователя, в субдиректории /.ssh. Расположение папки текущего пользователя вы можете узнать при помощи команды: ls -d ~ . Ключ -i, путь и имя публичного ключа могут быть опущены, если они присвоены по умолчанию.
<имя_пользователя_сервера> – имя пользователя сервера, от имени которого вы будете управлять сервером. Как создать пользователя, описано в инструкции “Linux: Создание нового пользователя”. Также для подключения можно использовать пользователя netadmin (root), пароль которого вы получите в письме о готовности виртуальной машины или сервера Сервер молл Сloud к работе.
<IP_сервера> – IP-адрес виртуальной машины или сервера. IP-адрес вы получите в письме о готовности виртуальной машины или сервера Сервер молл Сloud к работе.
Более подробное описание параметров команды ssh-copy-id можно найти в руководстве “Использование команды ssh-copy-id”.
Пример 1
Если публичный ключ генерировался текущим пользователем с использованием пути и имени ключевой пары по умолчанию, то команда копирования ключа может выглядеть так:
ssh-copy-id myuser1@203.0.113.14
Эта команда использует публичный ключ из файла ~/.ssh/id_rsa.pub, который является публичным ключом, сгенерированным и сохраненным по умолчанию, для добавления его в файл ~/.ssh/authorized_keys на сервере с IP-адресом 203.0.113.14 под учётной записью пользователя myuser1. При запуске команды вам будет необходимо ввести пароль для пользователя myuser1 на сервере для аутентификации.
Пример 2
Если путь и имя публичного ключа отличаются от применяемых по умолчанию, то необходимо указать имя публичного ключа и путь к нему. В этом случае команда будет выглядеть так:
ssh-copy-id -i ~/.ssh/srv3rsa.pub myuser1@203.0.113.14
Эта команда инициирует подключение к серверу или виртуальной машине с IP-адресом 203.0.113.14 под учётной записью пользователя myuser1. В процессе аутентификации вам будет необходимо ввести пароль указанного пользователя. После успешного входа, команда ssh-copy-id скопирует публичный ключ srv3rsa.pub из директории .ssh текущего пользователя на клиентской машине в домашнюю директорию пользователя myuser1 на сервере, добавляя его в файл ~/.ssh/authorized_keys.
Первое подключение
Если вы впервые подключаетесь к виртуальной машине или серверу (далее — хосту), появится сообщение о том, что хост не опознан: “The authenticity of host…“. Для подтверждения подключения введите yes и нажмите клавишу Enter.
Проблемы с подключением
Если у вас возникли проблемы с подключением, обратитесь к разделу документации «Устранение неполадок SSH-соединений» для получения рекомендаций по их решению.
Что дальше?
После успешного копирования публичного ключа на сервер, вы можете подключиться к виртуальной машине или серверу, следуя инструкциям раздела “Подключение к серверу через OpenSSH”.