この前は、「【Linux】Samba 4.0.1 から Win2008R2 の AD へレプリケーションしてみた」でしたが今回は逆の備忘録を書いときます。

■検証環境
windc-samba同期

Noホスト名(FQDN)OSIPアドレス備考
1ad2.kurobuti.comCentOS 6.3 64bitIP : 192.168.0.230AD(DC)
2ad.kurobuti.comWindows 2008 R2 64bitIP : 192.168.0.231AD(DC)
3nfsserver.localCentOS 6.3 64bitIP : 192.168.0.200NFSサーバ
4vSwitch1(ラベル名)-IP : 192.168.0.0/24仮想スイッチ
5Firewall-IP : 192.168.0.1GW


■説明
ここでは、samba 4.0.1 で DC を作ってそれに Windows 2008 R2 が同期するようにしてみます。
samba 4.0.1 のインストールは以下インストール手順の「(4)AD の設定」まで同じです。

■インストール手順
http://www.kurobuti.com/blog/?p=6278

■Samba
バージョン: 4.0.1
DL先: http://ftp.samba.org/pub/samba/old-versions/

■その他情報
ドメイン: kurobuti.com
パスは「/usr/local/samba/bin:/usr/local/samba/sbin」を通しています。
 


 

 

(2)DNS の設定

[root@ad2 ~]# vi /etc/resolv.conf
# Generated by NetworkManager
domain kurobuti.com
nameserver 192.168.0.230

 

(3)Kerberos の設定

[root@ad2 ~]# cp /usr/local/samba/private/krb5.conf /etc/
cp: `/etc/krb5.conf' を上書きしてもよろしいですか(yes/no)? yes
[root@ad2 ~]# cat /etc/krb5.conf
[libdefaults]
        default_realm = KUROBUTI.COM
        dns_lookup_realm = false
        dns_lookup_kdc = true

 

(4)samba の起動

[root@ad2 ~]# samba
[root@ad2 ~]# ps axu | grep samba
root     20114 14.0  2.0 489572 40272 ?        Ss   21:01   0:00 samba
root     20115  0.0  1.4 489572 28392 ?        S    21:01   0:00 samba
root     20116  0.0  1.5 489572 29248 ?        S    21:01   0:00 samba
root     20117 14.5  2.1 527040 42000 ?        Ss   21:01   0:00 /usr/local/samba/sbin/smbd --option=server role check:inhibit=yes --foreground
root     20118  0.0  1.5 489572 30036 ?        S    21:01   0:00 samba
root     20119  0.0  1.4 489572 28364 ?        S    21:01   0:00 samba
root     20120 21.0  1.5 489572 29512 ?        R    21:01   0:00 samba
root     20121  0.0  1.5 489572 28956 ?        S    21:01   0:00 samba
root     20122  0.0  1.5 489572 30480 ?        S    21:01   0:00 samba
root     20123  0.0  1.5 489572 29736 ?        S    21:01   0:00 samba
root     20124  0.0  1.5 493032 29952 ?        S    21:01   0:00 samba
root     20125  0.0  1.4 489572 28504 ?        S    21:01   0:00 samba
root     20126  0.0  1.5 489572 29476 ?        S    21:01   0:00 samba
root     20127  0.0  1.5 489572 29400 ?        S    21:01   0:00 samba
root     20128  0.0  1.5 489992 30480 ?        S    21:01   0:00 samba
root     20130 19.5  2.6 602668 51140 ?        R    21:01   0:00 python /usr/local/samba/sbin/samba_dnsupdate
root     20132  2.0  1.5 527040 29148 ?        S    21:01   0:00 /usr/local/samba/sbin/smbd --option=server role check:inhibit=yes --foreground

 

(5)Windows AD の構築

5-1.  検索部分に「dcpromo」と入力

01

 

5-2. ドメイン サービス インストール ウィザード

02

「次へ」をクリックする。
 

5-3. オペレーティング システムの互換

03

「次へ」をクリックする。
 

5-4. 展開の構成の選択

04

「既存のフォレスト(F)」を選択して「既存のドメインコントローラーを追加する(A)」を選択し「次へ」をクリックする。
 

5-5. ネットワーク資格情報

05

「このドメイン コントローラーをインストールするフォトレス内のドメイン名を入力してください(T):」にドメイン名を入力してエンターを押す。

06
ドメインの「管理者ユーザー名(Administrator)」と「パスワード」を入力して「OK」をクリックする。

07
「代替の資格情報(A)」に入力されたら「次へ」をクリックする。
 

5-6. ドメインの選択

08
そのまま「次へ」をクリックする。
 

5-7. サイトの選択

09
そのまま「次へ」をクリックする。
 

5-8. 追加のドメイン コントローラー オプション

10
「DNS サーバ(D)」のチェックを外して「次へ」をクリックする。
 

5-9. データベース、ログ ファイル、および SYSVOL の場所

11
特に問題無ければ「次へ」をクリックする。
 

5-10. ディレクトリ サービス復旧モード Administrator パスワード

12
「パスワード」を入力して「次へ」をクリックする。
 

5-11. 概要

13
特に問題が無ければ「次へ」をクリックして同期を開始する。
 

5-12. 同期開始

14
 

5-13. 同期完了

15
同期が終わったら「完了」をクリックしてOSを再起動する。
 

(6)DNS レコード確認

[root@ad2 ~]# ldbsearch -H /usr/local/samba/private/sam.ldb '(invocationid=*)' --cross-ncs objectguid
# record 1
dn: CN=NTDS Settings,CN=AD2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=kurobuti,DC=com
objectGUID: c776b9d3-8cf8-41df-992c-156f8d480849

# record 2
dn: CN=NTDS Settings,CN=AD,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=kurobuti,DC=com
objectGUID: 937a0ff8-7f69-4302-af92-d2c213298977

# returned 2 records
# 2 entries
# 0 referrals

[root@ad2 ~]# dig 937a0ff8-7f69-4302-af92-d2c213298977._msdcs.kurobuti.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.6 <<>> 937a0ff8-7f69-4302-af92-d2c213298977._msdcs.kurobuti.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37695
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;937a0ff8-7f69-4302-af92-d2c213298977._msdcs.kurobuti.com. IN A

;; ANSWER SECTION:
937a0ff8-7f69-4302-af92-d2c213298977._msdcs.kurobuti.com. 600 IN CNAME AD.kurobuti.com.
AD.kurobuti.com.        1200    IN      A       192.168.0.231

;; Query time: 2 msec
;; SERVER: 192.168.0.230#53(192.168.0.230)
;; WHEN: Wed Feb  6 23:08:25 2013
;; MSG SIZE  rcvd: 107

[root@ad2 ~]# dig ad.kurobuti.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.6 <<>> ad.kurobuti.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50953
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ad.kurobuti.com.               IN      A

;; ANSWER SECTION:
ad.kurobuti.com.        1200    IN      A       192.168.0.231

;; Query time: 1 msec
;; SERVER: 192.168.0.230#53(192.168.0.230)
;; WHEN: Wed Feb  6 23:07:26 2013
;; MSG SIZE  rcvd: 49

レコードが登録されていることを確認します。
もし、されていない場合は手動でします。
登録の仕方は以下アドレスの「(4)DNSレコード確認」を参照してください。
http://www.kurobuti.com/blog/?p=6517
 

(7)samba の再起動

[root@ad2 ~]# killall samba
[root@ad2 ~]# rm -rf /usr/local/samba/var/run/samba.pid
[root@ad2 ~]# samba

 

(8)samba で同期確認

[root@ad2 ~]# samba-tool drs showrepl
Default-First-Site-Name\AD2
DSA Options: 0x00000001
DSA object GUID: ebf7616e-3289-4d02-90be-89d822e27a4d
DSA invocationId: c73c8ff5-b403-4c4d-bfdb-2227fb4f32d6

==== INBOUND NEIGHBORS ====

DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:55 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:55 2013 JST

CN=Schema,CN=Configuration,DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:56 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:56 2013 JST

CN=Configuration,DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:56 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:56 2013 JST

==== OUTBOUND NEIGHBORS ====

DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:28 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:28 2013 JST

CN=Schema,CN=Configuration,DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:28 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:28 2013 JST

CN=Configuration,DC=kurobuti,DC=com
        Default-First-Site-Name\AD via RPC
                DSA object GUID: edb0c973-9447-4de8-876c-6c7ebff6207f
                Last attempt @ Wed Feb  6 21:44:28 2013 JST was successful
                0 consecutive failure(s).
                Last success @ Wed Feb  6 21:44:28 2013 JST

==== KCC CONNECTION OBJECTS ====

Connection --
        Connection name: 9dc4d4c7-d075-4266-9307-8405eb8eacfc
        Enabled        : TRUE
        Server DNS name : AD.kurobuti.com
        Server DN name  : CN=NTDS Settings,CN=AD,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=kurobuti,DC=com
                TransportType: RPC
                options: 0x00000001
Warning: No NC replicated for Connection!

Windows OS の再起動後に上のように表示されれば大丈夫です:)
もし、以下のようなエラーが表示される場合は時間を置いて再度コマンドを実行する(接続オブジェクトが作成されるまで少し時間がかかります)か、sambaをもう一度再起動してみてください。または、「(3) Kerberos の設定」を確認してみてください。

・エラー

==== KCC CONNECTION OBJECTS ====

ERROR(<type 'exceptions.KeyError'>): uncaught exception - 'No such element'
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/__init__.py", line 175, in _run
    return self.run(*args, **kwargs)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/drs.py", line 175, in run
    c_server_dns = c_server_res[0]["dnsHostName"][0]

 

(9)Windowsでの確認

9-1. 「Active Directory ユーザーとコンピューター」を起動

16
 

9-2. Win DC のプロパティを表示

17
「Domain Controllers」 -> 「AD」 を選択して右クリック -> 「プロパティ」をクリックする。
 

9-3. NTDS 設定表示

18
 

9-4. NTDS Settings のプロパティ表示

19
「接続」タブ -> 「レプリケート元(F)」に表示されていることを確認します。
もし、ここで表示されていない場合は KCCで接続オブジェクトが作成されていません。

後は、Windwos上からユーザーを追加したりSambaからユーザーを追加したりして即時同期されている事を確認します。
 

参考文献

1. http://www.samba.org/tridge/Samba4Demo/s4demo4.ogv
2. https://wiki.samba.org/index.php/Samba_AD_DC_HOWTO


2月 8, 2013 at 12:43 am by 黒ぶちメガネ
Category: Linux, samba