是否可以在 Apache 中记录客户端的 HPKP 错误?这似乎可以在error_log
或中记录ssl_request_log
,但即使我设置了LogLevel debug
,我也看不到任何有关固定错误的信息。我遗漏了什么吗?
答案1
使用report-uri
:
在 Apache 中使用它:
Header always set Public-Key-Pins "report-uri=\"http://example.site/pkp-report.pl\" pin-sha256=\"<EXAMPLEPIN>\"; max-age=5184000; includeSubDomains"
Perl 脚本只是将 POST 数据重定向到日志文件:
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
open(my $outfh, ">>", "report-uri.txt") || die "can't open log file: $!";
while (<>) {
print $outfh $_;
}
close($outfh);
print header();
对于 HPKP,http://example.site/pkp-report.pl
必须与使用 HPKP 的 HTTPS 站点不同。对于 CSP 报告,可以相同。