Утилита ssh-copy-id#
Описание#
ssh-copy-id - это утилита для копирования публичного ключа пользователя на удаленный хост, что позволяет установить беспарольную аутентификацию при подключении через SSH. ssh-copy-id обеспечивает доступ без запроса пароля для каждого подключения с использованием ssh (подробнее — в разделе «Утилита ssh»), а именно упрощает аутентификацию по открытому ключу.
Утилита копирует открытый ключ на удаленный хост, к которому необходимо получить доступ, и добавляет его в файл ~/.ssh/authorized_keys. Если файла и каталога нет, то они будут созданы.
Синтаксис утилиты:
ssh-copy-id <options> <username>@<hostname_or_ip_address>
Где:
<options>– возможные опции;<username>- имя пользователя;<hostname_or_ip_address>– имя хоста или IP-адрес.
Опции#
Часто используемые опции утилиты представлены в таблице ниже.
Опция |
Описание |
|---|---|
|
Использовать ключи, которые содержатся в указанном идентификационном файле, вместо поиска через команду |
|
Принудительно включить режим, при котором отсутствует проверка наличия ключей на удаленной машине. В этом случае при подключении не требуется закрытый ключ. Использование опции может привести к дублированию ключей на удаленной машине |
|
Провести пробный запуск подключения. Вместо установки ключей их значения просто выводятся в стандартный поток вывода |
|
Включить режим SFTP. При использовании этой опции файл пользователя |
|
Задать путь в целевой системе на удаленной машине, куда необходимо добавить ключи. По умолчанию |
|
Указать номер порта при подключении |
|
Указать опции |
|
Включить режим отладки для |
|
Вывести краткое описание использования |
Примеры использования#
Для копирования ключей на удаленную машину используйте команду:
ssh-copy-id <username>@<hostname_or_ip_address>Для копирования конкретного открытого ключа на удаленную машину воспользуйтесь командой:
ssh-copy-id -i <path-to-certificate> <username>@<hostname_or_ip_address>Где
<path-to-certificate>– путь к файлу с сертификатом.Для копирования конкретного открытого ключа на удаленную машину с определенным портом используйте команду:
ssh-copy-id -i <path-to-certificate> -p <port> <username>@<hostname_or_ip_address>Где
<port>- номер порта.
Дополнительная информация#
Дополнительную информацию можно получить, выполнив команду:
man ssh-copy-id
Или:
ssh-copy-id -h