Nome de usuário para um certificado SSH existente?

2

Em um servidor Jenkins, há dois pares de chaves privadas e públicas SSH no diretório ~/.ssh/ , que aparentemente são usados para autenticar com o mesmo servidor externo. No entanto, não sei qual nome de usuário usar para um dos certificados.

A parte de informações do nome de usuário das chaves SSH? Ou a chave e o nome de usuário são mapeados apenas no servidor, aceitando a autorização baseada em certificado?

    
por oberlies 04.02.2014 / 18:16

1 resposta

2

O nome do usuário não faz parte da chave.

No final do servidor, o arquivo ~/.ssh/authorized_keys identifica quais chaves têm permissão para efetuar login em uma conta específica. O nome após a chave é tipicamente o nome do usuário, mas como o SSH o ignora, pode ser qualquer coisa. Qualquer número de chaves pode estar neste arquivo, então muitas chaves podem ser autorizadas, se desejado.

No lado do cliente, a chave usada por padrão está em ~/.ssh/id_rsa ou ~/.ssh/id_dsa , mas isso pode ser alterado passando -i para o comando 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).

Desta forma, o servidor e o cliente não precisam compartilhar o mesmo nome de usuário.

    
por 08.02.2014 / 01:22