2018-01-08 | 4 Comments 最近公司的電腦一直遇到靈異現象,常常發生加入 AD 的電腦出現信任問題,查了 EventLog 也去 Google 了網路相關資料,為了產生新的 SID,sysprep 也跑了,這靈異事件還是會不定時發生。索性提早進行遷移 AD 到 Samba 的計劃,至少在除錯上,環境會比較熟悉… 以下操作皆在 Debian Stretch 下進行,用 Ubuntu 應該也是差不多的步驟… 安裝相關套件 先安裝相關套件,並把相關的服務停止並關閉: $ sudo apt install samba krb5-config winbind smbclient -y $ sudo systemctl stop smbd nmbd winbind $ sudo systemctl disable smbd nmbd winbind $ sudo systemctl mask smbd nmbd winbind smbd.service 是 standalone 的 samba 服務,取而代之的是 unmask samba-ad-dc 的 service,等做完後面的 domain provisioning 之後就可以啟動: $ sudo systemctl unmask samba-ad-dc $ sudo systemctl enable samba-ad-dc 設定 在開始往下跑前要做兩件事: 要確認 /etc/hosts 可以正確的解析這台機器的 FQDN 與 hostname 。 先把 smb.conf 搬走,讓後面的指令重新產生。如果不搬走會報錯: $ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig 上述兩點確認沒問題之後,接下來就是使用 samba-tool 來進行後續的操作。先看有哪些參數可以用: $ sudo samba-tool domain provision --help 阿斯… 參數好多阿,還是使用互動介面建立 domain controller 吧: $ sudo samba-tool domain provision 在互動介面下,有幾個問題要填: realm:通常就是你的完整 domain name,比方 PYLABS.ORG) domain:這個好像是為了相容 NT4 的設定,我會填入 PYLABS) dns forwarder:如果你跟我一樣選擇用預設值 SAMBA_INTERNAL 作為預設的 DNS Backend,那要額外指定一個 fowarder 作為對外查詢或是 recursive query(不知道這啥?去補一下 DNS 基礎知識吧),讓它轉送。我喜歡這樣的設定,因為可以讓我的 Samba AD 功能單純化,然後我可以弄一台 BIND DNS 搭配 views 來做內外的查詢分離。如果你不知道這要設啥… 欸,你就填入 “8.8.8.8 8.8.4.4” 吧(不含引號) 其他的用預設值,跑完之後,將新產生的 kerberos 設定檔做個 soft link 至 /etc 下: $ sudo mv /etc/krb5.conf /etc/krb5.conf.orig $ sudo ln -s /var/lib/samba/private/krb5.conf /etc/krb5.conf 然後設定 /etc/resolv.conf 指向到自己的 ip 後,就可以啟動相關服務測試一下了: $ sudo systemctl start samba-ad-dc 測試一下,沒有報錯的話就是 ok 惹: $ sudo smbclient -L localhost -U% $ sudo samba-tool domain level show 建立使用者帳號吧,比方建立一個 user1 帳號: $ sudo samba-tool user create user1 到這個階段,就可以隨便找一台 Windows,把 DNS 指向到這台 Samba 機器上,然後加入網域。如果可以使用 user1 帳號登入,那就代表基本功能都正常了。 起手式大概是這樣… 這是個巨大的坑阿 XD 參考資料 https://www.tecmint.com/install-samba4-active-directory-ubuntu/ https://server-world.info/en/note?os=Debian_9&p=samba&f=4 https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
作法就是,先弄一臺 samba 4,把它加入現有網域,然後再 promote 成 AD DC。步驟可參考 https://www.tecmint.com/join-additional-ubuntu-dc-to-samba4-ad-dc-failover-replication/ 與 samba-tool domain dcpromo 相關指令說明 回覆