Chinaunix首页 | 论坛 | 博客
  • 博客访问: 509322
  • 博文数量: 110
  • 博客积分: 3971
  • 博客等级: 中校
  • 技术积分: 1175
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-20 23:27
文章分类

全部博文(110)

文章存档

2015年(2)

2014年(1)

2013年(1)

2011年(9)

2010年(28)

2009年(12)

2008年(13)

2007年(23)

2006年(21)

我的朋友

分类: WINDOWS

2008-05-28 21:32:38

利用网桥打造Linux系统透明防火墙
 
随着网络的普及,网络的多样化,怎样打造个性化的网络,成了我们关心的问题。

有时候,我们不想改动原本的网络环境,来经常网络安全管理,这时候我们就可以用到透明防火墙了,这时候我们就用到网桥的模块,当然它属于第二层的那一层了。


实验环境:


server -----------firewall--------------client


server ip address: 192.168.1.100

client ip address: 192.168.1.200

firewall ip address :192.168.1.1


需求:

只允许server可以通过网上邻居讲文件传输到client(这个过程是单向的),server与client可以相互通过icmp echo request 来确认彼此的间联通(这个过程是双向的 )


步骤:


1.绑定两张网卡合成一个网桥接口(bridge interface)

firewall至少要有两张网卡,然后将它们绑定起来,firewall可以成网桥了,首先需要安装bridge-utils与bridge-utils-devel这个两组件,这两个组件就将eth0与eth1绑定成一个网桥设备,符合我们的要求。我的环境是rhcl 4.4假设定,这两个组件在光盘里就有的

#rpm-ivh bridge-util-×


接着将eth0与eth1 绑定成bri0 interface

#ifconfig eth0 0.0.0.0

#ifconfig eth1 0.0.0.0

#brctl addbr bri0

#brctl addif bri0 eth0

#brctl addif bri1 eth1


使用brctl show 确认一下

#brctl show

birdge name bridge id STP enable interface

bri0 8000.000347305b3 no eth0

eth1

这里问题

到了这里,既然bri0 interface 已经建立好了,那么是否在上面写入ip地址呢?答案是肯定的,

有了ip地址我们就可以做到远程控制了,设置方法有两种,一种是手工写入,第二种通过dhcp server 获取


手工写入:

#ifconfig bri0 192.168.1.1 netmask 255.255.255.0 up

dhcp client

# dhclient bri0


以上可以写shell脚本,每次开机自动的执行,我用的是rhel 4.4 放在/etc/rc.local中


2. 设置firewall转发功能


#vi /etc/systcl.conf

#Controls ip packet forwarding

net.ipv4.ip_forwarding = 1

#sysctl -p


可以测试一下,目前server与client的网络连通xing


3.设置策略


至于策略那就是玩iptables了,基础部分我就不讲了相信大家理解的比我深刻,因为今天是休息天啊手写都发酸了。

进入主题:

为了安全考虑先把forward default policy设置为drop 只放行smb 协议和icmp ech0 request

# iptables -P FORWARD DROP

这时server与client目前肯定是连不通的

设置允许n个数据包通过:

# iptables —A FORWARD -m state -state RELATED,ESTABLISHED -j ACCPT

允许icmp ech0 request:

#iptables -A -FORWARD -s 192.168.1.0/24 -p icmp -icmp-type 8 -j ACCPT

设置只有server可以通过网上邻居将文件送到client

#iptables -A FORWARD -s 192.168.1.100/24 -d 192.168.1.200/24 -p tcp -dport 139 -j ACCPT


#iptables -A FORWARD -s 192.168.1.100、24 -d 192.168.1.200/24 -p tcp -dport 445 -j

ACCPT


这样一就OK了。
阅读(1651) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~