夏清然

夏清然的博客

他的个人主页  他的博客

FreeBSD在线开启ipfw

夏清然  2009年07月14日 星期二 11:53 | 1172次浏览 | 1条评论

危险操作,一身冷汗,特记录存档

由于默认的内核编译选项没有并加入以下内容:

options IPFIREWALL

options IPFIREWALL_DEFAULT_TO_ACCEPT

 

所以在启用ipfw的时候,会启用默认禁止的全部连接的规则,那么直接的后果是把ssh的连接踢下线,并切断外界到这个服务器一切端口的连接请求。

解决方案,在启用ipfw后,马上加入一条允许所有请求的规则:

kldload ipfw && ipfw add 65534 allow ip from any to any

 

另外需要注意一点:绝对禁止使用/sbin/ipfw -q -f flush,会导致把上面这条手动添加的开放规则删除!

 

同时,如果想在重启后ipfw也开启生效,那么需要这样做:

在/etc/rc.conf里加入:

firewall_enable="YES"

firewall_script="/etc/firewall.sh"

 

同时/etc/firewall.sh的内容是

#!/bin/sh

/sbin/ipfw -q -f flush

/sbin/ipfw add 65534 allow ip from any to any

 

同时自定义的ipfw规则也可以向/etc/firewall.sh中添加,比如阻止118.215.66.135到本机80端口的连接,那么加入

/sbin/ipfw add 1 deny ip from 118.215.66.135 to any dst-port 80

 

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !
徐继哲

回复 徐继哲  2009年07月15日 星期三 08:24

搞的不错,继续努力!

0条回复

暂时没有评论

Zeuux © 2024

京ICP备05028076号