如何配置 Apache 以记录无效 HTTP 请求的 IP

如何配置 Apache 以记录无效 HTTP 请求的 IP

我的 Apache/2.4.29 (Ubuntu) 使用假名 IP 创建访问日志条目:

88.130.0.0 88.130.0.0 - - [09/Aug/2020:11:30:51 +0200] "GET / HTTP/1.1" 200 279 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36"

当我连接 ncat 并执行无效的 HTTP 请求时,IP 不会被记录。

[09/Aug/2020:11:31:38 +0200] "test\n" 400 226

在这种情况下,我该如何配置 Apache 来记录 IP?


使用以下日志格式:

LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

使用此 VirtualHost 指令启用日志记录:

CustomLog ${APACHE_LOG_DIR}/access.log combined

使用 mod_log_ipmask 进行假名化(https://github.com/webfactory/mod_log_ipmask)。

答案1

输出

apache2ctl -DDUMP_CONFIG | grep -vE "^[ ]*#[ ]*[0-9]+:"

显示 的日志配置<VirtualHost xxx:80>与 的日志配置不同<VirtualHost xxx:443>。现在它可以按预期工作。

相关内容