Rocky Linux 9 使用bind安装DNS服务器
- Linux
- 2025-01-08
- 417热度
- 0评论
在 Rocky Linux 9 上搭建企业内部 DNS 服务器可以使用 BIND(Berkeley Internet Name Domain),这是一个广泛使用的 DNS 服务器软件。以下是详细的步骤:
准备:
DNS服务器ip地址:192.168.1.10
需要解析的服务器地址:192.168.1.20
1. 更新系统
首先,确保系统是最新的:
sudo dnf update -y
2. 安装 BIND
安装 BIND 及其相关工具:
dnf install bind bind-utils -y
3. 配置 BIND
BIND 的主配置文件位于 /etc/named.conf。我们需要编辑这个文件来配置 DNS 服务器。
vi /etc/named.conf
在 options 部分,找到 listen-on 和 allow-query 选项,并将其修改为允许内部网络访问:
listen-on port 53 { any; }; # 替换为你的内部网络地址
allow-query { any; }; # 替换为你的内部网络地址
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";
allow-query { any; }; # 替换为你的内部网络地址
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.root.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
在 named.conf 文件的末尾,添加你的 DNS 区域配置。例如,假设你的域名为 example.com:
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; };
};
4. 创建区域文件
在 /var/named/ 目录下创建区域文件。
A:正向区域文件
创建 example.com.zone 文件:
vi /var/named/example.com.zone
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2023101001 ; Serial
3600 ; Refresh
1800 ; Retry
1209600 ; Expire
86400 ) ; Minimum TTL
@ IN NS ns1.example.com.
ns1 IN A 192.168.1.10
@ IN A 192.168.1.10
www IN A 192.168.1.20
B:反向区域文件
创建 192.168.1.zone 文件:
vi /var/named/192.168.1.zone
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2023101001 ; Serial
3600 ; Refresh
1800 ; Retry
1209600 ; Expire
86400 ) ; Minimum TTL
@ IN NS ns1.example.com.
10 IN PTR ns1.example.com.
20 IN PTR www.example.com.
6.设置文件权限
确保 BIND 可以读取这些文件:
chown root:named /var/named/example.com.zone
chown root:named /var/named/192.168.1.zone
chmod 640 /var/named/example.com.zone
chmod 640 /var/named/192.168.1.zone
7. 配置防火墙
允许 DNS 服务通过防火墙:
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload
8. 测试 DNS 服务器
使用 dig 或 nslookup 命令测试 DNS 服务器是否正常工作:
dig @192.168.1.10 ns1.example.com
nslookup ns1.example.com 192.168.1.10