用於記錄使用者輸入的每個命令的名稱、日期和命令的 Python 腳本

用於記錄使用者輸入的每個命令的名稱、日期和命令的 Python 腳本

我想創建一個腳本,可能是用 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。可以輕鬆停用此日誌記錄。

相關內容