1. DNS(Domain Name System) 服务

1.1.1. DNS服务作用:

DNS是Domain Name System即域名服务,用于域名解析。常将域名解析为ip地址,称为正向解析;少量会将ip地址解析为域名,称为反向解析;

1.1.2. DNS安装软件:

bind 提供主要程序及相关文件 bind-chroot 为bind提供一个伪装的根目录以增强安全性(将“/var/named/chroot/文件夹作为BIND的根目录”)不安装以/var/named为根目录 bind-utils 提供nslookup及dig等测试工具(默认桌面版已经安装)

1.1.3. DNS服务:

服务进程名称:named 启动服务:/etc/init.d/named start 或 service named start

1.1.4. DNS配置文件:

/etc/hosts 本地dns解析 /etc/resolve.conf 解析DNS的服务器 /etc/nsswitch.conf 更改hosts和dns优先级。更改 hosts file dns 先hosts后dns /etc/named.conf 来自于/usr/share/doc/bind-9.8.2/sample/etc/named.conf 主配置文件 /etc/named/etc/named.ca 包含了13台根域名服务器的地址 /etc/named.rfc1912.zones 来自于/usr/share/doc/bind-9.8.2/sample/etc/named.rfc1912.zones 次要配置文件

1.1.5. 域名服务器种类:

  • 缓存域名服务器
  • 注域名服务器
  • 从域名服务器

1.1.6. 服务端口号即协议:

53 端口 tcp/udp

1.1.7. 测试命令:

windows里查看dns缓存
  • ipconfig /displaydns 查看
  • ipconfig /flushdns 刷新

    linux
  • nscd

  • yum install nscd
  • service nscd restart
    nscd -g
    nscd -i
    dnstop 查看dns流量查询的情况的软件
    host
    nslookup
    dig
    named-checkconf

1.1.8. DNS解析过程:

www.baidu.com 1.客户机先查询本地dns缓存 2.查找本地配置文件/etc/hosts 3.向本地dns服务器发送域名解析的请求,即/etc/rsolv.conf中指定的dns服务器 4.本地dns查询缓存,如果有直接返回给客户机;如果没有再查询本地dns区域数据库文件里是否有记录,如果有返回给客户机;如果没有查询到就向跟域“.”查询 5.根域告诉本地dns服务器找的com服务器 6.本地dns服务器向.com的服务器查询,com服务器告诉本地dns baidu这个域的dns服务器ip 7.本地dns服务器找到baidu.com域的dns服务器,查询到www这台主机的ip 8.同时放到自己的缓存里 9.告诉客户机www.baidu.com的域名对应的ip 10.客户机将ip放到缓存里

1.1.9. 常见一级域名缩写:

.com ---->commercial 公司以及盈利性组织 .net ---->network .org ---->organization 非盈利组织 .edu ---->education 以教育为主的组织 .cn --->china 属于中国一级域名 .kr ---->korea .tw --->taiwan 台湾 .hk ---->hongkong 香港 .mil ---->military

1.1.10. DNS服务搭建:

  • 第一步:配置yum源,安装以下软件包:

    yum install bind bind-chroot bind-utils
    • 第二步: 刷新named服务,/etc/named.conf配置文件会复制到/var/name/chroot/etc/下, 会产生一些key文件/var/name/chroot/etc 配置文件

=== ds缓存域名服务器 1.安装好软件 2.修改/etc/named.conf 3.刷新服务

    4.确保服务器能上网

===

options {
        listen-on port 53 { 10.0.2.189; };
//      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; };
#forwarders  {8.8.8.8;};   转发到指定的dns服务器
        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";
};
include "/etc/named.rfc1912.zones";
#include "/etc/named.root.key";

3.添加域名
[root@localhost named]# vim /etc/named.rfc1912.zones
zone "feng.com" IN {
        type master;
        file "feng.com.zone";
};
zone "2.0.10.in-addr.arpa" IN {
        type master;
        file "10.0.2.arpa";
};

====

4.新建区域数据库文件 [root@localhost named]# cd /var/named/ [root@localhost named]# ls chroot dynamic named.empty named.loopback data named.ca named.localhost slaves [root@localhost named]# cp named.localhost feng.com.zone -p

2. [root@localhost named]# cp named.localhost 10.0.2.arpa -p

主、从服务器之间复制区域数据库文件的时候的一些设置 0 ; serial 当从域名服务器到主域名服务器来复制区域数据库文件的时候,看serial值是否比它的serial值大,如果大,就复制,如果相等就不复制 1D ; refresh 1H ; retry 1W ; expire

                                    3H )    ; minimum

=== SOA A NS MX ---》mail exchange 告诉邮件服务器的ip 创建邮件交换记录,5表示优先级,越小优先级越高 数据范围自己定义 CNAME

*

负载均衡

3. 泛域名解析

[root@localhost named]# cat feng.com.zone $TTL 1D @ IN SOA @ root.feng.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 10.0.2.100 www A 10.0.2.253 ftp A 10.0.2.253 lulu A 10.0.2.25 @ MX 6 mail2.feng.com. mail2 A 10.0.2.12 @ MX 5 mail.feng.com. mail A 10.0.2.11 luu CNAME lulu $GENERATE 10-50 station$ A 10.0.2.$

  • A 10.0.2.253 video A 10.0.2.253 video A 10.0.2.250 video A 10.0.2.230

4. [root@localhost named]\

[root@localhost named]# cat 10.0.2.arpa $TTL 1D @ IN SOA @ root.feng.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 10.0.2.100 253 PTR www.feng.com. 25 PTR lulu.feng.com. 12 PTR mail2.feng.com. 11 PTR mail.feng.com. 253 PTR ftp.feng.com. 253 PTR video.feng.com. $GENERATE 10-50 $ PTR station$.feng.com.

5. [root@localhost named]\

[root@localhost etc]# -t /var/named/chroot/

6. [root@localhost named]# named-checkzone feng.com feng.com.zone

在/etc/named.conf forwarders {10.0.2.250;10.0.32.3;};

7. 先查本机,再查转发器服务器,然后再查根域

条件转发器,符合dear.com的域名查询的时候,就去10.0.0.151查询 zone "dear.com" IN { type forward; forwarders {10.0.0.151;};

8. };

nslookup set type=mx set type=ns set type=a

    set  type=PTR  

===

9. > server 10.0.0.151 临时修改dns服务器地址,不需要去修改/etc/resolv.conf文件

10. [root@localhost ~]# dig www.baidu.com @8.8.8.8

反向解释过程

=== 从域名服务器 1.安装软件 2.修改配置 zone "feng.com" IN { type slave; file "slaves/feng.com.zone"; masters {10.0.2.100;}; }; zone "2.0.10.in-addr.arpa" IN { type slave; file "slaves/10.0.2.arpa"; masters {10.0.2.100;};

11. };

http://10.0.2.253/4ban-linux/system3

12. lftp 10.0.2.253/software

转发器 forward first/only forwarders {8.8.8.8;};

13. 条件转发器

子域授权 view

14. TISG

dns 优先级最高的解析服务文件是/etc/hosts文件 dns domain name system 域名系统 dns的特点:分布式,层次式

redhat5 修改配置文件要进入到/var/named/chroot/中 redhat6 可以直接修改/etc/named.conf,然后会自动复制到/var/named/chroot中

更改hosts和dns优先级更改 /etc/nsswitch.conf hosts file dns 先hosts后dns

反向域解析的文件文件 10.168.192.in-addr.arpa 反向解析192.168.10网段

named.conf options 是全局配置 listen-on port 53 默认时any directory “/var/named”; dump-file "/var/named/data/cache_dump.db" 缓存文件 recursion yes; 是否进行互联网解析 statistics 统计 memstatistics 统计内存消耗时段

zone "." IN { type hint ; file “named.ca” 国际13台dns顶级服务器的地址在named.ca中

15. }

最简单的dns服务器配置文件 options { directory "/var/named" }

===================== options { 全局配置 listen-on port 53 { 127.0.0.1; };监听的端口,删除时监听所有的端口 listen-on-v6 port 53 { ::1; };ipv6,的监听 directory "/var/named";住配置文件,这个必须有,而且必须是这个位置,不能修改 dump-file "/var/named/data/cache_dump.db";缓存文件存放的地方,默认没有。要是用rpch dumpdb同步内存 statistics-file "/var/named/data/named_stats.txt"; 统计dns memstatistics-file "/var/named/data/named_mem_stats.txt";统计dns服务消耗的内存及时间段 allow-query { localhost; }; 可以删除 recursion yes; 是否解析互联网dns,默认是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"; };

include "/etc/named.rfc1912.zones"; 把文件包含进来, include "/etc/named.root.key";

~


/etc/resolved.conf search com.cn 在ping时会自动在ping的域名后面加上com.cn,如果错误将都无法ping通 nameserver 222.245.129.80 dns服务器,如8.8.8.8

/etc/named.conf options 是全局配置 listen-on port 53 默认时any directory “/var/named”; dump-file "/var/named/data/cache_dump.db" 缓存文件 recursion yes; 是否进行互联网解析

statistics 统计

memstatistics 统计内存消耗时段

zone "." IN { type hint ; file “named.ca” 国际13台dns顶级服务器的地址在named.ca中

16. }

最简单的dns服务器配置文件 options { directory "/var/named" }

===================== options { 全局配置 listen-on port 53 { 127.0.0.1; };监听的端口,删除时监听所有的端口 listen-on-v6 port 53 { ::1; };ipv6,的监听 directory "/var/named";住配置文件,这个必须有,而且必须是这个位置,不能修改 dump-file "/var/named/data/cache_dump.db";缓存文件存放的地方,默认没有。要是用rpch dumpdb同步内存 statistics-file "/var/named/data/named_stats.txt"; 统计dns memstatistics-file "/var/named/data/named_mem_stats.txt";统计dns服务消耗的内存及时间段 allow-query { localhost; }; 可以删除 recursion yes; 是否解析互联网dns,默认是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"; };

include "/etc/named.rfc1912.zones"; 把文件包含进来, include "/etc/named.root.key"; [root@izj6cdhdoq5a5zsf7bf7a3z blognote]# cat ntp.md

17. Linux时间服务 - NTP

17.1. 时间和时区

时间是一个瞬间的概念,全宇宙是唯一的,体现在计算机中可以理解成unix时间戳,目前精确的时间源是参考原子钟的震荡频率,然后同步到全球。

由于地球旋转导致不同地域的人看到的日出日落的时间不同,根据地球的地址位置,人为将地球划分成24个不同的时区。

计算机中经常看到的是UTC时间标准(Coordinated Universal Time的简写),他是0时时区标准。中国时区标准(CST: Chinese Standard Time)相对于0时时区是东八区

例如某一时刻:

  • Unix时间戳:

    [root@VM_11_7_centos ~]# date +%s
    1496217462
    • UTC时区时间:
    [root@VM_11_7_centos ~]# date -u
    Wed May 31 07:57:42 UTC 2017
    • CST时区时间:
    [root@VM_11_7_centos ~]# date
    Wed May 31 15:57:42 CST 2017

17.2. 配置文件:/etc/ntp.conf

  • driftfile 文件路径 系统时间与BIOS事件的偏差记录 driftfile /etc/ntp/drift

  • restrict 控制相关权限。 语法为: restrict IP地址 mask 子网掩码 参数 其中IP地址也可以是default ,default 就是指所有的IP 参数有以下几个:

    • ignore :关闭所有的 NTP 联机服务
    • nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。
    • notrust :客户端除非通过认证,否则该客户端来源将被视为不信任子网
    • noquery :不提供客户端的时间查询:用户端不能使用ntpq,ntpc等命令来查询ntp服务器
    • notrap :不提供trap远端登陆:拒绝为匹配的主机提供模式 6 控制消息陷阱服务。陷阱服务是 ntpdq 控制消息协议的子系统,用于远程事件日志记录程序。
    • nopeer :用于阻止主机尝试与服务器对等,并允许欺诈性服务器控制时钟
    • kod : 访问违规时发送 KoD 包。 restrict -6 表示IPV6地址的权限设置。
  • server 时间源 语法为:server 时间源IP/域名 参数 参数:

    • prefer : 优先级,配置该参数优先作为时间源
    • iburst :

18. NTP工具

18.1. ntpq

ntpq 依据/etc/ntp.conf配置文件进行查询

[root@localhost ~]#ntpq -np 127.0.0.1
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*172.31.57.3     LOCAL(0)         4 u   19   32  377    0.123   -0.016   0.003
 172.31.57.4     172.31.57.3      5 u    1   32  377    0.121   -0.017   0.006
 127.127.1.0     .LOCL.           5 l    3   64  377    0.000    0.000   0.001
  • remote - ntp时间源。“+”表示优先,“*”表示次优先
  • refid - remote时间源的上一层时间源
  • st - stratum时间源阶层
  • when - 多少秒前曾经同步过时间,当达到poll时会进行一次同步,然后重新计时
  • poll - 时间更新周期,时间单位秒
  • reach - 已经向上层ntp服务器要求更新的次数.是一个八进制数字,指出源的可存取性。值 377 表示源已应答了前八个连续轮询。
  • delay - 网络延迟
  • offset - 时间补偿,时间偏移
  • jitter - 系统时间与bios时间差

18.2. ntpdate

ntpdate 进行时间的查询和时间同步 使用ntpdate同步时ntpd服务不能允许,否则会报错

指定时间源进行查询

ntpdate -q 0.centos.pool.ntp.org

如果想定时进行时间校准,可以使用crond服务来定时执行 修改crontab -e

30 8 * * * root /usr/sbin/ntpdate 0.centos.pool.ntp.org; /sbin/hwclock -w

18.3. date

  • 设置系统时间 ``` 查看和设置系统时间

  • 设置系统时间

    date -s "2017-05-31 12:00:00"
    • 当前unix时间戳
    date +%s
    • 转换指定日期为Unix时间戳
    date -d '2013-2-22 22:14' +%s
    • 将时间戳转换成系统时区时间
    date -d @1361542596
    date -d @1361542596 +"%Y-%m-%d %H:%M:%S"

18.4. ntpd、ntpdate作为客户端的区别

ntpd不仅仅是时间同步服务器,它还可以做客户端与标准时间服务器进行同步时间,而且是平滑同步

ntpdate立即同步,在生产环境中慎用ntpdate,也正如此两者不可同时运行

时钟的跃变,对于某些程序会导致很严重的问题。许多应用程序依赖连续的时钟。毕竟,这是一项常见的假定,即,取得的时间是线性的,一些操作,例如数据库事务,通常会地依赖这样的事实:时间不会往回跳跃。 不幸的是,ntpdate调整时间的方式就是我们所说的”跃变“:在获得一个时间之后,ntpdate使用settimeofday(2)设置系统时间,这有几个非常明显的问题:

  • 第一,这样做不安全。ntpdate的设置依赖于ntp服务器的安全性,攻击者可以利用一些软件设计上的缺陷,拿下ntp服务器并令与其同步的服务器执行某些消耗性的任务。由于ntpdate采用的方式是跳变,跟随它的服 务器无法知道是否发生了异常(时间不一样的时候,唯一的办法是以服务器为准)。

  • 第二,这样做不精确。一旦ntp服务器宕机,跟随它的服务器也就会无法同步时间。与此不同,ntpd不仅能够校准计算机的时间,而且能够校准计算机的时钟。

  • 第三,这样做不够优雅。由于是跳变,而不是使时间变快或变慢,依赖时序的程序会出错(例如,如果ntpdate发现你的时间快了,则可能会经历两个相同的时刻,对某些应用而言,这是致命的)。因而,唯一一个可以令时间发生跳变的点,是计算机刚刚启动,但还没有启动很多服务的那个时候。其余的时候,理想的做法是使用ntpd来校准时钟,而不是调整计算机时钟上的时间。

NTPD 在和时间服务器的同步过程中,会把 BIOS 计时器的振荡频率偏差——或者说 Local Clock 的自然漂移(drift)——记录下来。这样即使网络有问题,本机仍然能维持一个相当精确的走时。

Copyright © 温玉 2021 | 浙ICP备2020032454号 all right reserved,powered by Gitbook该文件修订时间: 2021-05-08 03:24:01

results matching ""

    No results matching ""