我希望能够记录/捕获访问我网站上指定位置的访客的 IP。想法是使用 2 个 conf 文件来将其列入白名单或黑名单。
- 坏人可能会被服务器自动列出并屏蔽
- 管理员可以访问一个秘密地址,以便在访问管理区域之前将其 IP 列入白名单。
问题是我找不到如何让 nginx 在我的 conf 文件中写入 IP。
例子:
location ~* ^/(trustme)/?$
add "allow X.X.X.X;" to /etc/nginx/conf.d/trusted-ips.conf;
}
location ~* ^/(admin|wp-admin|control)/?$
add "deny Y.Y.Y.Y;" to /etc/nginx/conf.d/blacklisted_ips.conf;
}
谢谢
答案1
根据我的理解,您是否想在一个文件中添加受信任的 IP,然后允许它们位于特定位置,而将可疑的 IP 移动到其他文件,然后对这些 IP 进行一些限制?
如果我理解正确的话,你可以 awk ip of page 1
awk '$7 ~ /^\/page1?/ {print $1}' /path/to/access.log | sort -u > result.txt
然后使用相同命令在 page2 或 admin 上 awk ip 并将其存储在其他位置。