bind中的基础安全相关配置

  • (一)ACL定义:把一个或多个主机归并为一个集合,并通过一个统一的名称调用

    acl acl_name{ ip; ip; net/prelen;} ;
  • 实例:
    
    acl mynet{机 172.25.0.0/46;};
  • bind 由四个内置的aclnone:    没有一个主机any:     任意主机local:   本机localnet:本机的IP同掩码运算后得到的网络地址

  注意:    acl,先定义后使用,一般定义在配置文件中的option前面

访问控制的指令:

allow-query {};                  #允许查询的主机 (白名单)allow-transfer {};               #允许区域传送的主机 (白名单)allow-recursion {};              #允许递归的主机(通常全局option)allow-upadte {};                 #允许更新区域数据库中内容

(二)视图( view)

  1. 一旦启用view,所有zone都只能定义在view中

  2. 仅有必要在匹配到允许递归请求(本地dns)的客户端所在view中定义根区域

  3. 客户端请求到达时,是自上而下匹配每个view所服务的客户端列表

  4. 一个bind服务器可以定义多个view,每个view中可定义一个或多个zone

  5. 每个view用来匹配一组客户端请求

  6. 多个view可能对同一个区域进行解析,但使用不同的区域解析文件

  7. 实例

  8. view VIEW_NAME {    match-clients { };          #指定不同主机(客户端),看到不同视图           match-destinations { };     #指定不同IP,看到不同视图    match-recursive-only { };   #用来针对递归和非递归,查询不同的视图};
  9. 注意


下面我们来看一组ACL和view结合使用的实例~~

定义我的acl

[root@server named]# vim /etc/named.confacl mynet{        172.25.254.11;        172.25.254.10;        127.0.0.0/8;};

注意:    acl要定义在bind之外,因为无法在视图中使用acl

定义视图

[root@server named]# vim /etc/named.rfc1912.zonesview internal {        match-clients { mynet; };   #匹配的客户端列表        allow-recursion { mynet; }; #允许递归的列表

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

zone "lalala.com" IN {        type master;        file "lalala.com.zone";        allow-update { none; };        also-notify {172.25.254.10;};    };};

在acl中的主机,就可以成功解析  ^-^

[root@server named]# dig -t A www.lalala.com @172.25.254.11

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> -t A www.lalala.com @172.25.254.11;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65311;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;www.lalala.com.            IN    A

;; ANSWER SECTION:www.lalala.com.        86400    IN    A    172.25.254.11

不在acl中主机就不能访问  =-=

[root@foundation88 ~]# ip addr show br04: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP     link/ether 34:17:eb:76:53:97 brd ff:ff:ff:ff:ff:ff    inet 172.25.254.88/24 brd 172.25.254.255 scope global br0[root@foundation88 ~]# dig -t A www.lalala.com @172.25.254.11

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.lalala.com @172.25.254.11;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 49304;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;www.lalala.com.            IN    A

不同客户端解析同一个域名结果不一样

[root@server named]# vim /etc/named.rfc1912.zones ....view external {        match-clients {any;};          #因为view按照视图定义顺序匹配主机,所以这里的any为剩下的主机        zone "lala la.com" IN {                type master;                file "lalala.com.external";                allow-update {none;};        };};

[root@server named]# vim lalala.com.external $TTL 1D@       IN SOA   ns1.lalala.com. admin.lalala.com (                                        2016060905; serial                                        1D      ; refresh                                        1H      ; retry                                        1W      ; expire                                        3H )    ; minimum        NS      ns1.lalala.com.        NS      ns2.lalala.com.        MX  10  mx1.lalala.com.        MX  20  mx2.lalala.com.ns1     A       172.25.254.11ns2     A       172.25.254.18www    A       2.2.2.2*      A       2.2.2.2

使用同一个DNS服务器,acl列表中解析的是172.25.254.11  ^-^

[root@server named]# dig -t A www.lalala.com @172.25.254.11

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> -t A www.lalala.com @172.25.254.11;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10150;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;www.lalala.com.            IN    A

;; ANSWER SECTION:www.lalala.com.        86400    IN    A    172.25.254.11

使用同一个DNS服务器,其他主机解析的是2.2.2.2   ^-^

[root@foundation88 ~]# dig -t A www.lalala.com @172.25.254.11

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.lalala.com @172.25.254.11;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51279;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;www.lalala.com.            IN    A

;; ANSWER SECTION:www.lalala.com.        86400    IN    A    2.2.2.2

转载于:https://blog.51cto.com/12059878/1940461

DNSBIND——DNS的ACL和视图相关推荐

  1. linux+dns的acl,DNS服务器之三:DNS高级用法(DNS转发、ACL、智能DNS及日志系统) | 旺旺知识库...

    前面两篇DNS文件讲解了基本的安装配置和主从复制: 本文将深入讲解DNS服务器bind98的高级用法,主要包括: DNS转发配置 ACL应用与配置 使用bind实现智能DNS BIND日志系统介绍 一 ...

  2. DNSBIND——DNS的子域授权和定义转发服务器

    子域授权:分布式数据库 定义:每个域的名称服务器,都是通过其上级名称服务器所在的解析库进行授权: 例子: 根域授权tld,在根域的名称服务器上,解析库中添加资源记录: .com. IN NS ns1. ...

  3. Linux运维实战之DNS的高级配置(转发器、视图等)

    上次博文我们具体配置了一台DNS服务器并实现了主辅之间的区域传送,本次博文我们来看看DNS的一些高级配置. 在进行DNS的高级配置之前,必须要理解DNS的原理(参见http://sweetpotato ...

  4. dns日志级别 linux,linux下DNS服务器视图view及日志系统详解

    linux下DNS服务器视图view及日志系统详解DNS服务器ACL:在named.conf文件中定义ACL功能如同bash当中定义变量,便于后续引用 ACL格式: acl ACL名称 { IP地址1 ...

  5. DNS主从类型的架设

    为了更好的实现dns的解析功能,使用主从dns服务器来解析,是很好的方式,这样可以实现冗余,也可以实现一点负载. 首先建立一个主DNS服务器,他的配置文件主要有/etc/named.conf./vat ...

  6. Linux进阶:DNS详解

    DNS服务和BIND 本章内容 名字解析 DNS服务 实现主从服务器 实现子域 实现view 编译安装 压力测试 DNS排错 DNS服务 DNS:Domain Name Service 应用层协议C/ ...

  7. DNS:域名服务/系统

    yum源 http://mirrors.aliyun.com http://mirrors.163.com 一.dns客户端名称解析的流程: www.baidu.com 1.先查看本地缓存. 2.检查 ...

  8. 部署DNS split分离解析服务

    DNS分离解析(视图解析) – 能够区分客户机的来源地址 – 为不同类别的客户机提供不同的解析结果(IP地址) – 当不同的客户端解析同一域名,得到的结果不同 – 为客户端提供网络最近的资源 • 环境 ...

  9. 智能化服务器怎么调,怎么设置dns 智能dns设置方法 【图文】

    智能 dns 是关于域名频道的一种智能解析服务,它能够根据访问者的 IP 地址,自动判断出对应的地址,使访问者达到相应的服务器.这样解释是不是还是不太了解这个服务,就让小编带你了解一下如何设置智能 D ...

  10. Cobalt Strike:解密 DNS 流量——第 5 部分

    博文系列:Cobalt Strike:解密流量 Cobalt Strike:使用已知私钥解密流量 - 第 1 部分 Cobalt Strike:使用已知私钥解密流量 - 第 2 部分 Cobalt S ...

最新文章

  1. 从程序详解拒绝服务***
  2. cmake 学习笔记(一)
  3. Storm编程模型总结
  4. 深入理解C++中的explicit关键字
  5. java多对多的存储_Swift CoreData,通过多对多关系保存数据
  6. java.lang.Class解析
  7. 数据库的跨平台设计(转)
  8. ECharts图表tooltip显示时超出canvas图层解决方法
  9. centos 挂载与卸载硬盘
  10. 【TCP/IP】【测试】常用发流软件一览
  11. matlab偏微分方程工具箱应用简介,MATLAB工具箱简介
  12. pta C语言选择题
  13. AtCoder - ABC 160 - DE(贪心)
  14. 如何获取和发现用户需求
  15. Caused by: java.lang.invoke.LambdaConversionException: Invalid receiver type class redacted.BasicEnt
  16. Docker基础、利用Docker Compose部署Vue项目
  17. 【PS插件】Retouch4me 10合1一键安装版
  18. 淘宝客如何通过小红书引流?如何找出你的目标人群有哪些?
  19. char *const 和 const char *(char const*)
  20. springmvc页面跳转错误404/找不到页面/拒绝访问

热门文章

  1. SharePoint 2013—创建Master Page
  2. 结合地理信息系统开发的项目
  3. RabbitMQ消费端自定义监听(九)
  4. cmd 编码修改。 牛阿。 解决问题
  5. 初学swift笔记-数组、字典、元组(三)
  6. 内核编译报错Fedora20(友善)
  7. HDU 4707 Pet 邻接表实现
  8. (转)什么是Cookies详解
  9. Oracle的并发多版本 读一致性
  10. 一个三层结构的留言板,结合了ajax效果