Ubuntu 20.04和CentOS 7+被支持吗?

在Linux系统上搭建DNS服务器是管理网络基础设施的关键步骤,尤其适用于企业内网解析、域名托管或提升本地网络效率,以下基于广泛应用的BIND9(Berkeley Internet Name Domain)软件提供详细指南,内容符合技术准确性(E-A-T原则中的专业性)并参考官方文档(权威性),确保操作安全可靠(可信度)。

  • 确保拥有sudo权限的账户。
  • 服务器需固定IP(如168.1.10)。
  1. 软件选择
    BIND9是ISC维护的开源DNS软件,支持主/从服务器、DNSSEC等特性,通过包管理器安装:

    # Ubuntu/Debian
    sudo apt update && sudo apt install bind9 bind9-utils
    # CentOS/RHEL
    sudo yum install bind bind-utils

配置BIND9核心文件

主配置文件:named.conf

路径:/etc/bind/named.conf(Ubuntu)或/etc/named.conf(CentOS)。
修改以下部分:

  options {
      listen-on port 53 { any; };       // 允许所有IP监听
      allow-query     { any; };         // 允许所有客户端查询
      recursion yes;                    // 启用递归查询(公共DNS需谨慎)
      directory       "/var/cache/bind"; // 工作目录
  };
  // 引入区域文件配置
  include "/etc/bind/named.conf.local";

定义区域文件:named.conf.local

添加正向解析域(如example.local)和反向解析:

  zone "example.local" {
      type master;
      file "/etc/bind/zones/db.example.local";  // 正向区域文件路径
  };
  zone "1.168.192.in-addr.arpa" {              // 反向解析(IP段192.168.1.0/24)
      type master;
      file "/etc/bind/zones/db.192.168.1";
  };

创建正向区域文件

新建目录并创建文件:

  sudo mkdir /etc/bind/zones
  sudo nano /etc/bind/zones/db.example.local
  ```示例:  
  ```plaintext
  $TTL 86400
  @       IN SOA  ns1.example.local. admin.example.local. (
                  2025081501 ; 序列号 (格式:年月日+修订号)
                  3600       ; 刷新时间
                  1800       ; 重试间隔
                  604800     ; 过期时间
                  86400      ; 缓存TTL
  )
  @       IN NS   ns1.example.local.
  ns1     IN A    192.168.1.10
  www     IN A    192.168.1.100
  mail    IN A    192.168.1.200

创建反向区域文件

  sudo nano /etc/bind/zones/db.192.168.1
  ```示例:  
  ```plaintext
  $TTL 86400
  @ IN SOA ns1.example.local. admin.example.local. ( ... ) ; 同正向配置
  @ IN NS  ns1.example.local.
  10 IN PTR ns1.example.local.    ; 192.168.1.10 -> ns1
  100 IN PTR www.example.local.   ; 192.168.1.100 -> www
  200 IN PTR mail.example.local.  ; 192.168.1.200 -> mail

启动服务与验证

  1. 检查配置语法

    sudo named-checkconf     # 检查主配置
    sudo named-checkzone example.local /etc/bind/zones/db.example.local  # 检查正向区域
  2. 启动BIND9服务

    sudo systemctl start named   # CentOS
    sudo systemctl start bind9   # Ubuntu
    sudo systemctl enable named  # 设置开机自启
  3. 配置本地DNS解析
    修改客户端/etc/resolv.conf,添加:

    nameserver 192.168.1.10
  4. 测试解析结果

    dig www.example.local @192.168.1.10        # 正向解析测试
    nslookup 192.168.1.100 192.168.1.10        # 反向解析测试

    成功响应应包含ANSWER SECTION与正确IP/域名。


防火墙与安全加固

  1. 开放53端口

    # Ubuntu
    sudo ufw allow 53/tcp
    sudo ufw allow 53/udp
    # CentOS
    sudo firewall-cmd --permanent --add-service=dns
    sudo firewall-cmd --reload
  2. 关键安全措施

    • 限制递归查询:公共DNS服务器需在options中添加allow-recursion { trusted_ips; };
    • 禁用版本暴露:在named.conf中添加:
      options { version "Not disclosed"; };
    • 启用chroot(可选):通过bind-chroot包隔离进程。

故障排查

  • 服务启动失败
    使用journalctl -u named/var/log/syslog查看错误日志。
  • 解析超时
    检查防火墙规则及客户端resolv.conf配置。
  • 区域文件更新
    修改后需增加序列号,并重启服务:sudo systemctl reload bind9

搭建Linux DNS服务器需严谨遵循配置逻辑与安全实践,通过BIND9的灵活部署,可高效管理内网域名解析,为业务系统提供稳定基础服务,建议定期备份区域文件,并关注ISC安全公告更新版本。

引用说明

  • BIND9官方文档:https://www.isc.org/bind/
  • Ubuntu Server Guide:https://ubuntu.com/server/docs
  • CentOS Wiki:https://wiki.centos.org/
  • 安全配置参考:CIS BIND Benchmark v1.0.0

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7256.html

(0)
酷番叔酷番叔
上一篇 2025年7月13日 16:41
下一篇 6天前

相关推荐

  • 惠普刀片如何提升效率、整合资源又简化管理?

    惠普刀片服务器的核心价值在于通过高密度整合计算、存储与网络资源,显著提升数据中心效率;其模块化设计简化部署与管理,降低运维复杂度,实现IT基础设施的优化与成本节约。

    2025年6月25日
    1100
  • 服务器托架,被忽视的数据中心守护者?

    服务器托架是数据中心的无名英雄,默默支撑固定服务器等核心设备,保障其稳定运行、高效散热与有序布线,虽不起眼却是整个基础设施安全可靠的关键基石。

    2025年7月6日
    1300
  • 为何选它释放澎湃算力?

    英特尔至强可扩展处理器是面向数据中心的核心引擎,提供强劲性能、卓越扩展性和先进AI加速能力,专为处理云、AI、分析等关键工作负载而设计,满足现代企业计算需求。

    2025年6月12日
    1300
  • 核心概念是什么?

    核心概念解析指对关键术语或理论要点进行简明拆解,精准提炼其本质特征、内在逻辑及相互关系,旨在厘清概念边界、揭示深层含义,为系统理解复杂知识奠定基础。

    6天前
    600
  • 关闭服务器如何避免损失?

    安全关闭服务器前务必通知用户、备份关键数据、停止所有服务进程,严格按顺序执行关机命令(如Linux的shutdown),避免强制断电,记录操作日志,确认设备完全关闭后检查电源与散热状态。

    2025年6月24日
    1300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信