您的位置:首页 > 运维架构 > Linux

linux外网服务器跳转内网服务器实现内网访问(iptables)

2015-04-20 18:28 561 查看
服务器信息如下

外网服务器:eth0:公网IP

eth1:内网IP(192.168.10.205)

公网对外提供服务,内网IP与内部局域网通信。

配置过程

(1)开启iptables

service iptables restart (临时开启)

chkconfig iptables on (永久开启)

(2)配置iptables

(2-1)配置filter选项,使得IP和PORT可以通过防火墙

注意:在filter选项下配置

例如:#18081(tomcat-OA)

-A INPUT -p tcp --dport 18081 -j ACCEPT

-A OUTPUT -p tcp --sport 18081 -j ACCEPT

(2-2)配置nat转发规则选项

注意:在nat选项下配置

例如:配置通过访问http://公网IP:18081/tomcat-oa访问内网地址http://192.168.11.102:8080/tomcat-oa,其中192.168.11.102为内网服务器ip.

#映射到192.168.11.102:8080OA系统

-A PREROUTING -d 公网ip -p tcp --dport 18081 -j DNAT --to-destination 192.168.11.102:8080

-A POSTROUTING -d 192.168.11.102 -p tcp --dport 8080 -j SNAT --to-source 192.168.10.205

(3)重启iptables

service iptables restart

(4)解决转接慢问题

如果在访问过程中很慢,可通过添加下面配置提高访问速度:

在filter中:

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

在nat中:

-A PREROUTING -m state --state ESTABLISHED,RELATED -j ACCEPT

-A POSTROUTING -m state --state ESTABLISHED,RELATED -j ACCEP

机器配置文件参考:

# Generated by iptables-save v1.4.7 on Mon Mar 16 16:47:11 2015

*nat

:PREROUTING ACCEPT [10362:870907]

:POSTROUTING ACCEPT [565:39849]

:OUTPUT ACCEPT [565:39849]

-A PREROUTING -m state --state ESTABLISHED,RELATED -j ACCEPT

-A POSTROUTING -m state --state ESTABLISHED,RELATED -j ACCEPT

#映射到192.168.11.102:8080OA系统

-A PREROUTING -d 公网ip -p tcp --dport 18081 -j DNAT --to-destination 192.168.11.102:8080

-A POSTROUTING -d 192.168.11.102 -p tcp --dport 8080 -j SNAT --to-source 192.168.10.205

########################################################################

###########################google代理映射#########################

########################################################################
#映射到192.168.11.173:3128 squid系统

-A PREROUTING -d 公网ip -p tcp --dport 18088 -j DNAT --to-destination 192.168.11.173:3128

-A POSTROUTING -d 192.168.11.173 -p tcp --dport 3128 -j SNAT --to-source 192.168.10.205

#映射到192.168.11.221:3128 squid服务

-A PREROUTING -d 公网ip -p tcp --dport 18089 -j DNAT --to-destination 192.168.11.221:3128

-A POSTROUTING -d 192.168.11.221 -p tcp --dport 3128 -j SNAT --to-source 192.168.10.205

########################################################################

######################google代理映射--end#########################

########################################################################

COMMIT

*mangle

:PREROUTING ACCEPT [314675:32786858]

:INPUT ACCEPT [273424:29440191]

:FORWARD ACCEPT [60:2784]

:OUTPUT ACCEPT [195215:274041247]

:POSTROUTING ACCEPT [195404:274048359]

-A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fill

COMMIT

*filter

:INPUT DROP [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

#解决网络连接慢的问题

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#回环访问

-A INPUT -i lo -p all -j ACCEPT

-A OUTPUT -o lo -p all -j ACCEPT

#ping规则

-A INPUT -p icmp -j ACCEPT

-A OUTPUT -p icmp -j ACCEPT

#ssh

-A INPUT -p tcp --dport 22 -j ACCEPT

-A OUTPUT -p tcp --sport 22 -j ACCEPT

#80

-A INPUT -p tcp --dport 80 -j ACCEPT

-A OUTPUT -p tcp --sport 22 -j ACCEPT

#8080

-A INPUT -p tcp --dport 8080 -j ACCEPT

-A OUTPUT -p tcp --sport 8080 -j ACCEPT

#8081

-A INPUT -p tcp --dport 8081 -j ACCEPT

-A OUTPUT -p tcp --sport 8081 -j ACCEPT

#3306

-A INPUT -p tcp --dport 3306 -j ACCEPT

-A OUTPUT -p tcp --sport 3306 -j ACCEPT

#18080(tomcat-yy)

-A INPUT -p tcp --dport 18080 -j ACCEPT

-A OUTPUT -p tcp --sport 18080 -j ACCEPT

#3690(svn)

-A INPUT -p tcp --dport 3690 -j ACCEPT

-A OUTPUT -p tcp --sport 3690 -j ACCEPT

#18081(tomcat-OA)

-A INPUT -p tcp --dport 18081 -j ACCEPT

-A OUTPUT -p tcp --sport 18081 -j ACCEPT

#18082(tomcat-数据发布平台)

-A INPUT -p tcp --dport 18082 -j ACCEPT

-A OUTPUT -p tcp --sport 18082 -j ACCEPT

#3128(squid)

-A INPUT -p tcp --dport 3128 -j ACCEPT

-A OUTPUT -p tcp --sport 3128 -j ACCEPT

#28081(tomcat-proxy)

-A INPUT -p tcp --dport 28080 -j ACCEPT

-A OUTPUT -p tcp --sport 28080 -j ACCEPT

#18088(squid_proxy)

-A INPUT -p tcp --dport 18088 -j ACCEPT

-A OUTPUT -p tcp --sport 18088 -j ACCEPT

#18089(squid_proxy)

-A INPUT -p tcp --dport 18089 -j ACCEPT

-A OUTPUT -p tcp --sport 18089 -j ACCEPT

COMMIT

# Completed on Mon Mar 16 16:47:11 2015
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: