Имя пользователя для существующего сертификата SSH?

231
oberlies

На сервере Jenkins в ~/.ssh/каталоге есть две пары закрытых и открытых ключей SSH, которые, очевидно, используются для аутентификации на одном и том же внешнем сервере. Однако я не знаю, какое имя пользователя использовать для одного из сертификатов.

Является ли информация об имени пользователя частью ключей SSH? Или ключ и имя пользователя отображаются только на сервере, принимающем авторизацию на основе сертификата?

2

1 ответ на вопрос

2
Kevin Panko

Имя пользователя не является частью ключа.

На стороне сервера файл ~/.ssh/authorized_keysопределяет, какие ключи могут входить в конкретную учетную запись. Имя, следующее за ключом, обычно является именем пользователя, но, поскольку SSH игнорирует это, оно может быть любым. В этом файле может быть любое количество ключей, поэтому при желании можно авторизовать множество ключей.

На стороне клиента, ключ, используемый по умолчанию в ~/.ssh/id_rsaили ~/.ssh/id_dsaно это может быть изменено путем передачи -iв sshкоманде.

 -i identity_file Selects a file from which the identity (private key) for RSA or DSA authentication is read. The default is ~/.ssh/identity for protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for pro- tocol version 2. Identity files may also be specified on a per- host basis in the configuration file. It is possible to have multiple -i options (and multiple identities specified in config- uration files). 

Таким образом, сервер и клиент не должны использовать одно и то же имя пользователя.

Похожие вопросы