DNS 安全详解

前言

在配置DNS主从服务器同步的时候,bind服务默认是允许任何人进行同步的,但是这样容易造成安全隐患。bind服务支持通过限制IP和key认证两种方式来对同步进行限制。

常见参数解析

  • allow-query { any; }; #允许所有用户使用dns解析
  • forwarders { 172.25.254.250; }; #如果在本地高速缓存dns中找不到解析则访问172.25.254.250进行解析(转发的意思)
  • allow-query-cache { any;} ;#允许用户查询服务器缓存。如果没有配置,则继承allow-recursion设置,若allow-recursion也没配置,则继承allow-query设置,若allow-query也没设置,则使用默认值default(localnets; localhost;)。
  • allow-transfer { 192.168.8.100; }; ##设定哪台主机允许和本地服务器进行域传输
  • also-notify:主动通知从域名服务器进行更新,不需要在等规定的时间后才通知从域名服务器进行更新
  • allow-recursion 设定哪台主机可以进行递归查询。如果没有设定,缺省是允许所有主机进行递归查询

IP限制

在options 里加入这个
 allow-query     { localhost; 127.0.0.1; 10.0.0.0/8; 100.0.0.0/8; 172.0.0.0/8; 192.0.0.0/8; };

key认证

获取key的方法:

dnssec-keygen -a hmac-md5 -n HOST -b 512  dns
  • 在zone文件里定义key
key tengfeikey {     //编辑key
        algorithm hmac-md5;  //指定key的算法
        secret "fsApVPn3QtzSYVCiRxjA5eK/0MgG9LLZPQ8nAVa2COEfkcAeu1U3Nz8YWZikM+bmkcrxsB09bFhe8UNp4smvAw==";  //key的密文串
};
  • 调用方法:
zone "tengfei.com" IN {
    type master; //主服务器
    file "tengfei.com.zone"; //域数据库文件
    allow-transfer { key tengfeikey;};
};
posted @ 2020-03-11 17:28  tengfei520  阅读(1036)  评论(0编辑  收藏  举报