
我想創建一個腳本,可能是用 python 編寫的,接受建議,它記錄在伺服器上鍵入的每個命令。所以它會記錄、使用者、時間戳記和命令。
這可能嗎?
答案1
1 - 在 Python 中可能有不同的方法來實現這一點。這文章或這個文章可以幫助你記錄所有指令,然後你可以使用 python 來解析。
2 - 您也可以檢查網路安全在核心層級配置 Exec 日誌記錄。
3 - 然後你可以做這樣的事情(簡單解析程式碼):
''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 我認為第二個更容易理解,並展示瞭如何使用 sed 解析它,一旦您能夠記錄所有命令,您也可以在 Python 中輕鬆完成。
答案2
請檢查~/.bash_history。可以輕鬆停用此日誌記錄。