使用Windows 10的RSAT工具來管理Samba4活動目錄架構 (三)
這一節的Samba4 AD DC 架構系列文章,我們將會討論如何把 Windows 10 系統的電腦添加到 Samba4 域環境中,以及如何在 Windows 10 系統下管理域環境。
一旦 Windows 10 系統加入到 Samba4 AD DC ,我們就可以在 Windows 10 系統中創建、刪除或者禁用域用戶和組了,可以創建新的組織單元,創建、編輯和管理域策略,還可以管理 Samba4 域 DNS 服務。
上面所有的功能和其它一些復雜的與域管理相關的工作都可以通過 Windows 環境下的 RSAT 工具來完成—— Microsoft 遠程服務器管理工具。
要求
1、 在 Ubuntu 系統上使用 Samba4 來創建活動目錄架構(一)
2、 在 Linux 命令行下管理 Samba4 AD 架構(二)
***步:配置域時間同步
1、在使用 Windows 10 系統的 RSAT 工具來管理 Samba4 ADDC 之前,我們需要了解與活動目錄相關的一個很重要的服務,該服務要求精確的時間同步。
在大多數的 Linux 發行版中,都由 NTP 進程提供時間同步機制。AD 環境默認允許***的時間差距是 5 分鐘。
如果時間差距超過 5 分鐘,你將會遇到各種各樣的異常報錯,最嚴重的會影響到 AD 用戶、域成員服務器或共享訪問等。
為了在 Ubuntu 系統中安裝網絡時間協議進程和 NTP 客戶端工具,可執行以下命令:
- $ sudo apt-get install ntp ntpdate
在 Ubuntu 系統下安裝 NTP 服務
2、下一步,修改 NTP 配置文件,使用一個離你最近的 NTP 服務地址列表替換默認的 NTP 池服務列表。
NTP 服務器地址列表可以從 NTP 地址庫項目官方網站獲取:http://www.pool.ntp.org/en/。
- $ sudo nano /etc/ntp.conf
在每一行 pool 前添加一個 # 符號以注釋默認的服務器列表,并替換為適合你的 NTP 服務器地址,如下圖所示:
- pool 0.ro.pool.ntp.org iburst
- pool 1.ro.pool.ntp.org iburst
- pool 2.ro.pool.ntp.org iburst
- # Use Ubuntu's ntp server as a fallback.
- pool 3.ro.pool.ntp.org
在 Ubuntu 系統下配置 NTP 服務
3、此時,先不要關閉該文件。移動光標到文件頂部,在 driftfile 參數后面添加下面一行內容。該設置是為了讓客戶端查詢該服務時使用 AD 的 NTP 簽署請求。
- ntpsigndsocket /var/lib/samba/ntp_signd/
使用 NTP 來同步 AD
4、***,移動光標到文件底部并添加如下一行內容,如截圖所示,僅允許網絡客戶端查詢該服務器上的時間。
- restrict default kod nomodify notrap nopeer mssntp
限制 NTP 服務的查詢客戶端
5、設置完成之后,保存并關閉 NTP 配置文件,為了讓 NTP 服務讀取 ntp_signed 目錄,需要授予 NTP 服務合適的權限。
以下是 Samba NTP socket 的系統路徑。之后,重啟 NTP 服務以應用更改,并使用 netstat 命令與grep 過濾相接合來檢查 NTP 服務是否正常。
- $ sudo chown root:ntp /var/lib/samba/ntp_signd/
- $ sudo chmod 750 /var/lib/samba/ntp_signd/
- $ sudo systemctl restart ntp
- $ sudo netstat –tulpn | grep ntp
給 NTP 服務授權
使用 ntpq 命令行工具來監控 NTP 進程,加上 -p 參數來顯示摘要信息。
- $ ntpq -p
監控 NTP 服務器池
第二步:處理 NTP 時間同步異常問題
6、有時候 NTP 進程在嘗試與上游 ntp 服務端同步時間的計算過程中會卡住,導致客戶端使用 ntpdate 工具手動強制同步時間時報如下錯誤:
- # ntpdate -qu adc1
- ntpdate[4472]: no server suitable for synchronization found
NTP 時間同步異常
ntpdate 命令加上 -d 調試選項:
- # ntpdate -d adc1.tecmint.lan
- Server dropped: Leap not in sync
NTP Server Dropped Leap Not in Sync
7、為了避免出現該問題,使用下面的方法來解決這個問題:在服務器上停止 NTP 服務,使用 ntpdate 客戶端工具加上 -b 參數指定外部 peer 地址來手動強制同步時間,如下圖所示:
- # systemctl stop ntp.service
- # ntpdate -b 2.ro.pool.ntp.org [你的 ntp peer]
- # systemctl start ntp.service
- # systemctl status ntp.service
強制 NTP 時間同步
8、當時間正確同步之后,啟動服務器上的 NTP 服務,并且在客戶端服務器上執行如下命令來驗證 NTP 時間同步服務是否可用:
- # ntpdate -du adc1.tecmint.lan [你的 AD DC 服務器]
驗證 NTP 時間同步
至此, NTP 服務應該已經工作正常了。