Open ghost opened 6 years ago
・オープンリゾルバの対策 ・ゾーン転送の適切な設定 ・DNS amp対策 辺りも抑えて頂けると嬉しいです!
以下手順を参考に実施
https://go-journey.club/archives/395
https://qiita.com/ToraLin/items/ae251b187d18de7684eb
一旦、内部用にDNSを設定 慣れたら外部設定も入れる
Hardening10MP_参加者配布資料.pdfの6ページを参考に作成
実際のハードにングに近い命名規則でゾーンはnoresore.starbed.local
にしています
/var/named/data/noresore.starbed.local
$TTL 1D
@ IN SOA dm root (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS dm
IN MX 10 mail
@ IN A 192.168.1.92
dm IN A 192.168.1.92
mail IN A 192.168.1.92
win IN A 192.168.1.12
ec1 IN A 192.168.1.148
rp IN A 192.168.1.127
named-checkconf /etc/named.conf
named-checkzone zone名 /var/named/data/ゾーンファイル
systemctl status named-chroot
再起動時に自動起動させる
systemctl enable named-chroot
設定できているか確認
[root@localhost data]# systemctl list-unit-files |grep named
named-chroot-setup.service static
named-chroot.service enabled
named-setup-rndc.service static
named.service disabled
systemd-hostnamed.service static
シェルを作る
sudo vi /usr/local/sbin/check-named.sh
中身
#! /bin/bash
#監視するプロセス名を定義する
PROCESS_NAME=named-chroot
#監視するプロセスが何個起動しているかカウントする
count=`ps -ef | grep $PROCESS_NAME | grep -v grep | wc -l`
#監視するプロセスが0個場合に、処理を分岐する
if [ $count = 0 ]; then
#0個場合は、サービスが停止しているので起動する
echo "$PROCESS_NAME Down"
echo "$PROCESS_NAME Start"
# Cent OS 6.xの場合は、以下を使用する
# /etc/init.d/httpd restart
# Cent OS 7.xの場合は、以下を使用する
systemctl restart named-chroot
else
echo "$PROCESS_NAME OK"
fi
パーミッション変更
chmod 700 /usr/local/sbin/check-named.sh
crontabで1分ごとに確認
sudo vi /etc/crontab
crontabの中身
*/1 * * * * root /bin/bash /usr/local/sbin/check-named.sh
自分のネットワーク内の名前解決はできるが、キャッシュサーバとして動いてくれない。
自分の仮想環境ではキャッシュサーバとして動くので、AWS環境特有の事象っぽい。
- [ ] 外部公開設定