Shorewall的单用户简单设置
shorewall/rules 和 /etc/shorewall/policy
关系: policy是定义默认的策略给所有的连接(从一个zone到另外一个zone, 比如我们定义的从loc到net);
rules是定义特殊的防火墙规则,即是policy里面没有的。
先后条件:任何连接,防火墙先检查rules,如果rule中没有关于这个连接要求的描述,就调用policy的默认配置。
/etc/shorewall/policy的配置如下(默认)
#SOURCE ZONE DESTINATION ZONE POLICY LOG LIMIT:BURST
# LEVEL
loc net ACCEPT
net all DROP info
all all REJECT info
#LAST LINE -- DO NOT REMOVE
我一般改为下面,省得每次开端口麻烦。
fw net ACCEPT
net all DROP info
all all REJECT info
上面的含义是允许本机所有连接网络的要求;网络连接到我的所有zones(比如防火墙fw,本地loc)都丢弃该连接要求的tcp封包,并记入日志。拒绝所有连接要求并记入日志(当连接被拒绝了,防火墙就会返回一个RST (加入协议是TCP) 或者一个 ICMP端口不能到达的包给其他协议)
-------------
/etc/shorewall/rules配置如下(一般不需要太大配置,除非你的机器运行了比如想web服务器之类的东西。需要端口开放时候再来配置该文件)
#
这里我选择保持默认,就是没有定义的东西。如果你以后想开什么端口,就自己在这个上面写就是了。关于各个选项,配置文件里面有很详细的描述。比如 ACCEPT net loc icmp echo-request就是让网络可以ping到本机的设置。你以后要开ftp,bt,pop3等端口的时候,自己可以在这个上面设置!
---------------
四、启动shorewall。
sudo shorewall start (注意再建立一个/var/lock/subsys这个文件夹,程序需要,但是ubuntu没有该目录,所以要自己建立!不然会有错误信息提示)
或者重新启动计算机就自动启动了,修改/etc/default/shorewall的文件,把starup改为1即可。(一般情况下,如果你的运气实在不好,就请自己把该程序ln一个连接到rcS.d中)
- UNIX安全构架经验 (04-18)
- UNIX历史(04-18)
- UNIX环境高级编程之进程的用户ID和组ID(09-12)
- unix中的信号处理机制(04-20)
- REDIce-Linux--灵活的实时Linux内核(11-12)
- linux文件系统基础(02-09)