当前位置: 首页 > news >正文

安装DNS(BIND)并部署主域服务

#!/bin/bash

# 检查是否为 root 用户
if [ "$(id -u)" != "0" ]; then
    echo "不是 root 你安装个啥啊,你配吗?"
    sleep 5
    exit 1
fi

# 安装 BIND
echo "正在安装 BIND..."
yum install -y bind bind-utils

# 检查安装是否成功
if [ $? -ne 0 ]; then
    echo "BIND 安装失败,请检查 YUM 源是否可用。"
    exit 1
fi

# 配置主 DNS
echo "正在配置主 DNS..."

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

# 配置 named.conf 文件
cat > /etc/named.conf <<EOF
options {
    listen-on port 53 { any; };
    allow-query { any; };
    recursion yes;
};

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

zone "example.com" IN {
    type master;
    file "example.com.zone";
    allow-update { none; };
};

zone "1.168.192.in-addr.arpa" IN {
    type master;
    file "192.168.1.zone";
    allow-update { none; };
};
EOF

# 创建主区域文件
mkdir -p /var/named
cat > /var/named/example.com.zone <<EOF
\$TTL 86400
@       IN      SOA     ns1.example.com. admin.example.com. (
                        2023101001      ; Serial
                        3600            ; Refresh
                        1800            ; Retry
                        604800          ; Expire
                        86400 )         ; Minimum TTL
@       IN      NS      ns1.example.com.
@       IN      A       192.168.1.100
ns1     IN      A       192.168.1.100
www     IN      A       192.168.1.100
EOF

# 创建反向区域文件
cat > /var/named/192.168.1.zone <<EOF
\$TTL 86400
@       IN      SOA     ns1.example.com. admin.example.com. (
                        2023101001      ; Serial
                        3600            ; Refresh
                        1800            ; Retry
                        604800          ; Expire
                        86400 )         ; Minimum TTL
@       IN      NS      ns1.example.com.
100     IN      PTR     ns1.example.com.
EOF

# 启动 named 服务
echo "启动 named 服务..."
systemctl enable named
systemctl start named

# 配置防火墙
echo "配置防火墙..."
firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --reload

echo "BIND 安装和配置完成!"
echo "仅配置了主 DNS。"

相关文章:

  • 为什么要将项目部署到外部tomcat
  • 【第13届蓝桥杯C/C++B组省赛】顺子日期
  • Brainstorm绘制功能连接图(matlab)
  • Leetcode—242. 有效的字母异位词(字符串算法)
  • 国内 npm 镜像源推荐
  • TCP/IP 协议族详细知识点清单
  • 计算机网络--传输层(1)
  • 如何在MyBatis-Plus中优雅实现复杂查询:结合`JSON_CONTAINS`与动态条件构建
  • RAG优化:python从零实现query转换增强技术
  • 从零构建大语言模型全栈开发指南:第二部分:模型架构设计与实现-2.1.3前馈网络(FFN)与激活函数(GELU)优化
  • 什么是docker-compose,和Dockerfile的区别
  • 【高项】信息系统项目管理师(十)项目风险管理【5分】
  • hn航空app hnairSign unidbg 整合Springboot
  • 深入浅出理解Android系统中的SeLinux
  • CCF-CSP第13次认证第一题——跳一跳【简单】
  • 使用Redis实现分布式锁的技术详解
  • 嵌入式硬件工程师从小白到入门-速通版(一)
  • excel 列单元格合并(合并列相同行)
  • STM32 - 在机器人、自动化领域,LL库相比HAL优势明显
  • 卫宁健康学习——住院医生站管理系统