透過代理程式記錄所有 SSH 命令

透過代理程式記錄所有 SSH 命令

問題:我有一個生產伺服器,我不信任任何人。但是我不能是唯一能夠訪問它的人。

實現:我需要允許人們以 root 身份登錄,但通過代理登錄,以便他們通過 ssh 鍵入/發送的任何內容都記錄在他們實際上無權訪問的代理計算機上(這樣他們就無法篡改日誌) 。

做到這一點的理想設定是什麼?我只遇過 tshark (SSH 記錄所有命令),但我實際上不確定它是否適合這項工作,也不知道我到底如何設置它,因為人們說它在協議級別記錄流量,而 ssh 加密發生在應用程序級別。

任何人都可以為此提供明確的經過測試的解決方案嗎?

答案1

https://goteleport.com這應該完全符合你的要求。他們說它已經準備好生產了,但我正在玩弄它,在我看來這還處於早期開發階段。

我正在尋找替代方案,所以我發現您的問題仍然相關。我會尋求商業解決方案。

答案2

您可以嘗試一下國民健康保險:https://github.com/strang1ato/nhi

nhi自動捕獲有關每個執行命令及其周圍所有內容的所有潛在有用信息,並提供強大的查詢機制。

nhi儲存以下記錄:

  • 命令
  • 命令的輸出
  • 指令的退出狀態
  • 命令執行結束時的工作目錄
  • 命令的開始時間
  • 命令完成時間
  • 執行命令時的 shell 提示符

nhi通常也會保存有關 shell 會話的資訊記錄。

[...]

nhi 守護程式基於 eBPF——一種內建於 Linux 核心的技術。使用可以eBPF保證工具的出色性能和低開銷,因為追蹤是在核心內部安全完成的。

nhi不影響任何程序/進程(以及一般作業系統)的行為。

相關內容