网关(搭建网桥)

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、网络结构

在现有网络中增加防火墙,主要作用为控制内部上网等等。要求可以灵活控制,包括时间段不同控制,流量限制等。

现有网络拓扑图:

由于安装防火墙时要求不需要修改内网服务器和PC机配置,所以采用透明防火墙(网桥模式)。

修改后拓扑图:

防火墙需要三块网卡,其中两块网卡做网桥,一块网卡配置ip做为管理用网卡。内部网络要访问不同网段,数据包需要路由转换,这时就要通过防火墙才能到达路由。防火墙采用linux系统,使用iptables和ebtables进行过滤数据包。经过测试交换机划分vlan在路由器终结数据包,这样的数据包可以在iptables

和ebtables中进行分析处理。网桥在网络的第二层,iptables和ebtables在linux 2.6内核中可以分析到第二层的数据包。

二、防火墙工具分析

1)iptables说明

Iptables对数据包的处理流程:数据包进入系统,经过IP校验后经过PREROUTING 链中的Mangle和Nat的处理;再经过路由查找,决定该数据包需要转发还是发给本机;如果该数据包是发给本机的,则经过INPUT链的Mangle和Filter处理后再传递给上层协议;如果需要转发,则发给FORWARD链的Mangle和Filter

进行处理;本机网络层以上各层产生的数据包通过OUTPUT链的Mangle、Nat、Filter处理后,再进行路由选择;所有需要发送到网络中的数据包,都必须经过POSTROUTING链的Mangle和Nat进行处理。

2)ebtalbles说明

Ebtables对数据帧的处理过程:数据帧进入数据链路层,首先经过BROURING链的Broute处理,决定是直接路由该数据帧还是让它进入到PREROUTING链,如果数据帧的目的地址和源地址在同一个网段,网桥会屏蔽它;如果数据帧是多播帧或广播帧,则要在同一网段中除了接收端口以外的其他端口发送这个数据帧。接下来,数据帧到达PREROUTING链后可以改变目的MAC地址(DNAT);当数据帧通过PREROUTING链后,Ebtables将会根据该数据帧的目的MAC地址决定是否转发该帧,如果这个帧的目的MAC是本机的,就会进入到INPUT链,在这个链中,可以过滤进入本机的数据帧,通过INPUT链后,就到达网络层,数据帧变成数据包;如果数据帧的目的MAC不是本机的,它进入FORWARD链,FORWARD链将过滤

数据帧;然后这个数据帧就会到达POSTROUTING链,在这里可以改变数据帧的源MAC地址(SNAT)。由本机产生的帧,首先判断是否需要Bridging,如果不需要则进行直接路由;如果需要就会进入到OUTPUT链中,以对数据帧改变目的MAC 地址(DNAT)和过滤,接下来这个帧到达POSTROUTING链,这个链可以改变数据帧的源MAC地址(SNAT);最后,这个帧就到达了NIC。

3)桥接方式的处理流程

当数据帧进入Linux网桥后,先通过Ebtables的BROUTING链和PREROUTING链;接下来,经过Iptables的PREROUTING链,这时还是在数据链路层,而不是在Iptables通常起作用的网络层,这就是br_nf帮助数据帧在数据链路层可以经过Iptables链的作用;然后,经过Ebtables的FORWARD链和Iptables的FORWARD 链;最后,先后经过Ebtables和Iptables的POSTROUTING链。

4)总结

从前面的叙述,可以看到无论桥接还是路由方式,数据帧都会经过Iptables的FORWARD链,这样就可以利用Iptables/Ebtables设计一个网桥防火墙。

Linux2.6中的Ebtables/ Iptables是一个非常强大的防火墙系统,可以同时在数据链路层和网络层对数据帧或数据包进行过滤、地址转换、数据包传输特性的改变。利用Ebtables/ Iptables可以构建一个网桥路由器,尤其重要的是它还可以连接不同协议的网络,实现过滤等功能。因此,利用Ebtables/Iptables 可以构建一种简单宜用、功能强大、经济高效的网桥防火墙。

由于iptables功能比ebtables更强大,应用也较为广泛,所以一般都使用iptables来做防火墙。

三、系统安装

centos linux 5.0是使用linux 2.6内核的操作系统。

1)系统安装

1.输入linux text选择text安装模式。

2.安装时语言环境选English。

3.键盘类型选us。

4.鼠标选择No-mouse。

5.安装类型选Custom。

6.分区设置:

/boot ext3 100M 启动分区

/ ext3 10G 系统分区

Swap swap 1G 虚拟内存

/var ext3 剩余空间日志分区

7.使用GRUB Boot loader。

8.不增加参数在Boot Loader Configuration。

9.不为Boot Loader设置密码。

10.设置Boot Loader启动Linux。

11.将Boot Loader安装在硬盘的MBR。

12.网络设置,默认安装后进行配置。

13.主机名称视情况而定,预定为UC-WEB-数字。

14.防火墙的安全级别设为No firewall。

15.语言支持选English (USA) 和Chinese (P.R. of China)。

16.默认语言为English (USA)。

17.时区选Asia/Shanghai。

18.Root Password为:redhat

19.Authentication Configuration启用Use Shadow Passwords和Enable MD5 Passwords。

20.Package Group选择:

@ Editors

21.不必创建Boot Diskette。

22.配置显示选项,指定启动时进入文本模式。

OS安装完毕。

2)系统配置

1.禁用多于服务

rm /etc/rc.d/rc3.d/* -rf

chkconfigcrond on

chkconfig network on

chkconfigrsync on

chkconfigsshd on

chkconfig syslog on

chkconfigxinetd on

chkconfigiptables on

2.定时同步时间

crontab -e

加入

10 03 * * * /usr/sbin/ntpdate -u

3.关闭ipv6

echo "alias net-pf-10 off" >> /etc/modprobe.conf.dist

4.修改默认启动内核

vi /boot/grub/gurb.conf

修改默认启动内核为2.6内核,不要使用加有xen(虚拟技术)的内核。四、防火墙的实现

1)配置网卡

1.网桥配置bridge-utils-1.4.tar.gz

brctladdbr0

建立网桥

touch /etc/sysconfig/network-scripts/ifcfg-br0

建立网桥配置文件ifcfg-br0

vi /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0

TYPE=Bridge

BOOTPROTO=static

IPADDR=0.0.0.0

ONBOOT=yes

相关文档
最新文档