O Bash pode me dizer qual chave pública SSH foi usada para autenticar?

14

Digamos que eu queira acompanhar meus root usuários. Cada um deles tem uma chave privada exclusiva e suas chaves públicas foram armazenadas em /root/.ssh/authorized_keys .

Dado que cada usuário efetua login com sua chave exclusiva, como posso saber a partir de uma sessão BASH qual chave foi usada para autenticar? Tentei observar as variáveis de ambiente quando efetue login, mas não consigo ver nada que correlacione minha sessão com minha chave pública.

    
por PP. 20.09.2013 / 12:06

1 resposta

21

Você pode adicionar o nome de usuário à chave pública em ~/.ssh/authorized_keys no servidor e exportá-lo como um valor de ambiente:

environment="REALUSER=realusername" ssh-dsa AAA...

Isso definirá a variável de ambiente REALUSER, que estará disponível para uso no bash. Isso só funcionará se PermitUserEnvironment estiver definido como verdadeiro em sshd_config

    
por 20.09.2013 / 12:15

Tags