O único lugar onde o sshd registra como o usuário autenticado está nos logs do sistema. Esta informação não é disponibilizada para a sessão autenticada. A única informação de identificação sobre a origem da conexão que é disponibilizada no ambiente é o endereço IP e porta no cliente, nas variáveis SSH_CLIENT
e SSH_CONNECTION
.
Você pode adicionar uma diretiva em ~/.ssh/authorized_keys
para definir uma variável de ambiente se o usuário efetuar login com uma chave específica:
environment="SSH_KEY=foo" ssh-rsa AAAA…
Se o usuário não efetuar login com uma chave, você não terá como informar como eles efetuaram login (senha, .shosts
, Kerberos,…), exceto procurando nos logs do sistema (que somente o administrador do sistema pode fazer).
Se o administrador do sistema não permitir que você modifique o arquivo authorized_keys
, será necessário trabalhar com eles para saber como você pode fazer o que quiser. Certifique-se de explicar a eles quais informações você precisa saber e por quê.
Observe que o que você fez com o agente não é uma forma confiável de identificar a origem da conexão e não informa nada sobre como o usuário efetuou login. Você não receberá nada se o usuário não encaminhar o agente, ou se não tivessem chaves no agente. Você pode obter várias chaves e não há nenhuma razão específica pela qual o usuário teria usado uma dessas chaves para efetuar login (elas poderiam ter usado uma senha ou outra chave ou qualquer outro método). Eu não recomendo fazer nada com essa informação, não é confiável.