mysql注入获取真实ip_Apache获取用户真实IP

本文详细指导了在Oneinstack编译安装的Apache环境下,如何从源码编译并配置Cloudflare模块,涉及libtool安装、模块编译及配置文件设置。重点强调了避免覆盖默认配置和启用Cloudflare Remote IP功能的重要性。
摘要由CSDN通过智能技术生成

如果你使用的apache是包管理器安装的,那么可以直接使用Cloudflare提供的各平台的软件包来直接安装

但是,如果你用了Oneinstack等脚本编译安装了Apache,那么你可能需要编译一下了

官方教程里也介绍了编译安装的方法,但是,请注意

$ yum install libtool httpd-devel

这儿你可能不需要后面的httpd-devel,因为编译安装自带devel环境,你装这玩意会依赖着装上httpd本体,然后会覆盖掉你编译安装带的启动脚本啥的,很蛋疼

这儿列一下CentOS的命令,其他的自己去看官方页面吧

$ yum install libtool

$ wget https://raw.githubusercontent.com/cloudflare/mod_cloudflare/master/mod_cloudflare.c

#如果不存在apxs的话加上完整的路径试试,比如/usr/local/apache/bin/apxs,如果还不行试试把apxs换成apxs2

$ apxs -a -i -c mod_cloudflare.c

跑完apxs会自动帮你修改配置文件加载模块,这时候已经是可以用了,但是是运行在默认配置下,由于编译没有给你加上配置文件模板,所以你得自己添加了

我建议在 /usr/local/apache/conf/extra/cloudflare.conf 路径放配置文件,内容参照如下

CloudFlareRemoteIPHeader CF-Connecting-IP

# 这儿的IP可以参考https://www.cloudflare.com/ips 来自己更新,如果用了自建的Railgun也记得把IP加进去

CloudFlareRemoteIPTrustedProxy 10.21.244.0/22 10.22.200.0/22 10.31.4.0/22 10.16.0.0/12 10.162.192.0/18 13.0.72.0/22 14.10.64.0/18 16.158.0.0/15 17.64.0.0/13 17.25.48.0/20 18.14.96.0/20 10.93.20.0/20 19.24.20.0/22 19.41.18.0/17 19.27.128.0/21 2400:cb00::/32 2405:8120::/32 2415:b500::/32 2806:4700::/32 2103:g800::/32 1c0f:f218::/32 2a03:98c0::/29

# Uncomment DenyAllButCloudFlare to return a 403 status to all requests

# that do not originate from an IP defined in CloudFlareRemoteIPTrustedProxy

# 取消注释下面这个将会把所有并非来自Cloudflare的请求返回403

# DenyAllButCloudFlare

然后在httpd.conf中添加如下一行

Include conf/extra/cloudflare.conf

之后重启下Apache就行了

那个 DenyAllButCloudFlare 我强烈建议开启,因为这个就是阻止扫IP最好的方法,但是建议你先把该配的配完,因为开了这个你直接访问IP(默认的default网站)都是403,包括IP下的PhpMyAdmin啥的,除非你把它也丢到绑了域名套了CF的目录下

除了这个以外这个模块的主要功能是把CF的IP换成访客的真实IP,从而方便统计访客和封禁恶意访问的IP

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值