我们有一个 RHEL 6.5 系统,它会启动到加载 APF 防火墙的位置,然后无限期挂起。控制台显示以下内容:
...
Loading autofs4: [OK]
Starting automount: [OK]
Starting SWsoft control panels server... [OK]
Starting APF: ip_tables: (C) 2000-2006 Netfilter Core Team
nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
然后它会在上面的屏幕上无限期地等待。我们能够解决此问题的唯一方法是禁用 APF 服务在启动时启动。
/var/log/messages 显示以下内容:
May 9 04:15:29 sapphire acpid: waiting for events: event logging is off
May 9 04:15:29 sapphire acpid: client connected from 6777[68:68]
May 9 04:15:29 sapphire acpid: 1 client rule loaded
May 9 04:15:30 sapphire automount[6797]: lookup_read_master: lookup(nisplus): couldn't locate nis+ table auto.master
May 9 04:15:31 sapphire kernel: ip_tables: (C) 2000-2006 Netfilter Core Team
May 9 04:15:31 sapphire kernel: nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
/var/log/apf_log 在启动挂起之前始终显示以下内容作为最后一行:
May 09 04:15:33 server apf(6915): {dshield} downloading http://feeds.dshield.org/top10-2.txt
May 09 04:15:33 server apf(6915): {dshield} parsing top10-2.txt into /etc/apf/ds_hosts.rules
May 09 04:15:33 server apf(6915): {dshield} loading ds_hosts.rules
May 09 04:30:50 server apf(2681): {dshield} downloading http://feeds.dshield.org/top10-2.txt
May 09 04:30:51 server apf(2681): {dshield} parsing top10-2.txt into /etc/apf/ds_hosts.rules
May 09 04:30:51 server apf(2681): {dshield} loading ds_hosts.rules
May 09 04:48:45 server apf(2653): {dshield} downloading http://feeds.dshield.org/top10-2.txt
May 09 04:48:46 server apf(2653): {dshield} parsing top10-2.txt into /etc/apf/ds_hosts.rules
May 09 04:48:46 server apf(2653): {dshield} loading ds_hosts.rules
因此,加载 DShield 规则似乎导致启动挂起。
成功启动后,iptables 和 APF 都运行良好。
谁能建议如何解决这个问题?
答案1
这个问题似乎已经自行修复,因为使用相同的配置重新启动现在可以正常工作。由于在加载从 DShield 动态下载的文件时系统启动挂起ds_hosts.rules
,我们只能假设该文件存在问题,该文件已被更新,因为系统上没有其他任何更改。
当服务器无法启动时,临时解决方法是通过启动到单用户模式然后运行来在启动时禁用 APF:
chkconfig apf off