05 DNSサーバ構築 - shinosuke8038/shinosuke8038-vsphere-kb-9633 GitHub Wiki

まえがき

前項:「04 CentOS8 インストール」
インストールしたCentOSの基本的な設定を追加します。
また、DNSサーバとして必要な設定を追加します。


1.OS基本設定

  1. rootユーザでログインします。
[root@nwsv01]
  1. SELinuxを無効化します。
### SELinuxの状態を確認
[root@nwsv01] getenforce  
Enforcing  

### 「SELINUX=enforcing」を「SELINUX=disabled」に修正
[root@nwsv01] vi /etc/selinux/config  

### 再起動後に、SELinuxの状態を確認
[root@nwsv01] reboot  
[root@nwsv01] getenforce
Disabled

  1. IPアドレスを設定します。
### コネクションの確認
[root@nwsv01]# nmcli con show
NAME    UUID                                  TYPE      DEVICE
ens192  XXXXXXXX-XXXX-XXXX-XXXXXXXXXXXXXXXXX  ethernet  ens192

### IPアドレスと自動接続の設定
[root@nwsv01]# nmcli con mod ens192 ipv4.method manual ipv4.address 192.168.0.22/24
[root@nwsv01]# nmcli con mod ens192 autoconnect yes

### コネクションの接続
[root@nwsv01]# nmcli con up ens192
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/X)

### IPアドレスが設定されていることを確認
[root@nwsv01]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:XX:XX:XX brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.22/24 brd 192.168.0.255 scope global noprefixroute ens192
       valid_lft forever preferred_lft forever
    inet6 fe80::XXXX:XXXX:XXXX:XXXX/64 scope link noprefixroute
       valid_lft forever preferred_lft forever



2.dnfリポジトリ設定

  1. vm_nwsv01の「設定の編集」を開きます。



  1. 「CD/DVD ドライブ」の「接続」にチェックを入れ「保存」をクリックします。



  1. コンソールで以下コマンドを実行します。
### ISOファイルのマウント先のディレクトリを作成
[root@nwsv01]# mkdir /media/centos8

### ISOファイルのマウント
[root@nwsv01]# mount -t iso9660 -o ro,loop /dev/sr0 /media/centos8

###リポジトリ設定ファイルの作成
[root@nwsv01]# vi /etc/yum.repos.d/InstallMedia.repo

---以下、InstallMedia.repoの内容---
[InstallMedia-BaseOS]
name=CentOS Stream $releasever - BaseOS
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///media/centos8/BaseOS/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

[InstallMedia-AppStream]
name=CentOS Stream $releasever - AppStream
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///media/centos8/AppStream/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
---以上、InstallMedia.repoの内容---



3.DNSサーバ設定

本項ではBINDを使用してDNSサーバを実装します。

  1. パッケージのインストール
[root@nwsv01] dnf -y --disablerepo=\* --enablerepo=InstallMedia-* install bind bind-chroot bind-utils
  1. named.confの編集
### named.confをコピー
[root@nwsv01]# cd /etc
[root@nwsv01]# cp -p named.conf named.conf_`date +%Y%m%d`
[root@nwsv01]# ls
crypto-policies  named       named.conf_20210312  named.root.key  protocols
localtime        named.conf  named.rfc1912.zones  pki             services

### named.confを編集
[root@nwsv01]# vi named.conf

named.conf

options {
        listen-on port 53 { localhost; };
        #listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { localnets; };

        recursion yes;

        dnssec-enable no;
        dnssec-validation no;

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";

        /* https://fedoraproject.org/wiki/Changes/CryptoPolicy */
        include "/etc/crypto-policies/back-ends/bind.config";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

view "internal" {
        match-clients { localnets; };

        zone "." IN {
                type hint;
                file "named.ca";
        };

        zone "network.test" {
                type master;
                file "network.test";
        };

        zone "0.168.192.in-addr.arpa" {
                type master;
                file "0.168.192.in-addr.arpa.rev";
        };

        include "/etc/named.rfc1912.zones";
        include "/etc/named.root.key";
};
  1. 正引きゾーンファイルの作成
[root@nwsv01] cd /var/named
[root@nwsv01] vi network.test

network.test

$TTL 3600
@                IN      SOA nwsv01.test.network. root.test.network. (
                         20210312   ; serial
                         3600       ; refresh
                         600        ; retry
                         604800     ; expire
                         86400      ; minimum
)

                 IN      NS     nwsv01.test.network.
pesx01           IN      A      192.168.0.10
cesx01           IN      A      192.168.0.11
cesx02           IN      A      192.168.0.12

vcsa01           IN      A      192.168.0.21
nwsv01           IN      A      192.168.0.22
vcin01           IN      A      192.168.0.23
  1. 逆引きゾーンファイルの作成
[root@nwsv01] cd /var/named
[root@nwsv01] vi 0.168.192.in-addr.arpa.rev

0.168.192.in-addr.arpa.rev

$TTL 3600
@                IN      SOA nwsv01.network.test. root.network.test. (
                         20210312   ; serial
                         3600       ; refresh
                         600        ; retry
                         604800     ; expire
                         86400      ; minimum
)

                 IN      NS    nwsv01.network.test.
10               IN      PTR   pesx01.network.test.
11               IN      PTR   cesx01.network.test.
12               IN      PTR   cesx02.network.test.

21               IN      PTR   vcsa01.network.test.
22               IN      PTR   nwsv01.network.test.
23               IN      PTR   vcin01.network.test.
  1. firewall設定
### dnsサービスを許可
[root@nwsv01]# firewall-cmd --permanent --add-service=dns --zone=public
success
[root@nwsv01]# firewall-cmd --reload
success

### 許可サービスにdnsが追加されていることを確認
[root@nwsv01]# firewall-cmd --permanent --list-services --zone=public
cockpit dhcpv6-client dns ssh
  1. bind-chrootの起動
[root@nwsv01]# systemctl enable --now named-chroot

4.DNSクライアント設定

  1. NetworkManager 設定で DNS 処理を無効にする
### 設定ファイルを作成
[root@nwsv01]# vi /etc/NetworkManager/conf.d/90-dns-none.conf

---以下、90-dns-none.confのファイル内容---
[main]
dns=none
---以上、90-dns-none.confのファイル内容---
  1. 名前解決に使用するDNSサーバを指定
### 設定ファイルの編集
[root@nwsv01]# vi /etc/resolv.conf

---以下、resolv.confのファイル内容---
nameserver     192.168.0.22
domain         network.test
---以上、resolv.confのファイル内容---

[root@nwsv01]# systemctl reload NetworkManager

### NetworkManagerによりresolv.confが上書きされていないことを確認
[root@nwsv01]# cat /etc/resolv.conf
nameserver     192.168.0.22
domain         network.test
  1. DNS動作確認
### 正引きができることを確認
[root@nwsv01 named]# nslookup nwsv01
Server:         192.168.0.22
Address:        192.168.0.22#53

Name:   nwsv01.network.test
Address: 192.168.0.22

### 逆引きができることを確認
[root@nwsv01 named]# nslookup 192.168.0.22
22.0.168.192.in-addr.arpa       name = nwsv01.network.test.

あとがき

DNSができたので次はvCenterのインストーラを起動するためのサーバを作成します。



次項:「06 Ubuntu インストール」

⚠️ **GitHub.com Fallback** ⚠️