ada*_*dam 9 email php apache-2.2
有什么方法可以让我找到发送电子邮件的 php 脚本。
我在“标准”安装中有 apache+php(没有 mod_suphp 也没有 suexec),我想找出女巫 php 脚本正在发送电子邮件,当我检查日志时,我只看到发送电子邮件的用户的 uid(在我的情况 apache ),但我想找出源自电子邮件的脚本。
是否有可能或者我必须安装 suexec 或 mod_suphp 来跟踪它?
感谢您的帮助。
php 5.3 被插入以获得更好的邮件跟踪,但我不确定这是否发生。(编辑:是的 php 5.3 现在内置了日志记录 - php.ini 具有配置变量 mail.log,它将记录来自 php 代码的邮件的使用。)
我们通过使 sendmail 成为一个包装壳脚本来解决这个问题。
在 php.ini 中设置一个新的邮件程序。例如:
sendmail_path = /usr/local/bin/sendmail-php -t -i
Run Code Online (Sandbox Code Playgroud)
sendmail-php 脚本简单地使用 logger 获取信息,然后调用系统的 sendmail:
#!/bin/bash
logger -p mail.info -t sendmail-php "site=${HTTP_HOST}, client=${REMOTE_ADDR}, script=${SCRIPT_NAME}, filename=${SCRIPT_FILENAME}, docroot=${DOCUMENT_ROOT}, pwd=${PWD}, uid=${UID}, user=$(whoami)"
/usr/sbin/sendmail -t -i $*
Run Code Online (Sandbox Code Playgroud)
这将记录您的 mail.info 在 syslog.conf 文件中设置的任何内容。
另一个建议是安装 suhosin php 扩展以收紧 PHP 中的漏洞,除非您正在运行 Debian 或 Ubuntu,而这已经是默认设置。
归档时间: |
|
查看次数: |
9596 次 |
最近记录: |