autenticação de chave pública sem arquivo authorized_keys

3

Eu tenho um monte de logins de chave pública ssh em um servidor Linux, por exemplo:

Jul 25 11:41:01 host sshd[24594]: Accepted publickey for root from xxx.xxx.xx.xx port 33374 ssh2

Isso é estranho para mim já que não há nenhum arquivo authorized_keys no diretório /root/.ssh . A opção AuthorizedKeysFile em /etc/ssh/sshd_config tem o valor padrão de .ssh/authorized_keys .

Gostaria de saber como é possível fazer o login no servidor usando autenticação de chave pública?

    
por Eugene Yarmash 25.07.2014 / 21:03

1 resposta

2

Eu descobri o que está acontecendo. As mensagens chegam ao servidor de hosts remotos via UDP. Eu não percebi o campo do host mudando no início, meu erro.

BTW, na verdade existe uma possibilidade de login usando a autenticação de chave pública sem o arquivo authorized_keys envolvido. O RedHat (e variantes) tem uma correção suportada pelo OpenSSH que adiciona as opções AuthorizedKeysCommand e AuthorizedKeysCommandRunAs . O patch foi mesclado no OpenSSH 6.2 . Para citar a página de manual :

AuthorizedKeysCommand

Specifies a program to be used for lookup of the user's public keys. The program will be invoked with its first argument the name of the user being authorized, and should produce on standard output AuthorizedKeys lines (see AUTHORIZED_KEYS in sshd(8)). By default (or when set to the empty string) there is no AuthorizedKeysCommand run. If the AuthorizedKeysCommand does not successfully authorize the user, authorization falls through to the AuthorizedKeysFile. Note that this option has an effect only with PubkeyAuthentication turned on.

AuthorizedKeysCommandRunAs

Specifies the user under whose account the AuthorizedKeysCommand is run. Empty string (the default value) means the user being authorized is used.

    
por 26.07.2014 / 01:13