1
分类: LINUX
2006-07-20 10:23:30
安装防火墙
sudo apt-get install shorewall
复制配置文件
sudo cp /usr/share/doc/shorewall/default-config/modules /etc/shorewall/
sudo cp /usr/share/doc/shorewall/default-config/policy /etc/shorewall/
sudo cp /usr/share/doc/shorewall/default-config/nat /etc/shorewall/
sudo cp /usr/share/doc/shorewall/default-config/zones /etc/shorewall/
sudo cp /usr/share/doc/shorewall/default-config/maclist /etc/shorewall/
sudo cp /usr/share/doc/shorewall/default-config/blacklist /etc/shorewall/
sudo gunzip -c /usr/share/doc/shorewall/default-config/interfaces.gz > /etc/shorewall/interfaces
sudo gunzip -c /usr/share/doc/shorewall/default-config/rules.gz > /etc/shorewall/rules
sudo gunzip -c /usr/share/doc/shorewall/default-config/hosts.gz > /etc/shorewall/hosts
sudo gunzip -c /usr/share/doc/shorewall/default-config/masq.gz > /etc/shorewall/masq
配置网卡
假设:你的网卡是 eth0 ,通过 ppp0 上 Internet.
sudo gedit /etc/shorewall/interfaces
在倒数第二行,也就是在 “#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE” 这一行之前添加:
net ppp0 detect dhcp,routefilter,norfc1918,tcpflags
loc eth0 detect tcpflags
配置网络别名
sudo gedit /etc/shorewall/zones
在倒数第二行,也就是在 “#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE” 这一行之前添加:
net Net Internet
loc Local Local Networks
配置IP伪装,也就是透明代理
sudo gedit /etc/shorewall/masq
在倒数第二行,也就是在 “#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE” 这一行之前添加:
ppp0 eth0
配置防火墙规则
sudo gedit /etc/shorewall/rules
在倒数第二行,也就是在 “#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE” 这一行之前添加:
#
# 允许 DNS 从 防火墙 连接到 Internet
#
AllowDNS fw net
#
# 允许本地网络可以使用 SSH 来管理服务器
#
AllowSSH loc fw
#
# 允许 Ping 到防火墙和允许防火墙 Ping 其它网络
#
AllowPing loc fw
AllowPing net fw
AllowPing fw loc
AllowPing fw net
#
# 允许 Internet 访问防火墙上的 WEB 服务
#
AllowWeb net fw
#
# 允许 Internet 访问防火墙上的 FTP 服务
#
AllowFTP net fw
#
# 允许 Internet 访问防火墙上的 邮件 服务
#
AllowSMTP net fw
AllowIMAP net fw
#
# 允许本地网络可以访问 Internet
#
AllowWeb loc net
#
# 允许本地网络可以收发邮件
#
AllowSMTP loc net
AllowIMAP loc net
AllowPOP3 loc net
#
# 允许本地网络使用 FTP 到 Internet
#
AllowFTP loc net
#
# 允许本地网络从 Internet 查询 DNS
#
AllowDNS loc net
#
# 允许本地网络使用 NSM
#
ACCEPT loc net tcp 1863
ACCEPT loc net tcp 443
ACCEPT loc net:gateway.messenger.hotmail.com all
#
# 将WEB访问重新定向到 3128 ,通过squid完成访问 ,访问服务器地址 192.168.0.1 除外。
#
#REDIRECT loc 3128 tcp www - !192.168.0.1
修改 shorewall.conf 自动开启 IP 转发
sudo gedit /etc/shorewall/shorewall.conf
查找到:
IP_FORWARDING=Keep
修改为:
IP_FORWARDING=On
修改 /etc/default/shorewall 自动运行防火墙
sudo gedit /etc/default/shorewall
查找到:
startup=0
修改为:
startup=1
启动防火墙
sudo shorewall start