Amazon VPCにオンプレミス検証環境想定プライベートDNSサーバー(BIND)をEC2で起動する
2021/10/28
オンプレミス想定の検証で使うために、Amazon VPCにプライベート向けDNSサーバーをBINDで起動しました。
【BIND】権威DNSサーバの構築
こちらを参考にしました。
環境はAmazon Linux2です。
セキュリティグループはTCP, UDPの53番ポートをVPCのCIDRに許可しています。
目次
BINDのインストール
sudo suでrootユーザーでコマンドを実行しました。
1 2 |
yum install -y bind |
BINDをインストールしました。
/etc/named.conf
デフォルトのnamed.confで変更したのは以下2行とzone追加しました。
192.168.0.70はEC2インスタンスのプライベートIPアドレスです。
1 2 3 4 5 6 7 8 |
listen-on port 53 { 127.0.0.1; 192.168.0.70;}; allow-query { any; }; zone "bind.yamamugi.com" { type master; file "/etc/bind.yamamugi.com.zone"; }; |
/etc/bind.yamamugi.com.zone
1 2 3 4 5 6 7 8 9 10 11 |
$TTL 900 @ IN SOA ns.bind.yamamugi.com. sample.bind.yamamugi.com. ( 20210717 ; Serial 3600 ; Refresh 900 ; Retry 1814400 ; Expire 900 ) ; Minimum IN NS ns.bind.yamamugi.com. ns IN A 192.168.0.70 demo IN A 192.168.0.95 |
BINDの起動
1 2 |
systemctl start named |
DHCPオプションセットの設定
VPCコンソールでDHCPオプションセットを作成しました。
対象のVPCでDHCPオプションセットを作成したものに変更しました。
確認
確認用EC2インスタンスで確認
1 2 3 4 5 6 |
$ cat /etc/resolv.conf ; generated by /usr/sbin/dhclient-script search ap-northeast-1.compute.internal options timeout:2 attempts:5 nameserver 192.168.0.2 |
確認用EC2インスタンスはDHCPオプションセット変更前に起動していたEC2インスタンスで、AmazonProvidedDNSのネームサーバーがresolv.confに設定されています。
1 2 3 4 5 6 7 8 |
$ sudo service network restart Restarting network (via systemctl): [ OK ] $ cat /etc/resolv.conf options timeout:2 attempts:5 ; generated by /usr/sbin/dhclient-script search bind.yamamugi.com ap-northeast-1.compute.internal nameserver 192.168.0.70 |
即時反映させたいので、ネットワークサービスを再起動しました。
無事DHCPオプションで設定したとおり、bindサーバーを向いてくれました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
$ dig demo.bind.yamamugi.com ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.amzn2.5.2 <<>> demo.bind.yamamugi.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31678 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;demo.bind.yamamugi.com. IN A ;; ANSWER SECTION: demo.bind.yamamugi.com. 900 IN A 192.168.0.95 ;; AUTHORITY SECTION: bind.yamamugi.com. 900 IN NS ns.bind.yamamugi.com. ;; ADDITIONAL SECTION: ns.bind.yamamugi.com. 900 IN A 192.168.0.70 ;; Query time: 0 msec ;; SERVER: 192.168.0.70#53(192.168.0.70) ;; WHEN: Sun Jul 18 09:36:23 UTC 2021 ;; MSG SIZE rcvd: 100 |
digコマンドで確認したら、無事名前解決できていました。
よかったよかった。
2021/10/27 追記
オンプレミス想定の環境として、ハイブリッド構成を検証する目的で構築しています。
本番環境として永続的な利用を想定しているものではありませんので、セキュリティを意識した構成ではありません。
作業量や設定を最小限にしています。
「権威サーバーとキャッシュサーバーを兼用するとセキュリティリスクがある」などのご指摘もいただけましたので追記いたしました。
ご指摘ありがとうございます。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。


開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
RDSリザーブドDBインスタンスを購入しました
リザーブドインスタンス推奨事項を確認したで確認した結果、購入したほうがよさそうで …
-
-
webフォームからの問い合わせをRedmineに自動登録して対応状況を管理する(API Gateway + Lambda)
先日、検証目的で作成したRedmineの冗長化の一機能として、webフォームから …
-
-
PyCharmにAWS CloudFormationプラグインをインストールして入力補完してみる
JetBrainsのPython統合開発環境(IDE)のPyCharmを1年ちょ …
-
-
Organizations組織でAWS SSOを有効にする
先日AWS Control Towerで環境を作ったら、自動でAWS SSOがで …
-
-
Amzon Linux のApacheでRedmineとWordPressをバーチャルホストで共存する
EC2とRDSを節約しようと思いまして、Redmineを動かしてるとこに検証用W …
-
-
AWS Certificate Manager(ACM)メール検証をDNS検証の証明書に差し替えました
ブログの証明書 このブログの証明書の有効期限があと1週間です。 証明書はAWS …
-
-
WordPressの年ごとのブログ投稿数を調べるSQL
毎年年末に使いそうなのでメモです。 [crayon-684fad82985996 …
-
-
RDSのポイントインタイムリカバリをしました
WordPressで画像アップロードができなくなった(AWS WAFでブロックし …
-
-
AWS CLIでS3マルチパートアップロードを確認
AWS CLI を使用して、Amazon S3 にファイルをマルチパートアップロ …
-
-
Route53でドメインを新規取得してDNSレコードを設定する
Elastic IPをAWSで発行しているのですから、DNSの設定も同じようにマ …