shell脚本攻略--DNS正向解析一键部署

文章目录

  • 准备
  • shell脚本


准备

  • 关于DNS域名解析服务想进一步了解的同学可以看我之前的博客:DNS域名解析服务
  • 话不多说,直接上干货
  • 建议开两台虚拟机,一台用来直接自己按照步骤流程做,一台用来跟着我的脚本敲命令(同步),可以更好的加深理解
  • 下文中 sed 命令使用较多,真香

shell脚本

[root@localhost ~]# vim /opt/dns1.sh 

#!/bin/bash
#构建DNS域名解析服务器步骤之正向解析

#检测YUM源仓库是否挂载
df | grep "sr0"
if [ $? -eq 0 ]
        then
        yum -y install bind &> /dev/null
        #若已挂载则直接安装bind软件包
else
        mount /dev/cdrom /mnt &> /dev/null
        yum -y install bind &> /dev/null
        #若未挂载,则先挂载,再安装bind软件包"
fi

#关闭防火墙和强制访问控制安全系统
systemctl stop firewalld &> /dev/null
systemctl disable firewalld &> /dev/null
setenforce 0 &> /dev/null

#修改主配置文件
sed -i 's/127.0.0.1/any/' /etc/named.conf
sed -i 's/localhost/any/' /etc/named.conf

#修改区域配置文件,添加正向区域配置
sed -i 's/localhost.localdomain/xcf.com/' /etc/named.rfc1912.zones
sed -i 's/named.localhost/xcf.com.zone/' /etc/named.rfc1912.zones
sed -i '18,100d' /etc/named.rfc1912.zones

#配置正向区域数据文件
cd /var/named
cp -p named.localhost xcf.com.zone
sed -i 's/@/xcf.com./g' /var/named/xcf.com.zone
sed -i 's/rname.invalid./admin.xcf.com./' /var/named/xcf.com.zone
sed -i 's/127.0.0.1/192.168.126.15/' /var/named/xcf.com.zone
sed -i '9a www IN A  192.168.126.15' /var/named/xcf.com.zone
sed -i '/AAAA/d' /var/named/xcf.com.zone
sed -i '/::1/d' /var/named/xcf.com.zone

#启动服务
systemctl start named

#在客户端的域名解析配置文件中添加DNS服务器地址
sed -i '1a nameserver 192.168.126.15' /etc/resolv.conf

#重启下服务,有备无患
systemctl restart named

chmod +x /opt/dns1.sh

read -p "DNS正向解析已配置完毕,请输入域名:" p
host $p

mark

你可能感兴趣的:(Sheel,脚本攻略,Linux,Shell脚本,DNS正向解析,CentOS7,sed)