suhosin补丁专用文件日志

时间:2013-06-25 12:59:40

标签: php logging syslog suhosin

是否可以将suhosin补丁的日志从syslog移动到专用文件?

cron每5分钟调用一次cron,并尝试将内存限制设置为-1 所以,每次调用Cacti时,我都会在syslog中发送2条消息。

  

ALERT - 脚本尝试禁用memory_limit,将其设置为负值-1个字节,这是不允许的(攻击者'REMOTE_ADDR未设置',文件'未知')

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

是的,您可以通过多种方式进行设置:

  1. 如果您想继续使用系统的系统日志:

    suhosin.log.syslog.facility ini设置,您可以选择 USER设施中没有其他应用程序使用的设施之一 系统

    大多数syslog守护进程都有各种过滤功能来决定 应该发送消息的位置。你必须检查你的 系统正在运行,有很多流行的syslog守护进程 rsyslogdsyslogsyslog-ng。他们都有自己的 配置格式,但它们都应该能够基于过滤 在设施上。在大多数情况下,您还可以过滤程序名称或 匹配日志消息本身的模式。

    在sysklogd,rsyslogd,dsyslog样式配置文件中,这样看起来 匹配设施时的事情:

    local5.*     /var/log/suhoshin_alert.log 
    

    或者在消息上使用正则表达式:

    *.*     /var/log/suhoshin_alert.log
    :msg, regex, "^ALERT -"
    

    如果您只是想忽略这些消息,可以使用~日志目标来丢弃消息。 (请注意你的规则匹配)

  2. 您可以使用自定义日志记录脚本

    suhosin.log.script.namesuhosin.log.phpscript.name配置选项。你可以用它们两者指定一个脚本文件,php将把信息作为变量,而另一个将把它作为参数,你可以将消息记录到你选择的任何地方。

    您还必须更改suhosin.log.scriptsuhosin.log.phpscript选项以指示应将哪些类型的消息发送到脚本,请参阅table here

  3. 然而,这听起来好像修复你的问题(允许内存限制改变,或者不改变内存限制)会更好。