[DNS]ACL、also-notify、视图服务器及安全设置
1. ACL :访问控制列表放在named.conf的头部,如果acl的内容太多,可以另创建一个文件,将acl放在该文件中,再在主配置文件named.conf用include 将文件加载进来(记得放在头部)
访问控制列表的作用:可以用在配置文件像allow-query{ mynet; }; 使我们只需要定义一个acl,而不需要敲多遍同样的地址
示例:
# vim /etc/named.conf
acl mynet {
10.0.0.0/16;
192.168.10.10;
172.16.0.0/24;
};
BIND默认预定义了4个名称的地址匹配列表
any:所有主机
localhost:本机
localhosts:本地网络上的所有主机
none:不匹配任何地址
2. also-notify:主动通知从域名服务器进行更新,在主域名服务器进行更新后,而不需要在等规定的时间后才通知从域名服务器进行更新
# vim /etc/named.conf
options {
also-notify { 10.0.5.151; };
};
3. 基于视图(view)的域名服务器
(1) 分离解析(split)
作用:将来自不同地址的客服机请求解析同一域名时,为其提供不同的解析结果
案例:现在我在我之前做的主域名服务器做视图域名服务器,现在这台主机由两个网卡,ip分别是192.168.100.20,192.168.200.20,我现在要实现如果是192.168.100.0的网段的主机做域名解析,例如nslookup dns.hngd.com,将返回该域名的IP为192.168.100.20;如果是192.168.200.0的网段的主机做域名解析,例如nslookup dns.hngd.com,将返回该域名的IP为192.168.200.20。
1. 在named.conf主配置文件中为不同的客户机地址启用不同的zone区域设置,各自使用独立的数据文件
[root@主人 ~]# cat /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";
allow-query { any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
/*logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
*/
view 'internal' { //内部网络
match-clients{ 192.168.100.0/24; }; //匹配192.168.100.0网段的客户机
zone "hngd.com" IN{
type master;
file "inter.hngd.zones";
allow-update { none; };
};
zone "100.168.192.in-addr.arpa" IN{
type master;
file "inter.192.168.100.zone";
allow-update{ none; };
};
};
view 'external' { //外部网络
match-clients{ 192.168.200.0/24; }; //匹配192.168.200.0网段的客户机
zone "hngd.com" IN{
type master;
file "exter.hngd.zones";
allow-update { none; };
};
zone "200.168.192.in-addr.arpa" IN{
type master;
file "exter.192.168.100.zone";
allow-update{ none; };
};
};
#include "/etc/named.rfc1912.zones";
#include "/etc/named.root.key";
2. 配置zone文件
[root@主人 ~]# cat /var/named/inter.hngd.zones
$ORIGIN hngd.com.
$TTL 1D
@ IN SOA dns.hngd.com. admin.hngd.com. (
2016032012
1D
1H
1W
3H
)
NS dns.hngd.com.
NS slave.hngd.com.
MX 5 mail.hngd.com.
slave IN A 192.168.100.2
dns IN A 192.168.100.20
mail IN A 192.168.100.10
www IN A 192.168.100.11
bbs IN CNAME www
[root@主人 ~]# cat /var/named/inter.192.168.100.zone
$ORIGIN 100.168.192.in-addr.arpa.
$TTL 1D
@ IN SOA dns.hngd.com. admin.hngd.com. (
2016032012
1D
1H
1W
3H
)
NS dns.hngd.com.
20 IN PTR dns.hngd.com.
10 IN PTR mail.hngd.com.
11 IN PTR www.hngd.com.
2 IN PTR slave.hngd.com.
[root@主人 ~]# cat /var/named/exter.hngd.zones
$ORIGIN hngd.com.
$TTL 1D
@ IN SOA dns.hngd.com. admin.hngd.com. (
2016032012
1D
1H
1W
3H
)
NS dns.hngd.com.
MX 5 mail.hngd.com.
dns IN A 192.168.200.20
mail IN A 192.168.200.10
www IN A 192.168.200.11
bbs IN CNAME www
[root@主人 ~]# cat /var/named/exter.192.168.100.zone
$ORIGIN 200.168.192.in-addr.arpa.
$TTL 1D
@ IN SOA dns.hngd.com. admin.hngd.com. (
2016032012
1D
1H
1W
3H
)
NS dns.hngd.com.
20 IN PTR dns.hngd.com.
10 IN PTR mail.hngd.com.
11 IN PTR www.hngd.com.
2 IN PTR slave.hngd.com.
3. 注意要将zone数据文件的属主和属组都改为named
-rw-r--r-- 1 named named 243 3月 27 10:20 exter.192.168.100.zone
-rw-r--r-- 1 named named 238 3月 27 10:20 exter.hngd.zones
-rw-r--r-- 1 named named 243 3月 20 19:07 inter.192.168.100.zone
-rw-r--r-- 1 named named 283 3月 20 19:05 inter.hngd.zones
4. 将/etc/resolv.conf文件的nameserver 改为192.168.100.20
5. 重启named服务
6. 关闭防火墙和selinux
7. 测试:发现同一个域名在不同网段获取到不同的ip
[root@主人 ~]# nslookup dns.hngd.com 192.168.100.20
Server: 192.168.100.20
Address: 192.168.100.20#53
Name: dns.hngd.com
Address: 192.168.100.20
[root@主人 ~]# nslookup dns.hngd.com 192.168.200.20
Server: 192.168.200.20
Address: 192.168.200.20#53
Name: dns.hngd.com
Address: 192.168.200.20
题外话:一个文件的属主如果被删除,那我们再用ls -l来查询该文件时会发现文件的属主是一个数字,该数字就是用户的UID
[root@lcl ~]# ll aa
-rw-r--r-- 1 aa bb 5 3月 22 15:30 aa
[root@lcl ~]# userdel aa
[root@lcl ~]# ll aa
-rw-r--r-- 1 516 bb 5 3月 22 15:30 aa
安全设置
allow-transfer{ 192.168.100.2; }; 只允许192.168.100.2主机传递主域名服务器的数据
事务签名
TSIG:保障主从DNS之间的复制安全性
*使用对称加密技术
*在主DNS上生成密钥
生成密钥
[root@lcl ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n host 域名|视图名
-a:算法
-b:生成的密钥的长度
-n:名称
主DNS有视图的话则对每个视图要生成一个密钥
----------
案例:我还是拿之前那台主DNS做TSIG事务签名,实现安全通信
当前主DNS有两个网卡:192.168.200.20,192.168.100.20
从DNS有两个网卡:192.168.200.1,192.168.100.1
1. 在主DNS上生成密钥(每个视图都要生成一个密钥)
[root@主人 ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n host internal
Kinternal.+157+18216
[root@主人 ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n host external
Kexternal.+157+33008
[root@主人 ~]# cat Kexternal.+157+33008.key //公钥、私钥是一致的
external. IN KEY 512 3 157 KW2B3L1xyD26/P9dYAQv+w==
[root@主人 ~]# cat Kexternal.+157+33008.private
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: KW2B3L1xyD26/P9dYAQv+w==
Bits: AAA=
Created: 20160327153349
Publish: 20160327153349
Activate: 20160327153349
2. 在主配置文件中加载密钥
#/etc/named.conf
key "internal" {
algorithm hmac-md5;
secret "0iTnpUvY5kOBjFkAAFN6xA==";
};
key "external" {
algorithm hmac-md5;
secret "KW2B3L1xyD26/P9dYAQv+w==";
};
3. 设置主服务器的named.conf配置文件,在具体视图中使用密钥访问
#/etc/named.conf
view 'internal' {
match-clients{ 192.168.100.0/24; };
server 192.168.100.1 { keys { internal; }; }; //指定从DNS的ip,并且需要通过密钥进行数据传输
zone "hngd.com" IN{
type master;
file "inter.hngd.zones";
allow-update { none; };
allow-transfer { key internal; }; //从主DNS获取数据文件需要通过密钥认证
also-notify {192.168.100.1; }; // master端配置, 修改配置后主动给slave发送更新通告消息
};
zone "100.168.192.in-addr.arpa" IN{
type master;
file "inter.192.168.100.zone";
allow-update{ none; };
allow-transfer { key internal; };
also-notify {192.168.100.1; };
};
};
view 'external' {
match-clients{ 192.168.200.0/24; };
server 192.168.200.1 { keys { external; }; };
zone "hngd.com" IN{
type master;
file "exter.hngd.zones";
allow-update { none; };
allow-transfer { key external; };
also-notify {192.168.200.1; };
};
zone "200.168.192.in-addr.arpa" IN{
type master;
file "exter.192.168.100.zone";
allow-update{ none; };
allow-transfer { key external; };
also-notify {192.168.200.1; };
};
};
4.在从服务器上配置密钥认证访问
key "internal" {
algorithm hmac-md5;
secret "0iTnpUvY5kOBjFkAAFN6xA==";
};
key "external" {
algorithm hmac-md5;
secret "KW2B3L1xyD26/P9dYAQv+w==";
};
view "internal" {
match-clients{ 192.168.100.0/24; };
server 192.168.100.20 { keys { internal; }; };
zone "hngd.com" IN{
type slave;
file "slaves/inter.hngd.zones";
masters { 192.168.100.20; };
notify-source 192.168.100.20; //默认是*, 表示当前的主机ip, 可以指定某个ip和port, ip必须在slave的master中包含,然后经过抓包(在master上抓取向slave发送NOTIFY信息的包)发现
};
zone "100.168.192.in-addr.arpa" IN{
type slave;
file "slaves/inter.192.168.100.zone";
masters { 192.168.100.20; };
notify-source 192.168.100.20;
};
};
view "external" {
match-clients{ 192.168.200.0/24; };
server 192.168.200.20 { keys { external; }; };
zone "hngd.com" IN{
type slave;
file "slaves/exter.hngd.zones";
masters { 192.168.200.20; };
masters { 192.168.200.20; };
notify-source 192.168.200.20;
};
zone "200.168.192.in-addr.arpa" IN{
type slave;
file "slaves/exter.192.168.100.zone";
masters { 192.168.200.20; };
notify-source 192.168.200.20;
};
};
5. 配置好上面这些后,在从DNS上重启named服务,再查看/var/named/slaves,如果是否看到下面的数据文件
6. 如果没有,看看主从DNS服务器的防火墙和selinux有没有关闭,还有/etc/resolv.conf文件nameserver有没有写成相应的dns的ip
7. 如果还是没有,看看/var/log/messgage,查看错误信息,如果是主从服务器没有同步的原因,那就进行
主从域名服务器要求时间同步,如果主从域名服务器时间不同步则会造成从域名服务器不能生成数据文件,查看/var/message发现时钟不同步,所以我们可以通过下面的方法来实现同步(主、从服务器都需要进行安装)
1.查看/etc/xinetd.d/下面有没有time-dgram、 time-stream
[root@主人 ~]# ls /etc/xinetd.d/
chargen-dgram daytime-stream echo-dgram tcpmux-server
chargen-stream discard-dgram echo-stream time-dgram
daytime-dgram discard-stream rsync time-stream
2. 如果没有,需要安装xinetd
[root@localhost xinetd.d]# yum install xinetd
3.安装完后,启动time-dgram、 time-stream,xinetd服务
[root@localhost xinetd.d]# chkconfig time-dgram on
[A[root@localhost xinetd.d]# chkconfig time-stream on
[root@localhost xinetd.d]# service xinetd restart
Stopping xinetd: [FAILED]
Starting xinetd: [ OK ]
4.rdate -s [目标主机的ip] :实现同步
[root@主人 ~]# rdate -s 192.168.100.1
[DNS]ACL、also-notify、视图服务器及安全设置相关推荐
- 服务器操作系统文件共享设置,服务器操作系统文件共享设置
服务器操作系统文件共享设置 内容精选 换一换 在SAP HANA系统中,Shared卷和Backup卷由SFS Turbo提供时,需要创建一个SFS Turbo,提供共享路径给SAP HANA节点. ...
- HCIA/HCIP使用eNSP模拟HCIA综合实验(Telnet Trunk VLAN DHCP STP OSPF PPP 缺省路由 NAT ACL 与 路由器 交换机 服务器的综合配置)
使用eNSP模拟HCIA综合实验 Telnet Trunk VLAN DHCP STP OSPF PPP 缺省路由 NAT ACL 与 路由器 交换机 服务器的综合配置 实验配套拓扑:HCIA Com ...
- 路由器dns服务器修改,路由器dns服务器是自己设置的
路由器dns服务器是自己设置的 内容精选 换一换 用户的弹性云服务器已绑定EIP,但是无法连接到Internet.弹性云服务器通过EIP访问Internet的流程如图1所示:本问题请按照以下思路进行排 ...
- 路由器修改dns服务器,怎么重新设置路由器dns
怎么重新设置路由器dns 使用了一段时间的路由器会出现各种各样的问题,有些时候我们需要重新设置自己路由器的DNS设置,可是不知道从何下手.以下是小编整理的怎么重新设置路由器dns,欢迎阅读. 方法一: ...
- Cisco-小型网络拓扑(DNS、DHCP、网站服务器、无线路由器)
小型网络拓扑DNS.DHCP.网站服务器.无线路由器 ==路由器 DHCP服务器 DNS服务器 Cisco路由器操作模式 小型网络拓扑 建立网络拓扑 配置路由器 配置网站服务器 配置DNS服务器 配置 ...
- 思科服务器的dns如何配置文件,思科在服务器上配置dns
思科在服务器上配置dns 内容精选 换一换 参数说明如下:网段:VPC的地址范围.根据规划的子网信息,配置VPC的地址范围.子网网段:VPC中默认子网的地址范围,需要在VPC的子网地址范围内,根据规划 ...
- 转:windows.DNS.如何用自己的服务器做 DNS 域名解析,如何创建域名服务器?
留以备用,特转此处..本文出处:http://blog.csdn.net/ccnp_Server/article/details/789562 很多人到现在还不知道如何自己做 DNS 服务器来进行公网 ...
- 千峰笔记【数通基础】③ DHCP、DNS、FTP、WEB服务器搭建(Windows2003)
千峰笔记[数通基础] 1000phone**WEB311**课程笔记(Day8-Day9) 一.DHCP服务器:(自动为客户机分配IP地址)[端口号67/68] 好处:减少工作量.避免IP冲突.提高地 ...
- eNSP-小型网络拓扑(DNS、DHCP、网站服务器、无线路由器)
小型网络拓扑 DNS.DHCP.网站服务器.无线路由器 建立网络拓扑 配置路由器 配置DNS HTTP服务器 DHCP配置 主机采用DHCP服务获取ip配置 上一篇博客 Cisco-小型网络拓扑(DN ...
最新文章
- 当不使用会话状态时禁用它
- 非标自动化企业前十名_非标自动化设计:非标自动化是如何被称做企业里的血液?...
- ubuntu下wps无法使用搜狗输入法输入中文
- 谷歌施密特:美人才签证政策让硅谷转移到中国
- ASP.NET Core 中断请求了解一下(翻译)
- 20165203 2017-2018-2 《Java程序设计》第一周学习总结
- (四)nodejs循序渐进-函数,类和对象(基础篇)
- 使用Vue写一个登陆页面并在管理页面查看和修改
- 蓝色简约好看的个人接单HTML源码
- Libbpf-tools: Tracing工具
- 如何在SQL Server数据库中删除角色
- 坦克大战之声音处理类(四)
- 计算机英语听力速记...,2019考研计算机英语听力速记技巧
- CA搭建实验和安全基础
- 8-@Pointcut( execution(* com.ctgu.controller.AccountController.transfer(..)) ) 拦截配置问题
- Linux系统进程的理解与相关命令的使用系列
- OCR -上传图片 自动识别文字并填充
- 阿里云分析型数据库MySQL版(AnalyticDB)测试初体验
- 细细品味Hadoop_Hadoop集群精华文档合集
- 目标网站怎么样才能收集尽可能详细信息