Linux主域脚本

#!/bin/bash

# 定义变量
DOMAIN="atxnn.com"
NS1="ns1.atxnn.com"
IP="192.168.8.149"
EMAIL="admin@atxnn.com"
REVERSE_ZONE="8.168.192.in-addr.arpa"

# 安装 bind 和 bind-chroot
yum install -y bind bind-chroot

# 备份原始配置文件
cp /etc/named.conf /etc/named.conf.bak

# 配置 named.conf
cat << EOF > /etc/named.conf
options {
    listen-on port 53 { any; };
    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     { any; };

    recursion yes;

    dnssec-enable yes;
    dnssec-validation yes;

    managed-keys-directory "/var/named/dynamic";

    pid-file "/run/named/named.pid";
    session-keyfile "/run/named/session.key";
};

logging {
    channel default_debug {
        file "data/named.run";
        severity dynamic;
    };
};

zone "." IN {
    type hint;
    file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

zone "$DOMAIN" IN {
    type master;
    file "$DOMAIN.zone";
    allow-update { none; };
};

zone "$REVERSE_ZONE" IN {
    type master;
    file "$REVERSE_ZONE.zone";
    allow-update { none; };
};
EOF

# 创建正向区域文件
cat << EOF > /var/named/$DOMAIN.zone
\$TTL 86400
@       IN      SOA     $NS1. $EMAIL. (
                        $(date +%Y%m%d01) ; Serial
                        3600       ; Refresh
                        1800       ; Retry
                        604800     ; Expire
                        86400      ; Minimum TTL
                        )
@       IN      NS      $NS1.
@       IN      A       $IP
www     IN      A       $IP
EOF

# 创建反向区域文件
cat << EOF > /var/named/$REVERSE_ZONE.zone
\$TTL 86400
@       IN      SOA     $NS1. $EMAIL. (
                        $(date +%Y%m%d01) ; Serial
                        3600       ; Refresh
                        1800       ; Retry
                        604800     ; Expire
                        86400      ; Minimum TTL
                        )
@       IN      NS      $NS1.
149     IN      PTR     $DOMAIN.
EOF

# 设置文件权限
chown named:named /var/named/$DOMAIN.zone
chmod 640 /var/named/$DOMAIN.zone
chown named:named /var/named/$REVERSE_ZONE.zone
chmod 640 /var/named/$REVERSE_ZONE.zone

# 启动并设置开机自启
systemctl start named
systemctl enable named

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值