Linux

通過 SSH 使用 SCP 監控文件副本

  • October 29, 2015

有沒有辦法記錄使用 SCP 複製的文件?我正在管理一個伺服器,其中包含一些應該被監視的文件(在特定文件夾及其子文件夾中),所以當有人通過 SSH 複製它們時,應該記錄複製過程。

我想查看使用者的 Bash 命令歷史並蒐索以 開頭的命令scp,但這是對隱私的公然侵犯,使用者也很容易刪除此歷史記錄(即使沒有惡意)。

有誰知道這樣做的方法?我可以使用使用者名/密碼為伺服器創建一個基於 Web 的界面,然後記錄下載會很容易,但我對“裸機”解決方案感興趣,如果有的話。

編輯:我查看了 SSHD 的日誌記錄選項,例如 FascistLogging 或調試日誌記錄,但這些似乎不太合適。他們真的是解決方案嗎?

編輯2:我開始相信這個問題不應該出現在堆棧溢出上,而應該出現在伺服器故障上……我該怎麼辦?

我會使用incron。它利用 Linux 核心inotify子系統,如果某些受監控的目錄樹/文件被修改,您可以執行任何您想要的。文件格式非常簡單,incrontab例如

/your/directory IN_MODIFY /usr/local/bin/log_file_modifications.sh $@/$#

/usr/local/bin/log_file_modifications.sh每次在目錄樹上修改某些內容時都會執行/your/directory,使用完整路徑($@參數)和修改的文件(參數)呼叫腳本$#

您的腳本可能很簡單

#!/bin/bash
logger -t modification_stalker "Yo dawg, these files got modified $1 $2 ..." 

引用自:https://serverfault.com/questions/391743