時間同步伺服器linux
『壹』 如何用linux一台伺服器時間去同步其他伺服器的時間
一、搭建時間伺服器
1、在一台linux伺服器安裝ntp server
2、修改ntp.conf配置文件
vi /etc/ntp.conf
restrict default nomodify
(允許任何IP的客戶機都可以進行時間同步,如果是只允許某個網段的客戶機進行時間同步可以這樣寫restrict 10.58.26.0 mask 255.255.255.0 nomodify)
3、以守護進程啟動ntpd
#/etc/rc.d/init.d/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
#/etc/rc.d/init.d/ntpd start
二、配置時間同步客戶機
ntpdate 10.128.14.25
hwclock -w
使用cron 定時同步
vi /var/spool/cron/root(或crontab -e)
增加一行,在每天的1點10分、9點10分、17點10分與時間同步伺服器進行同步並寫入BIOS
10 1 ,9,17* * * root /usr/sbin/ntpdate 10.128.14.25; /sbin/hwclock -w
『貳』 linux配置多台伺服器時間同步.
一、設置A伺服器為時間伺服器(加入A伺服器ip為172.18.102.2)
1 修改 /etc/ntp.conf,如下所示:
命令:vi /etc/ntp.conf
內容:
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
server 127.127.1.0 # local clock
#fudge 127.127.1.0 stratum 10
2 啟動時間伺服器,命令如下:
service ntpd status
service ntpd start
3 查看啟動結果,如下所示:
命令:ntpq -p
結果:
remote refid st t when poll reach delay offset jitter
==============================================================================
*LOCAL(0) .LOCL. 5 l 2 64 377 0.000 0.000 0.000
4 設置自啟動,命令如下:
chkconfig ntpd on
二、設置需要同步的伺服器
1 修改 /etc/ntp.conf,如下:
命令:vi /etc/ntp.conf
內容:
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
server 172.18.102.2 # local clock 與伺服器A機時間同步
fudge 172.18.102.2 stratum 10
2 啟動時間伺服器,命令如下:
service ntpd status
service ntpd start
3 查看啟動結果,如下所示:
命令:ntpq -p
結果:
remote refid st t when poll reach delay offset jitter
==========================《Linux就該這么學》一起學習linux
172.18.102.2 LOCAL(0) 6 u 5 64 1 1.377 -7077.8 0.000
4 設置自啟動,命令如下:
chkconfig ntpd on
5 立即同步
ntpdate -d 172.18.102.2
『叄』 linux系統怎麼設置時間同步
命令行界面操作
1、對於linux系統大多數是命令行界面,所以先介紹字元界面同步時間方法。 首選安裝ntpdate 時間同步服務, 利用yum install ntpdate
2、接著把linux系統時間同步到windows time公共時間伺服器, ntpdate time.windows.com
3、設置時間同步腳本,雖然以上已經同步了時間,但是如果連不上網或者關機就不一樣的時間了。可以通過設置計劃任務,每天0點同步一下。
添加到crontab任務文件添加:00 0 1 * * root ntpate -s time.windows.com
4、除此之外,我們還可以通過用date命令查看 和手動設置系統時間(必須管理員賬號許可權。
圖形界面設置
1、如果對命令行不熟悉,也可以通過圖形界面設置來實現系統時間同步。 找到系統工具----管理員功能選項--- date\時間 和日期
2、啟用網路時間,並且與之同步找到date\time 時間菜單之後,勾選「synchronize date and time over the network 」
3、設置正確的當地時區,除此之外,centos系統會根據當期語言來設置默認的時間和時區。對於咗嚛所在的china時間,是北京時間(下面那個UTC時間不要勾)
『肆』 如何用linux一台伺服器時間去同步其他伺服器的時間
一、搭建時間伺服器
1、在一台linux伺服器安裝ntp server
2、修改ntp.conf配置文件
vi /etc/ntp.conf
restrict default nomodify
(允許任何IP的客戶機都可以進行時間同步,如果是只允許某個網段的客戶機進行時間同步可以這樣寫restrict 10.58.26.0 mask 255.255.255.0 nomodify)
3、以守護進程啟動ntpd
#/etc/rc.d/init.d/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
#/etc/rc.d/init.d/ntpd start
二、配置時間同步客戶機
ntpdate 10.128.14.25
hwclock -w
使用cron 定時同步
vi /var/spool/cron/root(或crontab -e)
增加一行,在每天的1點10分、9點10分、17點10分與時間同步伺服器進行同步並寫入BIOS
1
『伍』 如何使兩台linux伺服器時間同步
Linux自帶了ntp服務 -- /etc/init.d/ntpd,這個服務不僅可以設置讓本機和某台/某些機器做時間同步,他本身還可以扮演一個timeserver的角色,讓其他機器和他同步時間。
配置文件就是/etc/ntp.conf。
為了測試,設置讓node2 -- 192.168.1.102和node1 -- 192.168.1.101做時間同步。
第一步,
node1做time server,node1本身不和其他機器時間同步,就是取本地時間。
所以,先把node1機器的時間調准了:
[root@node1 ~]date -s 08/03/2011
[root@node1 ~]date -s11:12:00
[root@node1 ~]clock -w
[root@node1 ~]hwclock --systohc
後兩個命令是把設置的時間寫到硬體時間中去(也就是CMOS裡面的時間)。
第二步,
然後將node1配置成一個time server,修改/etc/ntp.conf,
[root@node1 ~]vi /etc/ntp.conf
其他的配置不怎麼需要改,只需要關注restrict的配置:
1. 注釋掉原來的restrict default ignore這一行,這一行本身是不響應任何的ntp更新請求,其實也就是禁用了本機的ntp server的功能,所以需要注釋掉。
2. 加入:restrict 192.168.1.0 mask 255.255.255.0 -- 讓192.168.1.0/24網段上的機器能和本機做時間同步
3. 這樣就可以了,記得下面的:
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
這兩行需要,這是讓本機的ntpd和本地硬體時間同步。
當然,我們也可以添加server xxx.xxx.xxx.xxx,讓他和其他的time server時間同步。
4. /etc/init.d/ntpd restart
5. chkconfig ntpd on
6. 修改iptables配置,將tcp和udp 123埠開放,這是ntp需要的埠,在/etc/services中可以查到這個埠。
第三步,
這樣node1就成為一台time server了,現在我們配置node2這台機器,也是修改/etc/ntp.conf ,
[root@node2 ~]vi /etc/ntp.conf
1. restrict default ignore這行保留為注釋狀態,因為sales不需要做time server
2. 注釋掉server 127.127.1.0, fudge 127.127.1.0 stratum 10這兩行,因為這台機器不需要和本地硬體時鍾同步了。
3. 加入server 192.168.1.101這行,和node1機器同步。
這樣就OK了。看看時間,已經和node1同步了。往後默認配置好像是5分鍾和time server同步一次。ntpdate命令是顯式的和某台機器做時間同步,以前將ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做這個時間
第四步,將ntpdate放到crontab中定期步也是可以的
[root@node2 ~]#vi ntpupdate.sh
/usr/sbin/ntpdate 192.168.1.101
[root@node2 ~]#chmod 755 ntpupdate.sh
[root@node2 ~]#crontab -e
*/1 * * * * /root/ntpupdate.sh
[root@node2 ~]#/etc/init.d/crond restart
『陸』 如何用linux一台伺服器時間去同步其他伺服器的時間
至少需要兩台linux伺服器,其中一台是NTP Server, 另一台是NTP client.
Linux NTP配置詳解 (Network Time Protocol)
LINUX絕大多數的發行版本都已經自帶了NTP程序,只須按以下配置即可。
相關配置文件
/etc/ntp.conf
NTP服務的主要配置文件,所有的更改全部在這里。
/usr/share/zoneinfo
由 tzdata 所提供,規定了各主要時區的時間設定文件,例如中國的時區設置文件是/usr/share/zoneinfo/Asia/Chongqing。
/etc/sysconfig/clock
Linux的主要時區設定文件。每次啟動後Linux操作系統會自動讀取這個文件來設定系統預設要顯示的時間。如這個文件內容為」ZONE=Asia/Chongqing」,則表示Linux操作系統的時間設定使用/usr/share/zoneinfo/Asia/Chongqing這個文件。
/etc/localtime
本地系統的時間設定文件,如果clock文件中規定了使用的時間設定文件為/usr/share/zoneinfo/Asia/Chongqing,Linux操作系統就會將Chongqing那個文件復制一份為/etc/localtime,所以系統的時間顯示就會以Chongqing那個時間設定文件為准。
相關的命令
/bin/date
這個我們最經常使用了,更改及輸出日期與時間命令。
/sbin/hwclock
使用hwclock才能將修改過後的時間寫入BIOS 。
/usr/sbin/ntpd
NTP服務的守護進程,配置文件為/etc/ntp.conf 。
/usr/sbin/ntpdate
用來連接NTP伺服器命令,比如ntpdate 192.168.6.51 。
/usr/sbin/ntpq
NTP查詢命令。
設置NTP伺服器
就如前邊說的NTP配置文檔只有一個 /etc/ntp.conf,看看我的ntp.conf
#紅字的是我添加的,其它為默認!
grep -Ev '^$|^#' /etc/ntp.conf
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 131.107.13.100 //允許該NTP伺服器進入
restrict 114.80.81.1 //沒有任何何參數的話,這表示『該 IP或網段不受任何限制』
restrict 202.118.1.199
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.0.0 nomodify //該網段可以進行校時
restrict 0.0.0.0 mask 0.0.0.0 notrust //拒絕沒有認證的用戶端
server time-nw.nist.gov prefer //prefer 該伺服器優先
server 0.rhel.pool.ntp.org
server 1.rhel.pool.ntp.org
server 2.rhel.pool.ntp.org
fudge 127.127.1.0 stratum 10
driftfile /var/lib/ntp/drift
keys /etc/ntp/keys
別忘了啟動NTP伺服器
/etc/init.d/ntp start
客戶端測試
對了客戶端只需要是用ntpdate命令即可,192.168.6.51 為ntp 伺服器ip 地址,就這么就簡單!
相關命令
ntpstat //列出我們的NTP 伺服器是否與上層連接。
synchronised to NTP server (131.107.13.100) at stratum 2
time correct to within 461 ms
polling server every 64 s
ntpq -p //列出目前我們的NTP伺服器 與上層NTP伺服器 的狀態,* 代表目前正在使用的上層 NTP伺服器
remote refid st t when poll reach delay offset jitter
==============================================================================
*131.107.13.100 .ACTS. 1 u 30 64 67 237.165 1.539 20.382
202.118.1.199 202.112.31.197 2 u 33 64 63 163.526 91.844 10.208
上邊只是簡單設置,沒有考慮安全方面如認證等等,如需更詳細請參考這里。
許可權管理使用 restrict 公式如下:
restrict IP mask [參數] / restrict 192.168.0.0 mask 255.255.0.0 nomodify
其中參數主要有底下這些:
* ignore:拒絕所有類型的NTP的連線;
* nomodfiy:用戶端不能使用NTPC與ntpq這兩支程式來修改伺服器的時間參數,但使用者端仍可透過這部主機來進行網路校時的;
* noquery:用戶端不能夠使用ntpq,NTPC等指令來查詢發表伺服器,等於不提供的NTP的網路校時冪;
* notrap:不提供陷阱這個遠端事件郵箱(遠程事件日誌)的功能。
* notrust:拒絕沒有認證的用戶端。
『柒』 linux硬體時間與系統時間同步
方法/步驟
打開Ubuntu虛擬機,在桌面空白處右鍵 -- 打開終端。
『捌』 如何在linux 上配置NTP 時間同步
一:NTP是網路時間同步協議,就是用來同步網路中各個計算機的時間的協議。
二:NTP服務端配置
2.1、檢查系統是否安裝了NTP包(linux系統一般自帶NTP4.2),沒有安裝我們直接使用yum命令在線安裝: yum install ntp
2.2、NTP服務端配置文件編輯: vim /etc/ntp.conf
結果:
restrict 控制相關許可權。
語法為: restrict IP地址 mask 子網掩碼 參數
其中IP地址也可以是default ,default 就是指所有的IP
參數有以下幾個:
ignore :關閉所有的 NTP 聯機服務
nomodify:客戶端不能更改服務端的時間參數,但是客戶端可以通過服務端進行網路校時。
notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網
noquery :不提供客戶端的時間查詢:用戶端不能使用ntpq,ntpc等命令來查詢ntp伺服器
notrap :不提供trap遠端登陸:拒絕為匹配的主機提供模式 6 控制消息陷阱服務。陷阱服務是 ntpdq 控制消息協議的子系統,用於遠程事件日誌記錄程序。
nopeer :用於阻止主機嘗試與伺服器對等,並允許欺詐性伺服器控制時鍾
kod : 訪問違規時發送 KoD 包。
restrict -6 表示IPV6地址的許可權設置。
root@www ~]#vim /etc/ntp.conf# 1. 先處理許可權方面的問題,包括放行上層伺服器以及開放區網用戶來源:restrict default kod nomodify notrap nopeer noquery <==拒絕 IPv4 的用戶restrict -6 default kod nomodify notrap nopeer noquery <==拒絕 IPv6 的用戶restrict 220.130.158.71 <==放行 tock.stdtime.gov.tw 進入本 NTP 伺服器restrict 59.124.196.83 <==放行 tick.stdtime.gov.tw 進入本 NTP 伺服器restrict 59.124.196.84 <==放行 time.stdtime.gov.tw 進入本 NTP 伺服器restrict 127.0.0.1 <==底下兩個是預設值,放行本機來源restrict -6 ::1restrict 192.168.100.0 mask 255.255.255.0 nomodify <==放行區網來源# 2. 設定主機來源,請先將原本的 [0|1|2].centos.pool.ntp.org 的設定註解掉:server 220.130.158.71 prefer <==以這部主機為最優先server 59.124.196.83server 59.124.196.84# 3.預設時間差異分析檔案與暫不用到的 keys 等,不需要更動它:driftfile /var/lib/ntp/driftkeys /etc/ntp/keys
ntpd、ntpdate的區別
下面是網上關於ntpd與ntpdate區別的相關資料。如下所示所示:
使用之前得弄清楚一個問題,ntpd與ntpdate在更新時間時有什麼區別。ntpd不僅僅是時間同步伺服器,它還可以做客戶端與標准時間伺服器進行同步時間,而且是平滑同步,並非ntpdate立即同步,在生產環境中慎用ntpdate,也正如此兩者不可同時運行。
時鍾的躍變,對於某些程序會導致很嚴重的問題。許多應用程序依賴連續的時鍾——畢竟,這是一項常見的假定,即,取得的時間是線性的,一些操作,例如資料庫事務,通常會地依賴這樣的事實:時間不會往回跳躍。不幸的是,ntpdate調整時間的方式就是我們所說的」躍變「:在獲得一個時間之後,ntpdate使用settimeofday(2)設置系統時間,這有幾個非常明顯的問題:
第一,這樣做不安全。ntpdate的設置依賴於ntp伺服器的安全性,攻擊者可以利用一些軟體設計上的缺陷,拿下ntp伺服器並令與其同步的伺服器執行某些消耗性的任務。由於ntpdate採用的方式是跳變,跟隨它的伺服器無法知道是否發生了異常(時間不一樣的時候,唯一的辦法是以伺服器為准)。
第二,這樣做不精確。一旦ntp伺服器宕機,跟隨它的伺服器也就會無法同步時間。與此不同,ntpd不僅能夠校準計算機的時間,而且能夠校準計算機的時鍾。
第三,這樣做不夠優雅。由於是跳變,而不是使時間變快或變慢,依賴時序的程序會出錯(例如,如果ntpdate發現你的時間快了,則可能會經歷兩個相同的時刻,對某些應用而言,這是致命的)。因而,唯一一個可以令時間發生跳變的點,是計算機剛剛啟動,但還沒有啟動很多服務的那個時候。其餘的時候,理想的做法是使用ntpd來校準時鍾,而不是調整計算機時鍾上的時間。
NTPD 在和時間伺服器的同步過程中,會把 BIOS 計時器的振盪頻率偏差——或者說 Local Clock 的自然漂移(drift)——記錄下來。這樣即使網路有問題,本機仍然能維持一個相當精確的走時。
『玖』 Linux 下的伺服器時間同步方案有哪些
大多數應用場景中,使用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 服務的機器都是不利的。
『拾』 linux系統如何設置時間同步
linux自帶了ntp服務
--
/etc/init.d/ntpd,這個服務不僅可以設置讓本機和某台/某些機器做時間同步,他本身還可以扮演一個time server的角色,讓其他機器和他同步時間。
配置文件就是/etc/ntp.conf。
為了測試,設置讓node2
--
192.168.1.102和node1
--
192.168.1.101做時間同步。
第一步,
node1做time
server,node1本身不和其他機器時間同步,就是取本地時間。
所以,先把node1機器的時間調准了:
[root@node1
~]date
-s
08/03/2011
[root@node1
~]date
-s 11:12:00
[root@node1
~]clock
-w
[root@node1
~]hwclock
--systohc
後兩個命令是把設置的時間寫到硬體時間中去(也就是cmos裡面的時間)。
第二步,
然後將node1配置成一個time
server,修改/etc/ntp.conf,
[root@node1
~]vi
/etc/ntp.conf
其他的配置不怎麼需要改,只需要關注restrict的配置:
1.
注釋掉原來的restrict
default
ignore這一行,這一行本身是不響應任何的ntp更新請求,其實也就是禁用了本機的ntp
server的功能,所以需要注釋掉。
2.
加入:restrict
192.168.1.0
mask
255.255.255.0
--
讓192.168.1.0/24網段上的機器能和本機做時間同步
3.
這樣就可以了,記得下面的:
server
127.127.1.0
#
local
clock
fudge
127.127.1.0
stratum
10
這兩行需要,這是讓本機的ntpd和本地硬體時間同步。
當然,我們也可以添加server
xxx.xxx.xxx.xxx,讓他和其他的time
server時間同步。
4.
/etc/init.d/ntpd
restart
5.
chkconfig
ntpd
on
6.
修改iptables配置,將tcp和udp
123埠開放,這是ntp需要的埠,在/etc/services中可以查到這個埠。
第三步,
這樣node1就成為一台time
server了,現在我們配置node2這台機器,也是修改/etc/ntp.conf
,
[root@node2
~]vi
/etc/ntp.conf
1.
restrict
default
ignore這行保留為注釋狀態,因為sales不需要做time
server
2.
注釋掉server
127.127.1.0,
fudge
127.127.1.0
stratum
10這兩行,因為這台機器不需要和本地硬體時鍾同步了。
3.
加入server
192.168.1.101這行,和node1機器同步。
這樣就ok了。看看時間,已經和node1同步了。往後默認配置好像是5分鍾和time
server同步一次。ntpdate命令是顯式的和某台機器做時間同步,以前將ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做這個時間
第四步,將ntpdate放到crontab中定期步也是可以的
[root@node2
~]#vi
ntpupdate.sh
/usr/sbin/ntpdate
192.168.1.101
[root@node2
~]#chmod
755
ntpupdate.sh
[root@node2
~]#crontab
-e
*/1
*
*
*
*
/root/ntpupdate.sh
[root@node2
~]#/etc/init.d/crond
restart