Como posso verificar se um usuário root instalou o ssh no meu servidor com sucesso?

0

O código a seguir fornece todos os Aceitos, mas não filtra por nome de usuário

sudo cat /var/log/auth.log | grep Accepted
    
por ahtmatrix 06.05.2017 / 18:19

2 respostas

2

Adicione o nome de usuário ao padrão grep?

# grep -e "Accepted .* for root " /var/log/auth.log
May  3 23:09:01 lumi sshd[21046]: Accepted publickey for root from 1.2.3.4 port 44308 ssh2
May  6 21:25:20 lumi sshd[6642]: Accepted publickey for root from 1.2.3.4 port 44556 ssh2

Ou use last , que lê /var/log/wtmp , que contém um log das sessões iniciadas. Observe que as sessões não interativas não são armazenadas aqui.

# last root
root     pts/38       somehost.somewhere  Sat May  6 21:25   still logged in   
root     pts/3        somehost.somewhere  Wed May  3 23:09 - 23:09  (00:00)  

Pelo menos a localização desses registros pode ser específica do sistema / distribuição.

No entanto, como estamos falando de logins de raiz, pode ser bom observar que qualquer pessoa com poderes de root pode editar os logs para ocultar seus logins, portanto, se você estiver fazendo isso para auditoria, deverá tem registro em um sistema externo.

    
por 06.05.2017 / 20:31
1

Talvez o último comando ajude você a listar logins de raiz? Neste exemplo, o último comando mostra que a raiz fez login da máquina com o endereço IP 10.1.57.140 usando o pseudo-terminal 3 (pts / 3) na quarta-feira, 11 de janeiro. Embora a última vez não indique claramente o SSH, pts / 3 pode ser um strong indicação de que a conexão foi feita usando SSH.

[root@server1 ~]# last
john.doe  pts/0        server1.example.com  Thu Jan 12 12:04  still logged in
root      pts/3        10.1.57.140          Wed Jan 11 12:54 - 13:13  (00:19)
reboot    system boot  3-10-0-327.e17.x     Wed Jan 11 12:52 - 13:10  (00:01)
. . .
    
por 06.05.2017 / 18:44