一次防火墙配置故障

昨天要在一台远程服务器上配置防火墙,系统是freebsd,所以首选当然是ipfw。 很简单的在rc.conf加入了启用ipfw的相关语句

firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="open"
firewall_quiet="YES"

这样应该是没有问题了,于是重刷下rc.conf,结果把自己给档在外面了,想想不可能,以前一直在本机上操作也没有把自己档在外面的情况发生,今天怎么这样,难道我漏写了什么东西。没有办法,只能让机房把机器重启了,结果居然又可以进入系统了。这让我很郁闷,既然是错的语句在配置文件里,那应该是重启后还是无法连接系统的呀。

于是自己有重新写了下ipfw.rules,也加入到rc.conf中,然后又刷了下ipfw.rules,我还特地在规则最后加入了全开的选项。可这次居然又把自己档在外面了。在不知道情况的情况下,于是让机房的工作人员帮我们插上显示器和键盘进行处理,这个还是要非常感谢该机房工作人员任劳任怨。授权他们进入系统后把防火墙相关内容注释掉后重启刷下rc.conf,总算是可以登陆到系统了。

可问题还是存在阿,为什么明明最后写了允许通过,而实际却没办法登陆系统呢。而自己在本地进行测试这些规则都是没有问题的。

在百思不得其解后终于想明白了,原来是该规则中第一句是清空现有防火墙规则,而ipfw默认是deny所有连接的,而我远程操作的时候在执行完第一句就把我给deny掉了,于是后面的语句就不再执行下去了,这就是为什么每次重启后我能登陆到系统中,而直接远程操作的时候却无法连接进去。所以只要执行

sh /etc/ipfw.rules &;

这样就会把这个指令放入后台执行,这样做的后果是执行完就可以进入到系统中。

关于 Timo
XNIX SA & MYSQL DBA

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: