Linux 下的伺服器時間同步方案有哪些?

時間 2021-05-09 06:41:11

1樓:楊東東

盡量通過服務來協調,這是一套成熟的機制;如果寫指令碼定期矯正,風險是矯正時候有些軟體可能無法正常工作,比如一些寫的不是很好的網路庫,依賴時間做過期的快取服務等,而且你如何保證你的指令碼能持續正確工作也是個挑戰。

2樓:李鑫

基本上在任何時候都不應該使用 ntpdate。

大多數應用場景中,使用ntpd的-g引數令其在啟動時允許大步長同步就足夠了(除此之外還可以在配置中使用 iburst 來讓加速同步)。使用 ntpd 唯一需要注意的是在配置時應配置 ACL,以免成為攻擊跳板。

有些人會爭辯,在啟動 ntpd 之前執行一次ntpdate 的好處是 ntpdate 退出時,系統的時間已經調到了比較接近正確的時間。不過, ntp 作者已經在文件中明確表示未來 ntpdate 會變成乙個shell指令碼(通過 ntpd -g -q 來實現),事實上,現在也可以在啟動時用 ntpq -c rv 來檢查 ntpd 的狀態了,對於精度要求比較高的應用,系統時間和時鐘快慢同等重要,如果不高,也沒有太大必要去另外執行 ntpdate 了。

定時執行 ntpdate 的系統很容易受到這樣的攻擊:如果有人故意調整了某個 ntp 伺服器的時間,所有使用 ntpdate 的系統都將跟隨其設定。舉例來說,假如已知某家公司的系統每天凌晨3點會執行某項非常耗時的任務,同時每4個小時會做一次ntpdate,那麼攻陷這台伺服器並令其一直返回凌晨 2:

59,就可以很容易地實現四兩撥千斤的槓桿式攻擊了,而且,由於系統時間也會影響日誌,因此觀察日誌的人員也比較容易受其誤導。

與此相反,ntpd 通常會配置為使用多個參考伺服器,在執行時會參考多個伺服器的時間,並排除明顯異常的伺服器。而監控多個 ntp 伺服器相對來說要容易得多。

用 cron 或類似的任務計畫去做 ntpdate 還有個問題是如果系統時間比較準的話,每到某個整點(或者特定的時間)的同步操作就變成了一次對 NTP 伺服器的 DDoS。機器多的話,這種放大效應對於集群本身和提供 NTP 服務的機器都是不利的。

3樓:范子逸

先用ntpdate做一次同步。然後使用ntpd做日常同步。

如果要求精度高,可以使用PTP,參見: Precision Time Protocol

4樓:

單獨構建的ntpserver是乙個本地集中式的時間同步解決方案,這樣的好處在於,快(本地)

壞處在於,有管理代價,如果你維護的不當,很可能造成全部over,給服務造成難以挽回的損失。

用別人的server的話,如果網路出問題很可能造成是同步時間不成功。同時同步完成時間也會受到網路的影響慢一些。但因為對方是專人維護,所以故障機率小一些。

5樓:曹世軍

精度要求不高的話,ntpdate +crontab就可以了,缺點是可能會有時鐘漂移、回滾的情況。

ntp適合精度要求較高的情況,優點是時間不會漂移、回滾,缺點是要起系統服務,誤差太大的時候調教用時較多,有時候甚至調校不來。

遠端連線linux伺服器,需要linux伺服器開啟sshd服務,此服務監聽哪個埠?

FancyGo 預設的sshd服務都是22埠,不過你也可以把這個埠號給改掉。一般是這個檔案 etc ssh sshd config,裡面的Port欄位改成你自己的想要的埠。然後重啟一些sshd服務。然後還要注意把該埠的防火牆放開就可以了。 張驍 man sshd p port Specifies t...

Linux 伺服器有必要開啟 iptables 防火牆麼?

沒必要,我的伺服器我知道,一條命令 ss nlptu 列出所有監聽的埠和程序情況。如果連當前伺服器上有什麼程序都控制不了,加了防火牆也沒用。1 開吧,你開了IPTABLE,相當於給所有的埠配了一把鎖,任何程式要開端口監聽或對外連線,都要你能過IPTABLE的規則去允許他,才開得了。可以防止掉大部分的...

絕地求生這類遊戲伺服器怎麼同步資料的?

gavind 參見虛幻引擎Delicate Server的原始碼吧 首先是按距離排序,只同步指定距離內的單位,在同步時也有很多判斷,做增量同步,沒有變化的單位或者屬性不同步,另外同步頻率根據單位型別不同也是變化的 虛幻這套東西在伺服器上開銷都是很大的,不過現在的遊戲都比較傾向於以玩法優先,與其在為了...