informações de chave pública do usuário SSH

1

Eu quero descobrir qual usuário SSH iniciou meu script em um servidor via SSH, ou seja, qual chave pública foi usada para o usuário efetuar login.

A variável de ambiente

SSH_CONNECTION me fornece o endereço IP do cliente.

Eu também gostaria de saber qual chave pública de authorized_keys foi usada e seu comentário (geralmente e-mail).

Estou procurando uma solução sem mexer com sshd e seus logs, para que eu não precise configurar os servidores de destino. A única coisa certa é que o script é executado em servidores Ubuntu. Além disso, meu usuário não possui sudo de direitos.

    
por warvariuc 17.12.2017 / 20:22

1 resposta

0

/var/log/auth.log conterá uma entrada como:

Accepted publickey for <userid> from <IP address> port 57762 ssh2: RSA SHA256: <43 random characters>

Os "caracteres aleatórios" são a impressão digital da chave pública usada. Você pode dizer as impressões digitais das chaves em seu arquivo local authorized_keys usando:

ssh-keygen -lf /home/user/.ssh/authorized_keys

que lista a impressão digital de cada chave junto com o comentário da chave (que geralmente é um e-mail ..)

    
por 17.12.2017 / 22:06