問題:我有一個生產伺服器,我不信任任何人。但是我不能是唯一能夠訪問它的人。
實現:我需要允許人們以 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
不影響任何程序/進程(以及一般作業系統)的行為。