首页 电脑 电脑学堂 查看内容

利用端口转发由内部网对外提供网络服务

2005-5-7 12:11 560 0

摘要: 文章作者:吴阿亭 [中国Linux论坛应用版版主]1. 图例如下:           &...
关键词: nbsp 端口 192.168 内部 地址 防火墙 194.160 外部 内核 163.158

文章作者:吴阿亭 [中国Linux论坛应用版版主]1. 图例如下:                          INTERNET                              | (194.160.1.1)                         linux box (firewall)                              | (192.168.11.5)                +------------------------------+ internal ethernet                | (192.168.11.2)               | (192.168.11.3)           linux box 1(WWW)                linux box 2 (POP3)2.什么是转口转发(port forwarding)?当外部一拨号用户拨到当地ISP后,在浏览器中指定地址如www.yourcompanydomain.com(194.160.1.1)时或者在outlook express中指定POP3服务器为pop.yourcompandomain.com(194.160.1.1)时,你的防火墙(图中的linux box)然后转发这个包到内部服务器WWW或POP3,当内部服务器生成回复包朝外发出经过防火墙时,包被重写。具体过程如下:在防火墙上,我们设置端口转发规则,指定所有到防火墙外部地址194.160.1.1的TCP连接,且目的端口为80的所有连接,重定向到内部机器192.168.11.2的端口80。假定任意一外部连接进来的主机IP为 163.158.1.2。则源和目的地址及端口号分别为Source: 163.158.1.2/7890 Dest: 194.160.1.1/80被转发到内部主机,重写目的地址部分Source: 163.158.1.2/7890 Dest: 192.168.11.2/80由内部主机回复后的包为:Source: 192.168.11.2/80     Dest: 163.158.1.2/7890再经过防火墙时源地址被重写Source 194.160.1.1/80     Dest: 163.158.1.2/78903.如何在Linux 2.2.x中使用端口转发?a.如果你用最近的redhat 内核,已经有一个端口转发模块提供了。为了用它,运行 #modprobe ip_masq_portfw如果你用最新的不是redhat提供的内核RPM包,则需要在编译内核时启动下面的项目:CONFIG_EXPERIMENTALCONFIG_IP_MASQUERADECONFIG_IP_MASQUERADE_IPPORTFWb.然后下载ipmasqadm RPM包。ftp://ftp.redhat.com/pub/contrib/libc6/i386/ipmasqadm-0.4.2-3.i386.rpmc.启动下面的IP转发和中转链设置:#ipchains -P forward DENY#echo 1 > /proc/sys/net/ipv4/ip_forwardd. 如果是专线上网,则用下面的命令设置IP伪装规则#ipchains -A forward -j MASQ -s 192.168.11.2/32#ipchains -A forward -j MASQ -s 192.168.11.3/32  如果是拨号上网,则用#ipchains -A forward -i ppp0 -j MASQe.最后启动端口转发规则#ipmasqadm portfw -a -P tcp -L 194.160.1.1 80 -R 192.168.11.2 80#ipmasqadm portfw -a -P tcp -L 192.160.1.1 110 -R 192.168.11.3 1104.应注意的问题:a. 对于pop3,telnet等协议设置端口转发时,注意检查/etc/hosts.allow and /etc/hosts.deny文件允许外部世界的任意地址都可连接进来b. 内部机器的网关必须设成防火墙机器的内部那块网卡的地址5.端口转发的优势a.在IP层内核一级处理包重写,更加稳定可靠,速度更快b.你可以在防火墙外部地址上使用IP别名处理更多的端口转发请求,若内部机器有不止一台WWW服务器可以这样做,对不同的别名IP转发到不同的内部主机c.减少防火墙上在用户空间运行的应用程序
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部