DMZ主机实现
- [拓扑]
- 1.三宿主机
- eth0 : 212.75.218.2
- eth1 : 192.168.1.253/24
- eth1 : 192.168.1.254/24
- 2.外网主机
- eth0 : 212.74.218.1
- 3.内网客户端 (可以有很多,测试用一台)
- eth0 : 192.168.1.51/24
- 4.内网服务器 (可以有很多,测试用一台)
- eth0 : 192.168.1.1/24
- [配置]
- [三宿主机]
- 1.linux server 当作防火墙来用,停掉所有的服务,将iptables默认策略设置为DROP
- iptable -P INPUT DROP
- iptable -P OUTPUT DROP
- iptable -P FORWARD DROP
- 2.打开linux转发
- echo 1 > /proc/sys/net/ipv4/ip_forward
- 3.添加路由表(默认有可以不用添加)
- route add -host 192.168.1.51 dev eth2
- route add -host 192.168.1.1 dev eth1
- 4.添加目标地址转换(设置外网访问内网服务器)
- iptable -t nat -A PREROUTING -d 212.75.218.2 -t tcp --dport 80 -j DNET --to-destination 192.168.1.1:80 // 目标地址转化
- iptable -A FORWARD -d 192.168.1.1 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT // 数据包流入192.168.1.1设置为accept
- iptable -A FORWARD -s 192.168.1.1 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT // 数据包从192.168.1.1流出设置为accept
- //此时外网可以访问212.75.218.2会访问内网192.168.1.1的服务器 只限与tcp类型
- 5.设置内网客户端访问外网
- iptable -t nat -A POSTROUTING -s 192.168.1.51 -p tcp -m state --state NEW,ESTABLISHED -j SNET --to-source 212.75.218.2 // 伪装成外网地址访问
- iptable -A FORWARD -s 192.168.1.51 -p tcp -m state --state NEW,ESTABLISHED -j ACCEPT // 添加内网用户端留出数据包设置为接受
- iptable -A FORWARD -d 192.168.1.51 -p tcp -m state --state ESTABLISHED -j ACCEPT // 内网客户端请求数据包流会设置为accept
- // 此时内网客户段可以访问外网数据了 只限与tcp类型
- [内网客户端]
- 1.设置ip地址
- ifconfig eth0 192.168.1.51/24 up
- 2.添加网关
- route add default gw 192.168.1.254
- [内网服务器]
- 1.设置ip地址
- ifconfig eth0 192.168.1.1/24 up
- 1.添加网关
- route add default gw 192.168.1.253
版权声明:本文为luowen原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。