iptables把内网web服务映射到外网
背景和原理
左边为机器A,右边为机器B。B有两块网卡,一块和A在一个局域网,一块可以连外网。A外网不通。
下面希望外网的用户可以访问A机器提供的web服务。
iptables配置
机器B
开启内核路由转发功能
[root@xuegod63 ~]# vim /etc/sysctl.conf
#改:#net.ipv4.ip_forward = 0
#为: net.ipv4.ip_forward = 1
#改完使配置生效:
[root@xuegod63 ~]# sysctl -p
iptables转发配置
[root@xuegod63 ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.240.2:80
或:
[root@localhost ~]# iptables -t nat -A PREROUTING -d 192.168.1.250 -p tcp --dport 80 -j DNAT --to 192.168.240.2:80
机器A
安装apache服务
[root@localhost ~]# yum install httpd -y
[root@localhost ~]# /etc/init.d/httpd start