DNS服务

DNS服务

任务描述:创建 DNS 服务器,实现企业域名访问。 (1)所有 linux 主机启用防火墙,防火墙区域为 public,在防火 墙中放行对应服务端口。

​
 # 需要用到的工具
 yum install -y bash* vim* expect
 systemctl start firewalld
 systemctl enable firewalld
 firewall-cmd --permanent --zone=public --add-port=123/udp --add-port=53/tcp --add-port=53/udp --add-port=80/tcp --add-port=443/tcp --add-port=21/tcp --add-port=8080/tcp --add-port=8443/tcp --add-port=137/udp --add-port=138/udp --add-port=445/tcp --add-port=139/tcp --add-port=2049/tcp --add-port=2049/udp --add-port=111/tcp --add-port=111/udp --add-port=32767/tcp --add-port=32767/udp --add-port=860/tcp --add-port=3260/tcp --add-port=3306/tcp --add-port=2375/tcp --add-port=2375/udp --add-port=88/tcp --add-port=464/tcp --add-port=749/tcp
 systemctl restart firewalld
 firewall-cmd --list-all

​

(2)利用 chrony,配置 linux1 为其他 linux 主机提供 NTP 服务。

​
[root@localhost ~]# vi /etc/chrony.conf
 #pool 2.rocky.pool.ntp.org iburst    
 server 10.13.220.101 iburst
 allow 10.13.220.0/24
 local stratum 10
 ​
 #其他机子
 [root@linux2 ~]# vi /etc/chrony.conf 
 #pool 2.rocky.pool.ntp.org iburst  
 server 10.13.220.101 iburst
 [root@linux2 ~]# systemctl restart chronyd
 [root@linux2 ~]# systemctl enable chronyd
 [root@linux2 ~]# timedatectl
                Local time: Thu 2023-07-06 04:03:11 EDT
            Universal time: Thu 2023-07-06 08:03:11 UTC
                  RTC time: Thu 2023-07-06 08:03:11
                 Time zone: America/New_York (EDT, -0400)
 System clock synchronized: yes
               NTP service: active
           RTC in local TZ: no

​
 ​

(3)所有 linux 主机之间(包含本主机)root 用户实现密钥 ssh认证

 [root@linux1 ~]# ssh-keygen
 [root@linux1 ~]# vi ssh.sh
 [root@linux1 ~]# cat ssh.sh 
  留一行空行
 #!/usr/bin/expect
 for ip in linux{1..9}.skills.lan
 do expect -c "
 set timeout 2
 spawn ssh-copy-id "${ip}"
 expect {
 "yes/no" {send yes\r;exp_continue}
 "password" {send Key-1122\r}
 };expect eof"
 done
 ​
 [root@linux1 ~]# scp ssh.sh 10.10.220.109:/root
 The authenticity of host '10.10.220.109 (10.10.220.109)' can't be established.
 ED25519 key fingerprint is SHA256:i+CShBZe1qfinoq2urgeEWrWyZfuy6UFl5zEeSoyKew.
 This host key is known by the following other names/addresses:
     ~/.ssh/known_hosts:1: 10.10.220.102
     ~/.ssh/known_hosts:4: linux1.skills.lan
     ~/.ssh/known_hosts:5: linux2.skills.lan
     ~/.ssh/known_hosts:6: linux3.skills.lan
     ~/.ssh/known_hosts:7: linux4.skills.lan
     ~/.ssh/known_hosts:8: linux5.skills.lan
     ~/.ssh/known_hosts:9: linux6.skills.lan
     ~/.ssh/known_hosts:10: linux7.skills.lan
     (8 additional names omitted)
 Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
 Warning: Permanently added '10.10.220.109' (ED25519) to the list of known hosts.
 ssh.sh                  
           

(4)利用 bind,配置 linux1 为主 DNS 服务器,linux2 为备用 DNS服务器。为所有 linux 主机提供冗余 DNS 正反向解析服务。 

yum install bind bind-utils-y

 ​
 vi /etc/named.conf
 options {
     listen-on port 53 { any; }; 
     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";
     secroots-file   "/var/named/data/named.secroots";
     recursing-file  "/var/named/data/named.recursing";
     allow-query     { any; };                 
     allow-transfer  { 10.10.220.102; } ;     
 ​
 vi /etc/named.rfc1912.zones
 # 在末尾添加
 zone "skills.lan" IN {
         type master;
         file "zxqy";
 };
 ​
 zone "100.168.192.in-addr.arpa" IN {
         type master;
         file "fxqy";
 };
 ​
 cd /var/named/
 cp -p named.localhost zxqy
 cp -p named.loopback fxqy
 for i in {1..9};do echo "linux$i A 10.10.220.10$i" >> zxqy;done
 for i in {1..9};do echo "10$i PTR linux$i.skills.lan." >> fxqy;done
 [root@linux1 named]# cat zxqy 
 $TTL 1D
 @   IN SOA  @ linux1.skills.lan. (
                     0   ; serial
                     1D  ; refresh
                     1H  ; retry
                     1W  ; expire
                     3H )    ; minimum
     NS  @
     A   127.0.0.1
     AAAA    ::1
 @   MX 10 linux5.skills.lan.
 tomcat  A   10.10.220.103
 linux1 A 10.10.220.101
 linux2 A 10.10.220.102
 linux3 A 10.10.220.103
 linux4 A 10.10.220.104
 linux5 A 10.10.220.105
 linux6 A 10.10.220.106
 linux7 A 10.10.220.107
 linux8 A 10.10.220.108
 linux9 A 10.10.220.109
 *   A   10.10.220.101
 ​
 ​
 [root@Linux1 named]# cat fxqy 
 $TTL 1D
 @       IN SOA  @ linux1.skills.lan. (
                                         0       ; serial
                                         1D      ; refresh
                                         1H      ; retry
                                         1W      ; expire
                                         3H )    ; minimum
         NS      @
 101     PTR     linux1.skills.lan.
 102     PTR     linux2.skills.lan
 103     PTR     linux3.skills.lan.
 104     PTR     linux4.skills.lan
 105     PTR     linux5.skills.lan.
 106     PTR     linux6.skills.lan
 107     PTR     linux7.skills.lan.
 108     PTR     linux8.skills.lan
 109     PTR     linux9.skills.lan.
 ​
 systemctl restart named
 reboot
 ​
 # 验证
 [root@linux1 named]# nslookup 
 > 192.168.100.101
 101.100.168.192.in-addr.arpa    name = linux1.skills.lan.
 > linux1.skills.lan
 Server:     192.168.100.101
 Address:    192.168.100.101#53
 ​
 Name:   linux1.skills.lan
 Address: 192.168.100.101
 > 192.168.100.102
 102.100.168.192.in-addr.arpa    name = linux2.skills.lan.
 > linux2.skills.lan
 Server:     192.168.100.101
 Address:    192.168.100.101#53
 ​
 Name:   linux2.skills.lan
 Address: 192.168.100.102
 ​
 ​
 # linux2部分
 yum install bind bind-utils-y
 ​
 # 网卡配置的DNS要为本地ip地址
 [ipv4]
 method=manual
 address1=192.168.100.102/24,192.168.100.2
 dns=192.168.100.101;192.168.100.102
 ​
 vi /etc/named.conf
 options {
     listen-on port 53 { any; }; 
     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";
     secroots-file   "/var/named/data/named.secroots";
     recursing-file  "/var/named/data/named.recursing";
     allow-query     { any; };                
 ​
 vi /etc/named.rfc1912.zones
 # 在末尾添加
 zone "skills.lan" IN {
         type slave;
         file "slaves/bzxqy";
         masterfile-format text;               
         masters { 10.10.220.101; };
 };
 ​
 zone "220.10.10.in-addr.arpa" IN {
         type slave;
         file "slaves/bfxqy";
         masterfile-format text;
         masters { 10.10.220.101; };
 };
 ​
 ​
 systemctl restart named

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狂踹瘸子那条好腿!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值