V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
herozzm
V2EX  ›  问与答

源服务器的 iptables 能检测到 cdn 反代后的真实用户 ip 吗?

  •  
  •   herozzm · 2022-01-03 18:28:29 +08:00 · 1518 次点击
    这是一个创建于 1048 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我有个网站用的是腾讯的 cdn ,用户访问先到腾讯 cdn ,然后 -> 源服务器

    现在的问题是一堆爬虫来爬我数据,腾讯的 cdn 封禁 ip 黑名单太弱了(只支持 /24/18/16 这样的 IP 段,其他的支持很少),支持数量也很有限,我想在源服务器上用 iptables 封禁爬虫的 ip 段可行吗?
    9 条回复    2022-01-04 12:15:41 +08:00
    herozzm
        1
    herozzm  
    OP
       2022-01-03 18:29:35 +08:00
    想法是封禁所有阿里云的 ip ,大部分爬虫都部署阿里云上,我已经通过 https://bgp.he.net/search?search[search]=aliyun&commit=Search 得到了大部分的阿里云 ip
    Buges
        2
    Buges  
       2022-01-03 18:37:31 +08:00 via Android
    当然不能。真实 IP 是通过 X-REAL-IP 这样的应用层协议传输的,当然应该用应用层的防火墙拦截。
    lhx2008
        3
    lhx2008  
       2022-01-03 18:37:41 +08:00
    cdn 会带 http 头,显示源 IP ,这个时候可以 cdn -> 过滤器如 nginx -> 源服务器,然后通过过滤器解析 http 头做拦截
    0x0021h
        4
    0x0021h  
       2022-01-03 18:37:54 +08:00
    使用 X-Forwarded-For 可以获得真实的爬虫 IP 地址,然后封锁。
    0x0021h
        5
    0x0021h  
       2022-01-03 18:38:30 +08:00
    不过仅能在 CDN 的 firewall 上? ()
    herozzm
        6
    herozzm  
    OP
       2022-01-03 18:41:52 +08:00
    @lhx2008 我问问腾讯的技术客服
    des
        7
    des  
       2022-01-03 20:01:25 +08:00 via iPhone
    @herozzm
    在应用层处理不是能做更多操作吗?
    zingl
        8
    zingl  
       2022-01-04 02:22:45 +08:00
    用自己的 IP 试一下,几分钟就知道答案了
    tencentcloud
        9
    tencentcloud  
       2022-01-04 12:15:41 +08:00
    @herozzm 您好,目前腾讯云内容分发网络( CDN )支持一些简单的爬虫防护策略,比如说您可以根据爬虫请求设置 IP 黑名单,UA 黑白名单配置,http referer 防盗链等。如果您要求更高的爬虫防护,建议您使用安全加速产品(SCDN) Bot 爬虫防护功能,文档如下: https://cloud.tencent.com/document/product/1226/62782 ,感谢您对腾讯云的支持。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2756 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 12:32 · PVG 20:32 · LAX 04:32 · JFK 07:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.