ぽれいんのブログ

エンジニアになるために覚えたことを日記に付けます。

DNSサーバ構築

はじめに

インフラエンジニア初学者のぽれいんと申します。

転職する前はプログラミングスクールにて主にHTML、CSSRubyMySQL等について学びました。

※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。

<前回の記事>

porain.hatenablog.com

↑↑まだ見ていない方はこちらから↑↑

使用環境

 

 

 

 

 

DNSサーバの構築

rootユーザになる

sudo su -

bindのインストール

yum install -y bind

bindを自動起動を有効にして起動

systemctl enable named
systemctl start named

namedプロセスの起動確認

ps -efH | grep named

以下プロセスが起動していることを確認

named 3341 1 0 08:07 ? 00:00:00 /usr/sbin/named -u named -c /etc/name .conf

namedが利用するTCP/UDPがオープンしているか確認

netstat -anp | grep named

以下のようにnamedが利用する53番ポートがオープンしていることを確認

tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 3341/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 3341/named
tcp6 0 0 ::1:53 :::* LISTEN 3341/named
tcp6 0 0 ::1:953 :::* LISTEN 3341/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 3341/named
udp6 0 0 ::1:53 :::* 3341/named
unix 2 [ ] DGRAM 20948 3341/named

コピーを作成してnamed.confの編集

cp /etc/named.conf /etc/named.conf.org
vi /etc/named.conf
--------ここから--------------
全ての
サーバから名前解決できるようにする
listen-on port 53 { 127.0.0.1; }; → listen-on port 53 { 127.0.0.1;any; };
listen-on-v6 port 53 { ::1; }; →  listen-on-v6 port 53 { ::1;any; };
全てのサーバからクエリの受付を許可
allow-query { localhost; }; → allow-query { any; };
--------ここまで--------------

※anyを使用するとセキュリティに問題があるように思われるが、他でセキュリティの強化が図れる。しかし、現場で作業する際は上長に設定値の確認を行う。

 

/etc/named.confの構文チェック

named-checkconf

ゾーンデータベースファイルの作成・編集

vi /var/named/hogehoge.com.zone

-----------ここから---------------
$ORIGIN hogehoge.com.
$TTL 900
@ IN SOA ns.hogehoge.com. sample.hogehoge.com. (
2017080701 ; Serial
3600 ; Refresh
900 ; Retry
1814400 ; Expire
900 ) ; Minimum
IN NS ns
ns IN A 192.168.1.10
hoge IN A 192.168.2.21
porain IN A 192.168.3.33
-----------ここまで---------------

/var/named/hogehoge.zoneの構文チェック

named-checkzone hogehoge.com /var/named/hogehoge.com.zone

以下のようにOKが表示されればOK
zone hogehoge.com/IN: loaded serial 2017080701
OK

named.confに追記

vi /etc/named.conf
以下を追記
-----------ここから---------------
#以下管理したいゾーン情報

zone "hogehoge.com" IN {
type master;
file "/var/named/hogehoge.com.zone";
};
-----------ここまで---------------

/etc/named.confの構文チェック

named-checkconf

/etc/resolv.confの編集

vi /etc/resolv.conf
---以下をコメントアウト---
#nameserver 172.31.0.2
---以下を追記---
#ローカルループアップアドレス
nameserver 127.0.0.1

bindの再起動・プロセス・ポート番号のリッスンを確認

systemctl restart named
ps -efH | grep named
netstat -anp | grep named
LinuxIPアドレスが開通していることを確認!

 digコマンドで名前解決ができているか確認

dig porain.hogehoge.com

 

以上!!!!!!!!!!!!!!