打造私有的DNS 服务
在企业内部一般都会有自己的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 服务的更多相关文章
- 使用BIND搭建内部DNS服务
		 ... 
- Kubernetes+Federation打造跨多云管理服务
		Kubernetes日渐普及,在公有云.私有云等多个环境中部署kubernetes集群已是常规做法,而随着环境的复杂多样和集群数量增长,如何高效地管理这些集群成为新的问题.于是跨多云管理服务应运而生. ... 
- ipv6修改DNS服务-首选DNS服务器:240c::6666
		下一代互联网国家工程中心推出的IPv6 DNS服务 首选DNS服务器:240c::6666 备用DNS服务器:240c::6644 来自下一代互联网国家工程中心官网消息显示,日前,下一代互联网国家 ... 
- DNS服务——域名解析转发 和 条件转发
		前言 有一台Linux机器作为DNS服务器,查看这台机器上的DNS文件,发现指向互联网上的DNS服务器. [root@ziqiang named]# cat /etc/resolv.conf # Ge ... 
- DNS服务——搭建企业内网DNS服务器的作用
		前言 DNS服务——服务端 和 客户端 配置 介绍了如何在DNS安装DNS服务,更改一下配置文件就可以依据根提示解析全球域名.既然使用互联网上的DNS服务器就可以解析全球域名,为何还要自掏腰包搭建DN ... 
- Liunx下配置DNS服务
		当Ping 主机名时可以映射出该主机的IP地址,反之亦然.配置并指定DNS服务器可以快速部署集群,不需要每台主机都去修改HOSTS文件即可实现IP与主机名的相互解析.而在Linux下的DNS是用bin ... 
- 如何搭建DNS服务
		继NTP时间服务器后,继续搭建DNS服务,鉴于昨晚撰写时间超过预期,这次改变策略,先把自己需要用到的部分写出来(主要是基于RAC的搭建,只涉及正向和反向DNS解析),后面再添加必要的说明和阐述. 试验 ... 
- k8s DNS 服务发现的一个坑
		按照官当文档,以及大家的实践进行k8s dns 服务发现搭建还是比较简单的,但是会有一个因为系统默认dns 配置造成的一个问题 1. linux 默认dns 配置在 /etc/resolv.conf ... 
- redhat enterprixe 5.0 DNS 服务配置与管理
		一.了解DNS相关概念 DNS是一个分布式数据库,在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户机/服务器模式在整个网络上存取.通过采用复制技术和缓存技术使得整个数据库稳定可靠的同时, ... 
随机推荐
- C++primer学习笔记(一)——Chapter 3
			3.1 Namespace using Declarations 1.因为C++里有名字空间的定义,例如我们使用cin的时候必须写成std::cin,如果就用一次还是可以接受的,但是如果一直都这样,那 ... 
- 关于LR中的EXTRARES
			LoadRunner脚本之EXTRARES参数 EXTRARES:分隔符,表示标记下一个属性是资源属性的列表(list of resource attributes). [EXTRARES后的资源是由 ... 
- OutOfMemoryError异常穷举
			本文内容的目的有两个:第一,通过代码验证Java虚拟机规范中描述的各个运行时区域存储的内容:第二,在工作中遇到实际的内存溢出异常时,能根据异常的信息快速判断是哪个区域的内存溢出,知道什么样的代码可能会 ... 
- 2016.6.13  php与MySQL数据库交互之数据库中的商品信息展示
			<table width="550" border="2" align="center" cellpadding="0&qu ... 
- 2016.5.27  PHP连接数据库与查询
			提示mysql_query() expects parameter 2 to be resource, null given in 错误是因为你没有连接数据库就进行了查询,正常的程序应该这样写: fu ... 
- javascript优化--10模式(设计模式)01
			单体模式:保证一个特定类仅有一个实例;即第二次使用同一个类创建新对象时,应该得到与第一个所创建对象完全相同对象: 在JS中,可以认为每次在使用对象字面量创建对象的时候,实际上就在创建一个单体: 当使用 ... 
- node连接--MongoDB
			简介: 传统关系类型(ORM:Object-Relational Mapper),MongoDB(ODM:Object Document Mapper); MongoDB是一个面向文档,schme无关 ... 
- BZOJ2310 : ParkII
			单路径最大和问题,设f[i][j][S]表示到达(i,j),轮廓线状态为S的最优解. S用4进制m+1位数表示,0表示无插头,1表示左括号,2表示右括号,3表示独立插头. 在DP之前先进行一次预处理, ... 
- 【原】storm源码之理解Storm中Worker、Executor、Task关系
			Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作:1. Worker(进程)2. Executor(线程)3. Task 下图简要描述了这3者之间的关 ... 
- topcoder SRM 593 DIV2 WolfDelaymaster
			#include <iostream> #include <string> #include <algorithm> using namespace std; cl ... 
