会飞的猪的小小猪圈

要做一只有思想、有能力、与众不同的猪

CentOS5.1网关路由设置

    最近一段时间为一个项目做项目实施,其中涉及到了使用CentOS5.1操作系统假设一台网关服务器的问题,要通过其实现外网计算机访问不到内网的主机,内网中仅指定的主机才可以访问外网的功能,经过一番测试之后终于能够实现了,现在将实现的过程记录下来,以备今后的不时之需。
    一、所需软件:安装了自带的iptables防火墙的CentOS5.1操作系统
    二、前提准备:
        1.进行网关的相关配置,为了方便起见,使用root用户登录到系统中;
        2.首先对网关服务器的两块网卡进行网络设置,其中内网网卡设置的时候网关的地址空白,设置好之后检查一下网关服务器是否能够上外网,以及与内网是否已经联通。均联通之后将内网网卡和外网网卡的设备号分别记录下来。(在本例中,内网网卡设备号为eth1、外网网卡设备号为eth0)
        3.要实现内网主机可以通过网关服务器上外网的功能,需要将网关操作系统中的数据包转发功能开启,可以通过sysctl -A命令查看当前内核参数设置,找到其中net.ipv4.ip_forward项查看其对应的参数值(0表示未开启,1表示开启)
        4.如果在上一项中发现的参数值为0,则需要将内核的数据包转发功能开启,具体实现方式为:
            输入vi /etc/sysctl.conf命令打开配置文件,找到其中net.ipv4.ip_forward所在的行,将"="后面的数值由0更改为1,之后将文件保存后退出vi编辑器。
        5.将配置文件修改完成后,可以使用sysctl -p /etc/sysctl.conf命令或将操作系统重新启动,以使参数生效。此时准备工作已经完成,接下来对防火墙的规则进行配置即可。
    三、ipables规则设置:
        1.此例中使用CentOS自带的功能强大的iptables防火墙来实现上述的要求,此时需要对iptables的规则进行设置,运行vi /etc/sysconfig/iptables命令,打开规则配置文件,按照下面给出的配置文件模板进行设置:
           
 1             # Firewall configuration written by system-config-securitylevel
 2             # Manual customization of this file is not recommended.
 3             *filter
 4             :FORWARD ACCEPT [0:0]
 5             :INPUT ACCEPT [0:0]
 6             :RH-Firewall-1-INPUT - [0:0]
 7             :OUTPUT ACCEPT [0:0]
 8             -A INPUT -i eth1 -j ACCEPT            //此处的eth1按实际更改为内网设备号
 9             -A INPUT -j RH-Firewall-1-INPUT
10             -A FORWARD -j RH-Firewall-1-INPUT
11             -A RH-Firewall-1-INPUT -i lo -j ACCEPT
12             -A RH-Firewall-1-INPUT -i eth1 -j ACCEPT    //此处的eth1按实际更改为内网设备号
13             -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
14             -A RH-Firewall-1-INPUT -p 50 -j ACCEPT
15             -A RH-Firewall-1-INPUT -p 51 -j ACCEPT
16             -A RH-Firewall-1-INPUT -p udp -d 224.0.0.251 --dport 5353 -j ACCEPT
17             -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
18             -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
19             -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
20             -A RH-Firewall-1-INPUT -p tcp -m state -m tcp --dport 22 --state NEW -j ACCEPT
21             -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
22             COMMIT
23             *nat
24             :PREROUTING ACCEPT [0:0]
25             :POSTROUTING ACCEPT [0:0]
26             :OUTPUT ACCEPT [0:0]
27             -A POSTROUTING -s 192.168.1.1 -o eth0 -j MASQUERADE    //此处为转发规则设置,增加访问外网复制此行即可
28             //上述中ip地址要按实际设置为允许访问外网机器的ip地址,eth0也要按实际更改为外网设备号
29             COMMIT
30             # Completed
        2.编辑好规则配置文件后,保存并退出vi编辑器。
        3.只有运行service iptables status查看系统当前iptables服务的状态。如果为stop,则使用service iptables start命令将其开启即可;如果为Start,则使用service iptables restart命令将其重新启动以使新的规则设置生效。
        4.此时即可实现网关服务器的设置,可以到那台允许访问外网的主机上访问一下外网以检测设置是否正确。

posted on 2008-12-05 15:44 会飞的猪 阅读(2905) 评论(0)  编辑  收藏 所属分类: Linux操作系统


只有注册用户登录后才能发表评论。


网站导航:
 
<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

导航

统计

公告

准备换工作中。

留言簿

文章分类

文章档案

搜索

最新评论