在企业内部一般都会有自己的DNS服务,主要为了企业方便管理,例如访问一些内部系统,控制一些网站不让访问,今天我们就说说如何打造私有的DNS服务

系统基础配置

Ubuntu14.04  内存:354M (使用vagrant 创建的虚拟机,快速打造自己开发环境 vagrant + virtualbox

安装DNS服务

sudo apt-get install bind9 bind9utils

修改配置

上篮三步简单设置  用 dr.local.com 为测试域名

1.配置forward  编辑/etc/bind/named.conf.options

forwarders {
    114.114.114.114;
    8.8.8.8;
};

2.配置需要解析的域名 编辑/etc/bind/named.conf,最下面添加

zone "dr.local.com" {
    type master;
    file "/etc/bind/master/dr.local.com";
};

dr.local.com

;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA dr.local.com. root.dr.local.com. (
      2 ; Serial
 604800 ; Refresh
  86400 ; Retry
2419200 ; Expire
 604800 ) ; Negative Cache TTL
;
@ IN NS dr.local.com.
@ IN A 192.168.22.24
@ IN AAAA ::1 blog IN A 192.168.22.24
admin IN      A       192.168.22.24
api   IN      A       192.168.22.24
static   IN      A       192.168.22.24

3.自定义日志位置 编辑/etc/bind/named.conf,最下面添加

logging {
   channel query_log {
               file "/data/logs/named/namequery.log"   versions 3 size 20m;
               severity        info;
               print-time        yes;
               print-category  yes;
              };
              category queries {
                      query_log;
               };
   channel update_log {
               file "/data/logs/named/nameupdate.log"  versions 3 size 5m;
               severity        info;
               print-time        yes;
               print-category  yes;
              };
              category update {
                      update_log;
               };
   channel general_log {
                file "/data/logs/named/namegeneral.log"        versions 3 size 5m;
                severity        info;
                print-time        yes;
                print-category  yes;
              };
              category general {
                      general_log;
               };
};

这样设置自定义目录后会出现安全问题,需要修改apparmor配置,

关于apparmor具体解释请看 Ubuntu apparmor何方神圣

$ sudo vim /etc/apparmor.d/usr.sbin.named
#在最下面添加
/data/logs/named/** rw,
/data/logs/named/ rw,
$ sudo /etc/init.d/apparmor restart
$ sudo /etc/init.d/bind9 restart

验收成果

nslookup baidu.com
nslookup blog.dr.local.com

Mac设置DNS方法

设置dns截图

浏览器访问网页解析日志

PS:问题

如果出现 no valid DS resolving 错误,将 named.conf.options 中修改或者加入

dnssec-enable no; 
dnssec-validation no;

原文地址:打造私有的DNS 服务
标签:bind   dns   apparmor

智能推荐

打造私有的DNS 服务的更多相关文章

  1. 使用BIND搭建内部DNS服务

    ​​‌‌​​​‌‌​‌​​‌‌‍​‌​‌‌‌​​‌‌‌‌​‌​‍​‌​​‌​​​‌​​​‌‌​‍​‌ ...

  2. Kubernetes+Federation打造跨多云管理服务

    Kubernetes日渐普及,在公有云.私有云等多个环境中部署kubernetes集群已是常规做法,而随着环境的复杂多样和集群数量增长,如何高效地管理这些集群成为新的问题.于是跨多云管理服务应运而生. ...

  3. ipv6修改DNS服务-首选DNS服务器:240c::6666

    下一代互联网国家工程中心推出的IPv6 DNS服务 首选DNS服务器:240c::6666 备用DNS服务器:240c::6644   来自下一代互联网国家工程中心官网消息显示,日前,下一代互联网国家 ...

  4. DNS服务——域名解析转发 和 条件转发

    前言 有一台Linux机器作为DNS服务器,查看这台机器上的DNS文件,发现指向互联网上的DNS服务器. [root@ziqiang named]# cat /etc/resolv.conf # Ge ...

  5. DNS服务——搭建企业内网DNS服务器的作用

    前言 DNS服务——服务端 和 客户端 配置 介绍了如何在DNS安装DNS服务,更改一下配置文件就可以依据根提示解析全球域名.既然使用互联网上的DNS服务器就可以解析全球域名,为何还要自掏腰包搭建DN ...

  6. Liunx下配置DNS服务

    当Ping 主机名时可以映射出该主机的IP地址,反之亦然.配置并指定DNS服务器可以快速部署集群,不需要每台主机都去修改HOSTS文件即可实现IP与主机名的相互解析.而在Linux下的DNS是用bin ...

  7. 如何搭建DNS服务

    继NTP时间服务器后,继续搭建DNS服务,鉴于昨晚撰写时间超过预期,这次改变策略,先把自己需要用到的部分写出来(主要是基于RAC的搭建,只涉及正向和反向DNS解析),后面再添加必要的说明和阐述. 试验 ...

  8. k8s DNS 服务发现的一个坑

    按照官当文档,以及大家的实践进行k8s dns 服务发现搭建还是比较简单的,但是会有一个因为系统默认dns 配置造成的一个问题 1. linux  默认dns 配置在 /etc/resolv.conf ...

  9. redhat enterprixe 5.0 DNS 服务配置与管理

    一.了解DNS相关概念 DNS是一个分布式数据库,在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户机/服务器模式在整个网络上存取.通过采用复制技术和缓存技术使得整个数据库稳定可靠的同时, ...

随机推荐

  1. 【codevs2822】爱在心中 tarjan 缩点+理解

    [codevs2822]爱在心中 2014年1月26日5580 题目描述 Description “每个人都拥有一个梦,即使彼此不相同,能够与你分享,无论失败成功都会感动.爱因为在心中,平凡而不平庸, ...

  2. SQL Server:分离和重新附加数据库

    对于分离一个数据库来说,我们可以用Manage Studio界面或者存储过程.但是对于每一种方法都必须保证没有用户使用这个数据库.接下来所讲的都是对于用命令来分离或附加一个数据库.对于用Manage ...

  3. Aqua Data Studio中文乱码

    使用Aqua Data Studio 查询数据时,如果表中的数据有中文时,会显示乱码,如下图: 解决方法很简单,只能更改字体即可,步骤如下: 更改字体后,显示的结果如下:

  4. FactoryBean的使用

    一般情况下,Spring通过反射机制利用bean的class属性指定实现类来实例化bean .在某些情况下,实例化bean过程比较复杂,如果按照传统的方式,则需要在<bean>中提供大量的 ...

  5. Count the string[HDU3336]

    Count the string Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. BZOJ3571 : [Hnoi2014]画框

    题目是要求最小乘积最小权匹配, 将一种方案看做一个二维点(x,y),x=a值的和,y=b值的和,所有方案中只有在下凸壳上的点才有可能成为最优解 首先要求出两端的方案l,r两个点 l就是a值的和最小的方 ...

  7. JSON转换为数组 但读取JSON的顺序目前没法保证

    var json = {a : 1, b : 2, c: 3}; var jsonArr = []; for (i in json){ var wrap = []; wrap[0] = i; wrap ...

  8. HDU 3065 (AC自动机模板题)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3065 题目大意:多个模式串,范围是大写字母.匹配串的字符范围是(0~127).问匹配串中含有哪几种模 ...

  9. Codeforces Round #208 (Div. 2) B Dima and Text Messages

    #include <iostream> #include <algorithm> #include <string> using namespace std; in ...

  10. hiho 毁灭者问题

    描述 在 Warcraft III 之冰封王座中,毁灭者是不死族打三本后期时的一个魔法飞行单位. 毁灭者的核心技能之一,叫做魔法吸收(Absorb Mana): 现在让我们来考虑下面的问题: 假设你拥 ...