
Quero criar um script, possivelmente em python, aberto a sugestões, que registre todos os comandos digitados no servidor. então registraria, usuário, carimbo de data e hora e comando.
Isso é possível?
Responder1
1 - Pode haver diferentes abordagens para conseguir isso em Python. Esseartigoou istoartigopode ajudá-lo a registrar todos os comandos e então você pode fazer a análise usando python.
2 – Você também pode conferirSegurança Grpara configurar o log do Exec no nível do kernel.
3 - Então você pode fazer algo assim (código de análise simples):
''A very simple log parser for ssh connections to display IP address and their User name'''
SSH_LOG_FILE_NAME = '/var/log/secure'
for line in open(SSH_LOG_FILE_NAME):
if "sshd" in line:
if "Accepted" in line:
print "Connection is accepted from "
print "User: ", line.split()[8], "IP: ", line.split()[10]
if "session closed" in line:
print "Connection is closed from "
print "User: ", line.split()[10]
PS Acho que o segundo é mais fácil de seguir e mostra como analisá-lo usando sed, o que você também pode fazer isso facilmente em Python, uma vez que consiga registrar todos os comandos.
Responder2
Por favor, verifique ~/.bash_history. Este registro pode ser facilmente desativado.