Linux端口转向及iptables简介
BY 郭世龙
需 求:
实验室建立了一个内部的管理信息系统(B/S方式),要求实验室每个成员都能够通过网络登录信息系统,但使用该系统的实验室成员不再同一网络之中。
信息系统是工作在WinXP上的IIS Web Server;
实验室使用Suse Linux作为服务器链接Internet;
Linux使用双网卡一个用作网关,另一个用作连接外网;
Getway IP:192.68.0.1
Internet Static IP :202.11*.1*.72
Lan WinXP Static IP:192.168.0.228
PORT:8100
解决方法
将外网(或Internet)访问Linux服务器8100端口的数据转发给局域网内部Web Server服务器,即端口转向。外部IP——>202.11*.1*.72 : 8100(192.68.0.1 : 8100)——>192.168.0.228 : 8100 且外部IP<——202.11*.1*.72 : 8100(192.68.0.1 : 8100)<——192.168.0.228 : 8100。为了实现这个端口转向就必须实现网址转换(NAT)、通过主机防火墙(Firewall)而这些功能全是Linux内核的Netfilter子系统所提供的,而iptables是控管Netfilter的唯一工具。下面介绍一下使用iptables命令实现端口转向的功能的步骤(在终端上输入如下命令):
(1)iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
(2)iptables -t nat -A PREROUTING -d 202.11*.1*.72 -p tcp --dport 8100 -j DNAT --to 192.168.0.228:8100
(3)iptables -A FORWARD -d 192.168.0.228 -p tcp --dport 8100 -j ACCEPT
<