最近因公司需要上一个项目,需要用到透明防火墙,这里把实施过程写下来。透明防火墙的优点很多,可在网络上的任意点架设,如果不设置IP在网络上几乎是攻击不到(因防火墙本身没有IP,但是否真的100%避免攻击,有没有其他特殊手段,这里还不敢断言。)架设透明就是两个步骤,首先把linux主机变为网桥,而网桥最少需要两块网卡。这里需要安装一个网桥管理工具
yum install bridge-utils
网络配置如下:
vi /etc/sysconfig/network-script/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
vi /etc/sysconfig/network-script/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
以下可写成script,方便开机启动。
echo 1 > /proc/sys/net/ipv4/ip_forward
brctl addbr br0 //增加网桥接口br0
brctl addif br0 eth0 //向网桥接口br0增加网卡eth0
brctl addif br0 eth1 //向网桥接口br0增加网卡eth1
ifconfig br0 up //启用网桥接口br0
如果想要网络连线管理,可于网桥上设置IP,当然安全性就会降低。
ifconfig br0 192.168.1.2 netmask 255.255.255.0
ifconfig br0 up
查看网桥接口:
brctl show
网桥卸载:
brctl delif eth0
brctl delif eth1
ifconfig br0 down
brctl delbr br0
接下来就是防火墙的配置了,如只想要让某个IP段通过(更多的用法这里就不多写了,也不是特别专业)
iptables -P FORWARD DROP
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/24 -j ACCEPT
以上防火墙就可以正常工作了,再有就是iptables规则在重启后就会丢失(这是一个很惨痛的教训,辛苦写了十几条规则一重启全没了。)所以还要记得保存一下
iptables-save > iptables_rules
iptables-restore < iptables_rules