如何用FreeBSDetc sysctl.conf实用工具安全设置

工具显示源文件修订记录反向链接最近更改媒体管理器网站地图登录
doc:s:sysctl:tuning
通过 sysctl 进行调优
本页提供关于 sysctl 参数比较常用的调优建议。此文档会经常更新,请注明其最新版本位于
许多进程处于“ufs”状态,同时系统响应变慢
诊断:导致这种问题的原因,通常是系统由于某种原因在 I/O 上消耗了太多时间。遇到这种情况,可以查看 systat -vm 的输出,观察磁盘是否存在非常多的访问,并检查下面两个 sysctl 变量的值:
vfs.ufs.dirhash_mem
vfs.ufs.dirhash_maxmem
UFS dirhash是一项旨在改善频繁访问、并且包含大量文件的目录(注意:如果你撰写了一个这样的应用,请重新思考自己的设计,因为这样做是非常不理性的)访问性能的措施。其中,如果vfs.ufs.dirhash_mem的数值接近vfs.ufs.dirhash_maxmem的数值,那么说明有可能系统由于存在大量文件的目录,而 dirhash 缓存不足而导致大量的 I/O 阻塞,此时应将 dirhash_maxmem 提高至少1倍。
诊断:并不是所有出现这种情况的时候都需要采取行动。然而,通过配置迅速进行 TCP socket 回收,能够改善某些应用程序的响应速度。FreeBSD默认情况下,TIME_WAIT的超时时间为60秒。
FreeBSD的TCP/IP协议栈会在必要时,自动将 TCP 协议允许回收的 TIME_WAIT 状态的 TCP socket 回收,因此假如应用程序不受这种状态的连接的影响,就没有必要进行任何调整。某些应用程序,如 Apache HTTPD,有可能由于连接回收问题导致负载过高,此时,可以对此超时时间进行调整。
FreeBSD的TIME_WAIT状态默认超时时间为 2*MSL;这是目前唯一可以影响这一超时时间的配置。对应的 sysctl 变量是 net.inet.tcp.msl。一般说来,对于多数网络而言,这个值设置为 2000 或 2500 是不致导致问题的。请注意,这个数值也是 TCP 三次握手的超时时间,如果设置的太短,可能会导致网络状况较差的用户无法连接网站。
经常有人扫描我的 TCP/UDP 端口!
诊断:默认情况下,FreeBSD会对未开放端口的连接请求回应 ICMP unreachable 消息(默认设置为 200 条每秒)。对于半开式端口扫描而言,这些信息会帮助他们进行扫描。
建议:一般说来,我们并不建议阻止这种扫描;如果希望完全阻止这类扫描,可以使用:
net.inet.tcp.blackhole=1
net.inet.udp.blackhole=1
来禁止回应 RST;这种做法的一个明显的缺陷是,一旦服务死掉,探测程序必须等待超时才能够知道服务的状态,对于前面有负载均衡设备的服务器而言,这种设置是不能使用的;此外,完全禁止扫描,并不会提高任何安全性。
理想的做法是降低这种扫描的有效性,方法是:
net.inet.icmp.icmplim=5
这里,5是一个经验数值。每秒钟能够得到最多5次unreachable消息,对于攻击者而言,意味着需要花费更多的精力和代价进行扫描,这意味着你会有更多的机会抓到他。
经常出现 Limiting *** from XXX to 200 packets/sec 怎么办
诊断:这种现象需要分情况讨论。如果你的服务很繁忙,并且看到的是 open port RST,这种情况必须重视,因为它显示你的服务响应能力不足。如果是closed port RST,说明有人在尝试扫描你的端口,或者某个被人经常访问的服务死掉了。对于后一种情况,假如感觉这种提示很烦,可以考虑用下列配置:
net.inet.icmp.icmplim_output=0
来禁止输出,然而这可能不是一个好主意;另一个办法是提高limit:
net.inet.icmp.icmplim=1000
这同样不是一个好主意,因为它可能造成杠杆式 DoS(通过伪造源 IP 地址来让你的服务器互相发 RST)。最后一种办法是禁止发送 closed port RST 回应:
net.inet.tcp.blackhole=1
net.inet.udp.blackhole=1
这种方法会削弱多数负载均衡设备的探测能力。
请根据实际情况进行适当的配置。
抛弃 SYN+FIN 包有用吗
诊断:一些人建议采用 net.inet.tcp.drop_synfin=1 来防止 TCP 工具,如 nmap 探测操作系统。这是一种十分幼稚的建议。
真相:TCP探测工具并不仅仅依赖 SYN+FIN 来判断操作系统。抛弃 SYN+FIN 包是违反 TCP 协议的,不建议使用这个选项。

我要回帖

更多关于 sysctl 的文章

 

随机推荐