1.11 配置信号量

在有些系统中,Snort使用的信号量可能已经被分配给其它函数了,这样,我们就可以通过配置来设置Snort的默认信号量 可以通过这种方式设的信号有:

  • SIGNAL SNORT RELOAD
  • SIGNAL SNORT DUMP STATS
  • SIGNAL SNORT ROTATE STATS
  • SIGNAL SNORT READ ATTR TBL

配置如下:

./configure SIGNAL_SNORT_RELOAD=<value/name>     SIGNAL_SNORT_DUMP_STATS=<value/name>\
    SIGNAL_SNORT_READ_ATTR_TBL=<value/name> SIGNAL_SNORT_ROTATE_STATS=<value/name>

你当然也可以重新把这些行为绑定到其它信号中。以下命令中,把速率统计(rotate stat) 绑定到信号31、重新加载熟悉表绑定到SIGUSR2上:

./configure SIGNAL_SNORT_ROTATE_STATS=31 SIGNAL_SNORT_READ_ATTR_TBL=SIGUSR2

如果同一个信号被绑定多次,则Snort初始化时会报警。如果一个信号处理函数没有安装,则也会报警。最好fix掉这种bug,否则该操作就会丢掉。 Snort中使用的信号

Signal name Default value Action
SIGTERM SIGTERM exit
SIGINT SIGINT exit
SIGQUIT SIGQUIT exit
SIGPIPE SIGPIPE ignore
SIGNAL_SNORT_RELOAD SIGHUP reload snort
SIGNAL_SNORT_DUMP_STATS SIGUSR1 dump stats
SIGNAL_SNORT_ROTATE_STATS SIGUSR2 rotate stats
SIGNAL_SNORT_READ_ATTR_TBL SIGURG reload attribute table
SIGNAL_SNORT_CHILD_READY SIGCHLD internal use in daemon mode