05 DNSサーバ構築 - shinosuke8038/shinosuke8038-vsphere-kb-9633 GitHub Wiki
前項:「04 CentOS8 インストール」
インストールしたCentOSの基本的な設定を追加します。
また、DNSサーバとして必要な設定を追加します。
- rootユーザでログインします。
[root@nwsv01]
- SELinuxを無効化します。
### SELinuxの状態を確認
[root@nwsv01] getenforce
Enforcing
### 「SELINUX=enforcing」を「SELINUX=disabled」に修正
[root@nwsv01] vi /etc/selinux/config
### 再起動後に、SELinuxの状態を確認
[root@nwsv01] reboot
[root@nwsv01] getenforce
Disabled
- 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
- vm_nwsv01の「設定の編集」を開きます。
- 「CD/DVD ドライブ」の「接続」にチェックを入れ「保存」をクリックします。
- コンソールで以下コマンドを実行します。
### 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の内容---
本項ではBINDを使用してDNSサーバを実装します。
- パッケージのインストール
[root@nwsv01] dnf -y --disablerepo=\* --enablerepo=InstallMedia-* install bind bind-chroot bind-utils
- 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";
};
- 正引きゾーンファイルの作成
[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
- 逆引きゾーンファイルの作成
[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.
- 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
- bind-chrootの起動
[root@nwsv01]# systemctl enable --now named-chroot
- NetworkManager 設定で DNS 処理を無効にする
### 設定ファイルを作成
[root@nwsv01]# vi /etc/NetworkManager/conf.d/90-dns-none.conf
---以下、90-dns-none.confのファイル内容---
[main]
dns=none
---以上、90-dns-none.confのファイル内容---
- 名前解決に使用する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
- 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のインストーラを起動するためのサーバを作成します。