SSH Advanced Logging

4

Instalei o OpenSUSE no meu servidor e quero definir o ssh para registrar todos os comandos, que são enviados para o sistema.

Eu encontrei isso no meu sshd_config:

# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
#LogLevel INFO

Eu acho que ambas as diretivas precisam ser descomentadas, mas eu gostaria de registrar todos os comandos, não apenas a autorização (login / logout via SSH). Eu só quero saber, se alguém invadir meu sistema, o que ele fez.

    
por Radek Simko 16.06.2010 / 21:12

4 respostas

1

history faz isso automaticamente, faça login como o usuário que efetuou login por meio do ssh e execute:

history

Ele mostra o histórico de comandos executados por esse usuário específico.

history > command.log

salvará o histórico no arquivo " command.log "

Mais sobre history : link e link

O histórico da linha de comando também deve ser armazenado em .bash_history (arquivo no diretório pessoal do usuário) ao usar o bash (corretamente).

    
por 16.06.2010 / 21:48
0

Sua melhor aposta seria instalar Fail2Ban e ignorar o registro em SSH. Evitar a invasão vale muito mais do que ver o que um invasor poderia ter feito. Especialmente quando você assume que ele interrompe, ele pode remover o arquivo de log.

    
por 16.06.2010 / 21:35
0

Se alguém invadir seu sistema, ele provavelmente será esperto o suficiente para excluir o arquivo de histórico e adulterar os logs. Para tornar as coisas mais difíceis para o vilão:

  • Dê uma olhada nos recursos de auditoria do SELinux / GRsecurity e Linux
  • Configure um servidor de registro centralizado e faça seu syslog-daemon (prefiro syslog-ng) encaminhar todos os seus arquivos de log para lá. Certifique-se de que seu servidor de registro esteja protegido por um firewall rígido, tendo apenas a porta de registro aberta para conexões de entrada (ao tentar se conectar a partir de outro servidor).
  • Considere o uso de rootsh ou algo equivalente a ele.
por 29.07.2010 / 12:02
0

você disse que queria registrar todos os "comandos". Eu suponho que você quer dizer todos os comandos inseridos no shell do usuário (seja um usuário legítimo ou não). Nos links a seguir, existem muitas ferramentas que podem fazer isso de uma maneira mais ou menos segura:

nota: como @ Janne-Pikkarainen disse, se você quiser ter logs realmente seguros, deve enviar seus arquivos de log para outra máquina.

    
por 16.08.2010 / 16:16

Tags