V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
wico97
V2EX  ›  NGINX

怎么屏蔽别人对我网站的反代

  •  
  •   wico97 · 2019-08-19 02:15:45 +08:00 · 8490 次点击
    这是一个创建于 1951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    发现一个域名对我网站内容反对。查看日志,发现基本都是 cloudflare 的 IP, 172.68.141.24 - - [18/Aug/2019:18:04:05 +0000] "GET /dashboard/storage/all HTTP/1.1" 200 225 "https://hisdomain.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" "170.140.104.2"

    他的域名加了 CF。怎么有效的屏蔽他的域名对我的反代? 谢谢

    25 条回复    2019-08-19 14:44:05 +08:00
    SP00F
        1
    SP00F  
       2019-08-19 02:20:02 +08:00
    nginx 层对域名屏蔽 0.0
    0ZXYDDu796nVCFxq
        2
    0ZXYDDu796nVCFxq  
       2019-08-19 02:27:13 +08:00   ❤️ 4
    在 html 里加入混淆过的 js
    判断当前域名,不是你的域名就跳转到你的域名
    falcon05
        3
    falcon05  
       2019-08-19 03:09:46 +08:00 via iPhone
    关闭 default_server
    wico97
        4
    wico97  
    OP
       2019-08-19 03:24:22 +08:00
    @gstqc 这个不错。谢谢
    alphatoad
        5
    alphatoad  
       2019-08-19 03:32:57 +08:00 via iPhone   ❤️ 1
    cloudflare 能用来给第三方站做反代?
    是直接 cname 了吧
    flyz
        6
    flyz  
       2019-08-19 07:09:38 +08:00 via Android
    @wico97 这个还要随机加到固定的几个 js 里面,
    把几个 js 都加密。
    jinliming2
        7
    jinliming2  
       2019-08-19 07:33:54 +08:00 via iPhone   ❤️ 3
    如果你不用 cloudflare 的话,可以把 cloudflare 的 IP 段全 ban 掉: https://www.cloudflare.com/ips/
    jinliming2
        8
    jinliming2  
       2019-08-19 08:07:50 +08:00 via iPhone
    @gstqc
    @flyz
    其实就算把判断代码加到 js 里,也只是增加了难度而已,对方只要把页面中所有的 js 内容、js 文件做一次中间处理,包装一层,
    ((window, document) => {
    //原始的 js 内容原封不动的放在这
    })(windowproxy, documentproxy);
    这样不论中间的 js 怎么写、怎么加密,都始终拿不到原始的 window 对象,只能拿到经过包装的版本,这里对方只要更改 location 的实现,让内部 js 获取不到当前的真实 location。
    zjsxwc
        9
    zjsxwc  
       2019-08-19 08:18:10 +08:00 via Android
    和如何应对爬虫一个处理方式
    chinvo
        10
    chinvo  
       2019-08-19 08:25:53 +08:00
    如果你不用 CF,就屏蔽 CF 的 IP

    如果你用 CF,就启用 Authenticated Origin Pulls
    zqjilove
        11
    zqjilove  
       2019-08-19 08:45:45 +08:00
    @jinliming2 我也碰到过这种情况,刚刚根据你提供的链接,把 cloudflare 的 IP 段全 ban 掉。因为会舒心很多。
    alan0liang
        12
    alan0liang  
       2019-08-19 09:11:57 +08:00 via Android
    @jinliming2 #8 (new Function('return this'))()还会得到 window
    jinliming2
        13
    jinliming2  
       2019-08-19 09:44:44 +08:00 via iPhone
    @alan0liang 那我要是把 Function 也给你包装到最外层的参数里呢
    ((window, document, Function) => {
    //原始的 js 内容原封不动的放在这
    })(windowproxy, documentproxy, Functionproxy);
    wednesdayco
        14
    wednesdayco  
       2019-08-19 10:30:20 +08:00
    @jinliming2 页面内塞一个 iframe,iframe 内获取 referrer 判断……
    alan0liang
        15
    alan0liang  
       2019-08-19 10:32:39 +08:00 via Android
    @jinliming2 (new (function(){}.constructor)('return this'))()
    emmmlucky
        16
    emmmlucky  
       2019-08-19 11:36:26 +08:00
    @jinliming2 (function(){return this})()
    alan0liang
        17
    alan0liang  
       2019-08-19 11:58:02 +08:00 via Android
    @emmmlucky 您这个一 bind 就挂了
    (function(window){
    // 这里放原代码
    }).call(windowproxy, windowproxy)
    laravel
        18
    laravel  
       2019-08-19 12:00:57 +08:00
    在 js 里判断如果不是你的网址就跳转到 pornhub, 然后举报
    wclebb
        19
    wclebb  
       2019-08-19 12:12:36 +08:00 via iPhone
    @laravel #18 结果网站只能翻,举报不成。
    salmon5
        20
    salmon5  
       2019-08-19 12:46:17 +08:00
    @gstqc 如果反向代理的 nginx 把你判断域名的 js 重写了,有招防吗?
    alan0liang
        21
    alan0liang  
       2019-08-19 12:52:50 +08:00 via Android
    @salmon5 写一个 refresh header,然后在 js 里去掉?
    0ZXYDDu796nVCFxq
        22
    0ZXYDDu796nVCFxq  
       2019-08-19 13:08:10 +08:00 via Android
    @salmon5 判断访问频率
    0ZXYDDu796nVCFxq
        23
    0ZXYDDu796nVCFxq  
       2019-08-19 13:10:57 +08:00 via Android
    @salmon5 js 不一定是固定的,如果网页是动态生成的,加上各种随机参数
    甚至,把这个判断和重要的 js 混在一起

    这样重写的难度就高了很多
    xenme
        24
    xenme  
       2019-08-19 13:13:22 +08:00 via iPhone
    不定时改负责和 js 啥的,把流量从他的都拿过来不是更好
    lazyfighter
        25
    lazyfighter  
       2019-08-19 14:44:05 +08:00
    deny ip 不就行了吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   966 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:25 · PVG 06:25 · LAX 14:25 · JFK 17:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.