arinux

Linux サーバー設定備忘録
<< openLDAP 構築(55) - LDAP sdb back-end for BIND9 (2) | main | Moodle (1) - インストール >>
openLDAP 構築(56) - LDAP sdb back-end for BIND9 (3)


メモ LDAP による zone 検索の設定


  1. https://cvs.bayour.com/cgi-bin/cvsweb/bind9-ldap/schema/dnszone-schema.txt から、
    「dnszone-schema.txt」 をダウンロードして、「/usr/local/etc/openldap/schema」 に置きます。


  2. schema のファイル名を変更します。
    [root]# cd /usr/local/etc/openldap/schema
    [root]# mv dnszone-schema.txt dnszone.schema
    


  3. slapd.conf に以下を追加します。
    [root]# cd /usr/local/etc/openldap
    [root]# vi slapd.conf
    
    include         /usr/local/etc/openldap/schema/dnszone.schema
    


  4. slapd を再起動します。
    [root]# /etc/rc.d/init.d/slapd restart
    Stopping slapd
    Starting slapd
    


  5. 「master.conf」 を、以下のように書き換えます。
    [root]# cd /usr/local/bind9/etc
    [root]# vi master.conf
    
    #zone "examples.com" in { type master; file "zone/examples.com"; };
    #zone "test15.examples.com" in { type master; file "zone/test15.examples.com"; };
    
    zone "examples.com" in {
         type master;
         database "ldap ldap://127.0.0.1/ou=examples.com,ou=dns,dc=examples,dc=com 86400";
    };
    
    # サブドメインに対する zone 指定は記述しません。
    


  6. DNS 用の ou(organizationalUnit) の LDIF ファイルを作成して、エントリーを追加します。
    [root]# cd <任意のディレクトリ>
    [root]# vi oudn_dns.ldif
    
    dn: ou=dns,dc=examples,dc=com
    objectClass: organizationalUnit
    ou: dns
    
    [root]# ldapadd -x -W -D "cn=Manager,dc=examples,dc=com" -f ./oudn_dns.ldif
    Enter LDAP Password:
    adding new entry "ou=dns,dc=examples,dc=com"
    


  7. examples.com の zone に対する LDIF ファイルを作成して、エントリーを追加します。
    [root]# cd <任意のディレクトリ>
    [root]# vi zone_examples.com.ldif
    
    dn: ou=examples.com,ou=dns,dc=examples,dc=com
    objectClass: organizationalUnit
    ou: examples.com
    
    dn: relativeDomainName=@,ou=examples.com,ou=dns,dc=examples,dc=com
    objectClass: dNSZone
    relativeDomainName: @
    zoneName: examples.com
    dNSTTL: 86400
    dNSClass: IN
    sOARecord: ns0.examples.com. root.localhost. 2008032401 3600 900 604800 86400
    nSRecord: ns0.examples.com.
    mXRecord: 10 mail.examples.com.
    aRecord: 192.168.1.15
    
    [root]# ldapadd -x -W -D "cn=Manager,dc=examples,dc=com" -f ./zone_examples.com.ldif
    Enter LDAP Password:
    adding new entry "ou=examples.com,ou=dns,dc=examples,dc=com"
    adding new entry "relativeDomainName=@,ou=examples.com,ou=dns,dc=examples,dc=com"
    


  8. named を再起動します。
    [root]# /etc/rc.d/init.d/named restart
    Stopping named
    Starting named                                     [  OK  ]
    


  9. 正しくゾーン情報が引けるかを確認します。
    [root]# dig @127.0.0.1 examples.com ANY +norec
    
    ; <<>> DiG 9.2.4 <<>> @127.0.0.1 examples.com ANY +norec
    ; (1 server found)
    ;; global options:  printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65109
    ;; flags: qr aa; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0
    
    ;; QUESTION SECTION:
    ;examples.com.                  IN      ANY
    
    ;; ANSWER SECTION:
    examples.com.           86400   IN      SOA     ns0.examples.com. root.localhost. 2008032401
     3600 900 604800 86400
    examples.com.           86400   IN      NS      ns0.examples.com.
    examples.com.           86400   IN      MX      10 mail.examples.com.
    examples.com.           86400   IN      A       192.168.1.15
    
    ;; Query time: 2 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Tue Jul  8 17:48:13 2008
    ;; MSG SIZE  rcvd: 135
    


  10. サブドメインの zone に対する LDIF ファイルを作成して、エントリーを追加します。
    [root]# cd <任意のディレクトリ>
    [root]# vi zone_sub_examples.com.ldif
    
    dn: relativeDomainName=test15,ou=examples.com,ou=dns,dc=examples,dc=com
    objectClass: dNSZone
    relativeDomainName: test15
    relativeDomainName: abc
    relativeDomainName: kyt.jpn
    zoneName: examples.com
    aRecord: 192.168.1.15
    mXRecord: 10 test15.examples.com.
    
    [root]# ldapadd -x -W -D "cn=Manager,dc=examples,dc=com" -f ./zone_sub_examples.com.ldif
    Enter LDAP Password:
    adding new entry "relativeDomainName=test15,ou=examples.com,ou=dns,dc=examples,dc=com"
    
    虫眼鏡 relativeDomainName と nSRecord


    • 「relativeDomainName」 は、CNAME(Canonical Name: 別名) と同じ働きをします。但し、「relativeDomainName: @」 に対しては利用できません。
    • サブドメインに対する zone エントリーの中に、「nSRecord」 を含めると、Aレコードや MXレコードが引けなくなります。サブドメインに対しては、上記のように 「nSRecord」 は書きません。


  11. 正しくゾーン情報が引けるかを確認します。
    [root]# dig @127.0.0.1 test15.examples.com ANY +norec
    
    ; <<>> DiG 9.2.4 <<>> @127.0.0.1 test15.examples.com ANY +norec
    ; (1 server found)
    ;; global options:  printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58110
    ;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 0
    
    ;; QUESTION SECTION:
    ;test15.examples.com.           IN      ANY
    
    ;; ANSWER SECTION:
    test15.examples.com.    86400   IN      A       192.168.1.15
    test15.examples.com.    86400   IN      MX      10 test15.examples.com.
    
    ;; AUTHORITY SECTION:
    examples.com.           86400   IN      NS      ns0.examples.com.
    
    ;; Query time: 6 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Wed Jul  9 10:07:41 2008
    ;; MSG SIZE  rcvd: 87
    
    [root]# dig @127.0.0.1 abc.examples.com ANY +norec
    
    ; <<>> DiG 9.2.4 <<>> @127.0.0.1 abc.examples.com ANY +norec
    ; (1 server found)
    ;; global options:  printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38573
    ;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1
    
    ;; QUESTION SECTION:
    ;abc.examples.com.              IN      ANY
    
    ;; ANSWER SECTION:
    abc.examples.com.       86400   IN      A       192.168.1.15
    abc.examples.com.       86400   IN      MX      10 test15.examples.com.
    
    ;; AUTHORITY SECTION:
    examples.com.           86400   IN      NS      ns0.examples.com.
    
    ;; ADDITIONAL SECTION:
    test15.examples.com.    86400   IN      A       192.168.1.15
    
    ;; Query time: 6 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Wed Jul  9 10:08:13 2008
    ;; MSG SIZE  rcvd: 107
    
    [root]# dig @127.0.0.1 kyt.jpn.examples.com ANY +norec
    
    ; <<>> DiG 9.2.4 <<>> @127.0.0.1 kyt.jpn.examples.com ANY +norec
    ; (1 server found)
    ;; global options:  printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55153
    ;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1
    
    ;; QUESTION SECTION:
    ;kyt.jpn.examples.com.          IN      ANY
    
    ;; ANSWER SECTION:
    kyt.jpn.examples.com.   86400   IN      A       192.168.1.15
    kyt.jpn.examples.com.   86400   IN      MX      10 test15.examples.com.
    
    ;; AUTHORITY SECTION:
    examples.com.           86400   IN      NS      ns0.examples.com.
    
    ;; ADDITIONAL SECTION:
    test15.examples.com.    86400   IN      A       192.168.1.15
    
    ;; Query time: 11 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Wed Jul  9 10:08:46 2008
    ;; MSG SIZE  rcvd: 111
    



ここまで

| arinux | openldap | 13:29 | comments(1) | trackbacks(0) | pookmark |
管理者の承認待ちコメントです。
| - | 2018/05/13 11:45 PM |









http://arinux.net/trackback/76
      1
2345678
9101112131415
16171819202122
23242526272829
30      
<< September 2018 >>
+ SELECTED ENTRIES
+ RECENT COMMENTS
+ RECENT TRACKBACK
+ CATEGORIES
+ ARCHIVES
+ 掲載予定のタイトル
  • Wordpress
  • Pukiwiki
  • SMTPs/POPs/IMAPs
  • fml
  • Tips
+ CSS Nite
+ MOBILE
qrcode
+ LINKS
+ RECOMMEND
+ PROFILE