linux学习分享(第九周)

1、简述DNS服务器原理,并搭建主-辅服务器。

DNS域名解析过程:
1)客户端输入域名,查询本地缓存
2)本地DNS服务器查询,本地DNS服务器如果有内部缓存,则直接返回结果的IP给客户端,否则则进入第三步。
3)本地DNS向根域名服务器查询,根域服务器返回一级域地址
4)本地DNS向根域返回的一级域服务器查询,一级域的本地缓存,一级域名服务器返回二级域地址
5)以此类推,直到查询到终结果,返回给本地DNS服务器
6)本地DNS服务器,将解析的结果返回客户端
7)客户端根据返回结果的Ip浏览互联网
搭建主-备DNS服务器
前提条件:
	www服务器  192.168.19.132  操作系统:centos7.9   关闭SELINUX/时间同步/关闭防火墙
	DNS主服务器  192.168.19.130  操作系统:centos7.9 关闭SELINUX/时间服务器/关闭防火墙
	DNS备服务器  192.168.19.131  操作系统:centos7.9 关闭SELINUX/时间同步/关闭防火墙
	客户端服务器  192.168.19.127  操作系统:centos7.9 关闭SELINUX/时间同步/关闭防火墙
   
主DNS服务器配置:
1)安装named服务
yum install -y bind
2)修改配置文件/etc/named.conf

image

3)编辑主DNS的/etc/named.rfc1912.zones文件,新增如下配置
image

4)创建jiaxiao.com.zone

cp -p named.localhost /var/named/jiaxiao.zone

named]# cat jiaxiao.com.zone
$TTL 1D
@       IN SOA  master admin.jiaxiao.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
        NS      slave
master  A       192.168.19.131
slave   A       192.168.19.130
www     A       192.168.19.132

启动named服务
systemctl start named

从DNS服务部署
yum install -y bind

#编辑/etc/named.conf
listen-on port 53 { localhost; };
allow-query     { any; };
allow-transfer { none;};

#编辑/etc/named.rfc1912.zones
zone "jiaxiao.com" IN {
        type slave;
        masters { 192.168.19.131;};
        file "slaves/jiaxiao.com.slave";
};

#启动named服务
systemctl start named

#在测试机添加DNS配置,编辑对应的网卡配置文件
DNS1=192.168.19.131
DNS2=192.168.19.130

#在客户端通过如下命令验证
curl www.jiaxiao.com
dig www.jiaxiao.com

image

停止主DNS服务

image

2、搭建并实现智能DNS。

前提条件:
DNS服务器 配置两个地址段  192.168.19.131/24  10.0.0.131/24  添加子接口
WWW服务器 配置两个地址段  192.168.19.132/24  10.0.0.132/24  添加子接口
客户端   配置两个地址段  192.168.19.127/24  10.0.0.127/24  添加子接口

1)DNS服务器上部署BIND服务
编辑/etc/named.conf文件
#新增acl配置
acl beijingnet{
  192.168.19.0/24;
};
acl shanghainet{
  10.0.0.0/24;
};

#新增view配置
view beijingview{
  match-clients { beijingnet;};
  include "/etc/named.rfc1912.zones.bj";
};
view shanghaiview{
  match-clients { shanghainet;};
  include "/etc/named.rfc1912.zones.sh";
};

#修改配置
listen-on port 53 { localhost; };
allow-query     { any; };

注释行include "/etc/named.rfc1912.zones";
保存并退出

2)创建区域配置文件
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bj
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.sh

vim /etc/named.rfc1912.zones.bj

zone "." IN {
        type hint;
        file "named.ca";
};
zone "jiaxiao.com" IN {
        type master;
        file "jiaxiao.com.zone.bj";
};


vim /etc/named.rfc1912.zones.sh

zone "." IN {
        type hint;
        file "named.ca";
};
zone "jiaxiao.com" IN {
        type master;
        file "jiaxiao.com.zone.sh";
};

3)创建区域数据库文件
vim /var/named/jiaxiao.com.zone.bj
$TTL 1D
@       IN SOA  master admin.jiaxiao.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
        NS      slave
master  A       192.168.19.131
slave   A       192.168.19.130
www     A       192.168.19.132

vim /var/named/jiaxiao.com.zone.sh
$TTL 1D
@       IN SOA  master admin.jiaxiao.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
        NS      slave
master  A       192.168.19.131
slave   A       192.168.19.130
www     A       10.0.0.132

#修改文件属主
chgrp named /var/named/jiaxiao.com.zone.bj
chgrp named /var/named/jiaxiao.com.zone.sh

4)客户端安装http服务
5)业务验证

image
image

3、iptable实现: 放行ssh,telnet, ftp, web服务80端口,其他端口服务全部拒绝

1) 确认服务器对应端口22/80/21/23已开启

image

2)在服务端添加iptables规则
iptables -A INPUT -d 192.168.19.127 -p tcp -m multiport ! --dport 21:23,80 -j REJECT

3、NAT原理总结

NAT的基本工作原理是,当私有网主机和公共网主机通信的IP包经过NAT网关时,将IP包中的源IP或目的IP在私有IP和NAT的公共IP之间进行转换
要做SNAT的信息包被添加到POSTROUTING链中。要做DNAT的信息包被添加到PREROUTING链中。直接从本地出站的信息包的规则被添加到OUTPUT 链中。
DNAT:若包是被送往PREROUTING链的,并且匹配了规则,则执行DNAT或REDIRECT目标。为了使数据包得到正确路由,必须在路由之前进行DNAT。
路由:内核检查信息包的头信息,尤其是信息包的目的地。
处理本地进程产生的包:对nat表OUTPUT链中的规则实施规则检查,对匹配的包执行目标动作。
SNAT:若包是被送往POSTROUTING链的,并且匹配了规则,则执行SNAT或MASQUERADE目标。系统在决定了数据包的路由之后才执行该链中的规则

4、iptables实现SNAT和DNAT,并对规则持久保存。

1)启用ip_forward功能
vim /etc/sysctl.conf
net.ipv4.ip_forward=1
2)分别添加防火墙规则测试
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -d !10.0.0.0/24 -j SNAT --to-source 172.18.1.6-172.18.1.9
iptables -t nat -A PREROUTING -d 192.168.0.8 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.7:8080
3)保存规则
iptables-save > /root/iptables_config/config.txt
4)添加自动自动
vim /etc/rc.d/rc.local
添加如下行
/usr/sbin/iptables-restore < /root/iptables_config/config.txt
posted @ 2021-09-06 17:40  henry_jia  阅读(99)  评论(0)    收藏  举报