魏蓝

以梦为马

导航

第9周作业

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

omain name server,用于把域名与IP地址的互相映射。

当client访问一个域名时,首先会查询本机的hosts文件,若hosts文件没有缓存该域名的ip地址,则会想local DNS服务器发起查询。

local DNS服务器查询缓存上是否有该域名对应的ip地址,若有则返回给client,若没有则会向根服务器发起查询,然后将结构返回给client,这是递归模式。

一般情况下本地DNS向其他DNS服务器查询属于迭代查询,若对方无法返回权威结构,则他会向下一个(上级)DNS服务器发起查询,直到查询出结果。
搭建主-副服务器。

###服务安装和基础配置省略
#在/etc/named.conf中注释掉listen ip、allow-query限制。

##主节点
#在/etc/named.conf中添加:安全
  allow-transfer {10.0.0.124};

##从节点配置:
#/etc/named.rfc1912.zones中添加
zone "magedu.org" IN {
	type slave;
	masters {10.0.0.121;};
	file "slaves/magedu.org.slave";
};
#在/etc/named.conf中添加:
  allow-transfer {none};

##重启服务
rndc reload
systemctl restart named

##检查RR是否同步成功
[root@localhost /var/named/slaves]#ll
total 4
-rw-r--r-- 1 named named 333 May 12 15:04 magedu.org.slave

##client的网卡配置中添加DNS1 DNS2

主DNS服务器修改RR后必须修改“ serial”,slave服务器才会同步,才认为有更新。
注意:master和slave,有的地方用单数,有的地方用复数。slave服务器named.rfc上配置为masters,RR文件夹/vat/named/slaves都为复数。

2、搭建并实现智能DNS

named.conf配置修改

添加acl,划定网段、
注释掉 zone “.”域,
添加view,view内指定named配置文件


复制新建各个view指定的named.rfc配置文件

修改named.rfc***文件,添加zone “.”和view的RR文件

修改RR文件,不同的地区对应不同的websrv地址

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

iptables -P INPUT -j DROP
iptables -t filter -A INPUT -p tcp -m multiport --dport 20:23,80 -j ACCEPT

4、NAT原理总结

NAT,network address translation,通过修改chain中的请求报文的源地址或目标地址,实现修改源地址或目标地址。

SNAT,当数据包流出NAT网关时,在POSTROUTING中将数据包中的源IP地址转换为指定的(公网)IP。
DNAT,当数据包流入NAT网关时,在PREROUTING中,将数据包的目的IP修改为指定的IP地址。

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

SNAT:基于nat表的target,适用于固定的公网IP

SNAT选项:
--to-source [ipaddr[-ipaddr]][:port[-port]]
--random

格式:iptables -t nat -A POSTROUTING -s LocalNET ! -d LocalNet -j SNAT --to-source
ExtIP

注意: 需要开启 ip_forward

#vim /etc/sysctl.conf
net.ipv4.ip_forward=1
#sysctl -p

范例:iptables -t nat -A POSTROUTING -s 10.0.0.0/24 ! –d 10.0.0.0/24 -j SNAT --tosource 172.18.1.6-172.18.1.9

MASQUERADE:基于nat表的target,适用于动态的公网IP,如:拨号网络

MASQUERADE选项:
--to-ports port[-port]
--random

格式:iptables -t nat -A POSTROUTING -s LocalNET ! -d LocalNet -j MASQUERADE

范例:iptables -t nat -A POSTROUTING -s 10.0.0.0/24 ! -d 10.0.0.0/24 -j MASQUERADE

实现DNAT:

DNAT:nat表的target,适用于端口映射,即可重定向到本机,也可以支持重定向至不同主机的不同端口,但不支持多目标,即不支持负载均衡功能

DNAT选项:
--to-destination [ipaddr[-ipaddr]][:port[-port]]

DNAT 格式:iptables -t nat -A PREROUTING -d ExtIP -p tcp|udp --dport PORT -j DNAT --to-destination InterSeverIP[:PORT]

注意: 需要开启 ip_forward

#vim /etc/sysctl.conf
net.ipv4.ip_forward=1
#sysctl -p

范例:iptables -t nat -A PREROUTING -d 192.168.0.8 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.7

持久保存规则:

CentOS7,8

iptables-save > /PATH/TO/SOME_RULES_FILE

加载规则:

CentOS 7,8 重新载入预存规则文件中规则:

iptables-restore < /PATH/FROM/SOME_RULES_FILE

开机自动重载规则:

用脚本保存各个iptables命令;让此脚本开机后自动运行
/etc/rc.d/rc.local文件中添加脚本路径 /PATH/TO/SOME_SCRIPT_FILE

用规则文件保存各个规则,开机时自动载入此规则文件中的规则
在/etc/rc.d/rc.local文件添加
iptables-restore < /PATH/FROM/IPTABLES_RULES_FILE

#iptables-save > /data/iptables.rule
#vim /etc/rc.d/rc.local
iptables-restore < /data/iptables.rule #添加此内容
#chmod +x /etc/rc.d/rc.local

posted on 2022-08-09 13:13  魏蓝  阅读(18)  评论(0编辑  收藏  举报