
我最近注意到有人試圖對我的伺服器進行 ntpd 反射攻擊。所以我的問題是,ntpd 保持啟用狀態有多大必要,以及如何啟用和停用它?
答案1
Ubuntu 16.04 或 18.04 桌面的預設安裝不包含ntpd
. (預設伺服器安裝程式也不會強制執行它,儘管某些雲端映像包含它。)而是systemd-timesyncd
預設的 SNTP 用戶端。因為它只是一個 SNTP 用戶端(而不是 NTP 伺服器),所以它根本不會回應來自外部的請求(除非 中存在潛在的錯誤systemd-timesyncd
)。您可以systemd-timesyncd
使用 來查看正在執行的操作timedatectl
。
其他興趣點:
Ubuntu 16.04 下的預設配置
ntpd
包括特定的保護措施,以防止其被用於反射攻擊。在 Ubuntu 18.04 下,預設的 NTP 伺服器(預先烘焙到一些映像中)切換為
chronyd
,它具有更好的安全歷史記錄和更安全的程式碼庫,根據最近的一份報告。
答案2
ntpd 不必保持啟用狀態。擁有正確的時間固然很好,但不是必要的。大多數目前的預設配置應限制對 ntp 伺服器的訪問,以防止反射攻擊。
要在下次重新啟動時啟用和停用:
systemctl enable ntpd
systemctl disable ntpd
立即啟動和停止
systemctl start ntpd
systemctl stop ntpd
答案3
除了 RalfFriedl 所說的之外,還值得注意的是,某些軟體依賴時鐘來同步。這通常用於許可情況或密鑰對情況(有時 2FA 也需要它)。
只需意識到您正在運行的內容及其需要什麼。如果您開始看到許可證或證書的奇怪錯誤,我會先仔細檢查 NTP。
關於 NTP 反射攻擊,我相當確定,儘管您可以透過關閉入站流量的連接埠 * 123 來避免不需要的訪客請求 NTP 資料。這樣,您仍然可以發出 NTP 出站請求並接收其回應並阻止傳入攻擊。除非您正在執行 NTP 伺服器,否則您確實不需要該連接埠來接收入站流量。您也可以停用 NTP 中的監視命令等功能來強化您的 NTP 伺服器。 (這篇文章很舊,但可能有幫助:https://isc.sans.edu/forums/diary/NTP+reflection+attack/17300/)
我希望能回答你的問題:D
*:為了清晰起見進行編輯