忍者ブログ

ブランクがあるインフラエンジニアの備忘録

サーバ構築のメモ

SamabaでActive Directory構築④ DNSバックエンドの変更

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

SamabaでActive Directory構築④ DNSバックエンドの変更

◆SAMBA内蔵DNSからBINDへDNSの変更
 SAMBA内蔵のDNSは設定が容易ですが、レコードの登録機能と、DNSフォワーディング機能しかないのですが、BINDを利用するとSAMBAに加えBINDの設定も必要になりますが、BINDならばリゾルバキャッシュやスタブゾーンなど、Samba4内蔵DNSがサポートしていない機能も使用できるようになる利点があります。
以下にSamabaでActive Directory構築② ドメインコントローラーの追加で構築したSAMBAサーバーを使用して、BINDへDNSの変更を行います。


◆BIND等の設定
$ sudo apt-get install bind9 bind9utils
$ sudo samba_upgradedns --dns-backend=BIND9_DLZ
Reading domain information
DNS accounts already exist
No zone file /var/lib/samba/bind-dns/dns/AD.CO.JP.zone (normal)
DNS partitions already exist
Adding dns-dc1 account
check_spn_alias_collision: trying to add SPN 'DNS/dc1.ad.co.jp' on 'CN=dns-dc1,CN=Users,DC=ad,DC=co,DC=jp' when 'host/dc1.ad.co.jp' is on 'CN=DC1,OU=Domain Controllers,DC=ad,DC=co,DC=jp'
See /var/lib/samba/bind-dns/named.conf for an example configuration include file for BIND
and /var/lib/samba/bind-dns/named.txt for further documentation required for secure DNS updates
Finished upgrading DNS
You have switched to using BIND9_DLZ as your dns backend, but still have the internal dns starting. Please make sure you add '-dns' to your server services line in your smb.conf.

$ sudo named -v
BIND 9.18.28-0ubuntu0.24.04.1-Ubuntu (Extended Support Version) <id:>

$ sudo vi /etc/bind/named.conf
dlz "AD DNS Zone" {
    # For BIND 9.8.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9.so";
    # For BIND 9.9.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_9.so";
    # For BIND 9.10.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_10.so";
    # For BIND 9.11.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_11.so";
    # For BIND 9.12.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_12.so";
    # For BIND 9.14.x
    # database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_14.so";
    # For BIND 9.16.x
    database "dlopen /usr/local/samba/lib/bind9/dlz_bind9_16.so";
};
options {
     tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";
     minimal-responses yes;
};
;EOF

$ sudo ls -al /etc/krb5.conf
-rw-r--r-- 1 root root 173 Oct 14 17:55 /etc/krb5.conf

$ sudo chown root:bind /etc/krb5.conf  #bindユーザーに読み取り可能な設定に変更

$ sudo ls -al /etc/krb5.conf
-rw-r--r-- 1 root bind 173 Oct 14 17:55 /etc/krb5.conf

$ which nsupdate  #ユーティリティがドメインコントローラーに存在することを確認。
/usr/bin/nsupdate

$ sudo named-checkconf  #BINDの設定が有効であることを確認する。出力が無い場合は正常

$ sudo samba_upgradedns --dns-backend=BIND9_DLZ  #BIND9_DLZバックエンドへ自動再構成
Reading domain information
DNS accounts already exist
No zone file /var/lib/samba/bind-dns/dns/AD.CO.JP.zone (normal)
DNS partitions already exist
dns-dc1 account already exists
See /var/lib/samba/bind-dns/named.conf for an example configuration include file for BIND
and /var/lib/samba/bind-dns/named.txt for further documentation required for secure DNS updates
Finished upgrading DNS
You have switched to using BIND9_DLZ as your dns backend, but still have the internal dns starting. Please make sure you add '-dns' to your server services line in your smb.conf.

# sudo init 6    #再起動しないと正常動作しない?

#dc2も再起動しないと以下の様なエラーが出る

$ sudo samba-tool drs showrepl
(前略)
DC=ForestDnsZones,DC=ad,DC=co,DC=jp
        Default-First-Site-Name\DC2 via RPC
                DSA object GUID: 053ab0e8-ef92-446c-b90a-869cdb669824
                Last attempt @ Mon Oct 28 16:47:21 2024 UTC failed, result 121 (WERR_SEM_TIMEOUT)
                2 consecutive failure(s).
                Last success @ NTTIME(0)

#又、ユーザーを追加しても同期されないっぽい
◆dc1から動作確認
$ host -t A dc1.ad.co.jp
dc1.ad.co.jp has address 10.0.1.10
dc1.ad.co.jp has address 192.168.128.10

$ host -t SRV _kerberos._udp.ad.co.jp
_kerberos._udp.ad.co.jp has SRV record 0 100 88 dc1.ad.co.jp.
_kerberos._udp.ad.co.jp has SRV record 0 100 88 dc2.ad.co.jp.

$ host -t SRV _ldap._tcp.ad.co.jp
_ldap._tcp.ad.co.jp has SRV record 0 100 389 dc1.ad.co.jp.
_ldap._tcp.ad.co.jp has SRV record 0 100 389 dc2.ad.co.jp.

$ smbclient -L localhost -U%
        Sharename       Type      Comment
        ---------       ----      -------
        sysvol          Disk
        netlogon        Disk
        IPC$            IPC       IPC Service (Samba 4.19.5-Ubuntu)
SMB1 disabled -- no workgroup available
~ sudo samba-tool domain level show
Domain and forest function level for domain 'DC=ad,DC=co,DC=jp'
Forest function level: (Windows) 2008 R2
Domain function level: (Windows) 2008 R2
Lowest function level of a DC: (Windows) 2008 R2

c1:~$ sudo samba-tool drs showrepl
Default-First-Site-Name\DC1
DSA Options: 0x00000001
DSA object GUID: 2c69c819-28cd-4700-827e-b7afbc253708
DSA invocationId: e40865d1-2515-4027-a71a-4d00c1fd182d
==== INBOUND NEIGHBORS ====
DC=ForestDnsZones,DC=ad,DC=co,DC=jp
        Default-First-Site-Name\DC2 via RPC
                DSA object GUID: 053ab0e8-ef92-446c-b90a-869cdb669824
                Last attempt @ Mon Oct 28 16:56:31 2024 UTC was successful
                0 consecutive failure(s).
                Last success @ Mon Oct 28 16:56:31 2024 UTC
(中略)
==== KCC CONNECTION OBJECTS ====
Connection --
        Connection name: 9056e4e7-95ed-4612-ac4e-79f131aa2fbe
        Enabled        : TRUE
        Server DNS name : dc2.ad.co.jp
        Server DN name  : CN=NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ad,DC=co,DC=jp
                TransportType: RPC
                options: 0x00000001
Warning: No NC replicated for Connection!

dc1:~$ sudo samba-tool user add testuser10 Passw0rd #testuser10の追加
User 'testuser10' added successfully

dc1:~$ sudo samba-tool user list  #testuser10が追加されていることを確認
testuser2
dc2user
Guest
dns-dc1
krbtgt
dc1user
testuser1
dc20user
Administrator
testuser10

◆dc2から動作確認
dc2:~$ sudo samba-tool user list  #testuser10が追加されていることを確認
testuser2
dc2user
Guest
dns-dc1
krbtgt
dc1user
testuser1
dc20user
Administrator
testuser10

dc2:~$ sudo samba-tool user delete testuser10 #testuser10削除
Deleted user testuser10
dc2:~$ sudo samba-tool user list
testuser2
dc2user
Guest
dns-dc1
testuser20
krbtgt
dc1user
testuser1
dc20user
Administrator

◆dc1から動作確認
dc1:~$ sudo samba-tool user list  #testuser10が削除されていることを確認
testuser2
dc2user
Guest
dns-dc1
testuser20
krbtgt
dc1user
testuser1
dc20user
Administrator



◆Windowsクライアントからドメイン参加
・ドメインコントローラーで新しいユーザーを作成します

d2:~$ sudo samba-tool user add testuser22 Passw0rd
User 'testuser22' added successfully

・Windowsクライアントをドメインに参加させます。






上記の様にWindowsマシンがドメインに参加できれば成功です。

例題
アクティブディレクトリの名前解決 - Linux技術者認定 LinuC | LPI-Japan

参考
BIND9 DLZ DNS バックエンド - SambaWiki
PR

コメント

プロフィール

HN:
のらくら
性別:
非公開
自己紹介:
介護と自身の手術でブランクが出来たインフラエンジニアの学習メモ。VirtualBOXで仮想サーバーを建て、GNS3でCiscoルーター&スイッチによるネットワークのエミュレーションもしています。GNS3ネットワーク内に仮想サーバーと連携させて、実際のネットワーク環境におけるサーバーをシミュレートする他、LinuC level3 300の対策もしています。

P R