V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
deweixu
V2EX  ›  程序员

服务器上有一些垃圾请求,如何屏蔽?

  •  
  •   deweixu ·
    deweixu · 2022-05-07 16:21:03 +08:00 · 1974 次点击
    这是一个创建于 964 天前的主题,其中的信息可能已经有所发展或是发生改变。
        239 "/"
          1 "/.aws/credentials"
         99 "/.env"
          1 "/.env.bak"
          1 "/.git/HEAD"
          1 "/.git/config"
          2 "///remote/fgt_lang"
          1 "/1phpmyadmin/index.php"
          1 "/2phpmyadmin/index.php"
          3 "/99vt"
          4 "/99vu"
          2 "/Autodiscover/Autodiscover.xml"
          1 "/GponForm/diag_Form"
          1 "/HNAP1"
          1 "/MyAdmin/index.php"
          1 "/PMA/index.php"
          1 "/RestAPI/ImportTechnicians"
          2 "/_ignition/execute-solution"
          1 "/_phpMyAdmin/index.php"
          1 "/_phpmyadmin/index.php"
          1 "/_phpmyadmin_/index.php"
          2 "/_profiler/phpinfo"
          1 "/actuator/health"
          1 "/admin/db/index.php"
          1 "/admin/includes/general.js"
          1 "/admin/index.php"
          1 "/admin/phpMyAdmin/index.php"
          1 "/admin/phpmyadmin/index.php"
          1 "/admin/pma/index.php"
          1 "/admin/sqladmin/index.php"
          1 "/admin/sysadmin/index.php"
          1 "/admin/view/javascript/common.js"
          1 "/admin/web/index.php"
          1 "/administrator/"
          1 "/administrator/PMA/index.php"
          1 "/administrator/admin/index.php"
          1 "/administrator/db/index.php"
          1 "/administrator/help/en-GB/toc.json"
          1 "/administrator/language/en-GB/install.xml"
          1 "/administrator/phpMyAdmin/index.php"
          1 "/administrator/phpmyadmin/index.php"
          1 "/administrator/pma/index.php"
          1 "/administrator/web/index.php"
    
    6 条回复    2022-05-08 16:54:31 +08:00
    i3x
        1
    i3x  
       2022-05-07 16:27:08 +08:00 via Android
    nginx 或者类似的反代写好规则假装有防护。只允许特定规则通过。。
    适合页面简单的情况。
    我的静态站就是
    只允许
    /
    /index.html
    /纯数字.html
    。。再怎么屏蔽请求还是到你服务器的,所以说只能说眼不见心不烦。
    如果后端是动态站的加个这样的拦截可以避免浪费 cpu 资源。
    也不一定是加个这样的拦截。放在二级目录下即可。
    /
    /index.html 可以跳转也可以设置连接
    /目录 /实际应用.asp
    codefever
        2
    codefever  
       2022-05-07 16:39:58 +08:00
    可以使用 Python 第三方库,pip install fake_useragent ,也可以自己维护一个 UA 类
    xuanbg
        3
    xuanbg  
       2022-05-07 16:44:34 +08:00
    有数据统计表明互联网上超过 70%的流量就是这些垃圾请求。所以,眼不见为净就是最有效的解决方案。
    VagrantZ
        4
    VagrantZ  
       2022-05-07 16:57:15 +08:00
    上个 WAF 呗
    🤣有时候看看日志里这些盲扫挺有意思的,就当收集 payload 了
    opengps
        5
    opengps  
       2022-05-07 17:28:36 +08:00
    上 waf 那种 web 应用防火墙
    FrankAdler
        6
    FrankAdler  
       2022-05-08 16:54:31 +08:00
    可以写个脚本,自动屏蔽这种请求,以 nginx 为例,如果开启了 access.log ,这种请求的结果肯定是 404 或者 302 ,写个脚本,每隔一段时间扫描下 access.log 里面的 404 ,然后提取 ip ,比如超过 10 次就追加到 nginx 的 deny 里面,下面是我自己在用的脚本

    ```
    line=1000
    times=10
    conf=/opt/nginx/conf/blockip.conf

    tail /data/logs/nginx/access.log -n $line | \
    grep -E '("404"|"302")' | jq -r '.remote_addr' | \
    sort | uniq -c | \
    awk '$1>$times{print "deny "$2 ";"}' >> $conf

    deny=$(sort $conf | uniq -c | awk '{print "deny "$3}')
    echo $deny | sed "s/; /;\n/g" > $conf

    /usr/local/sbin/nginx -t || exit
    /usr/bin/systemctl reload nginx
    ```
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4024 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:19 · PVG 13:19 · LAX 21:19 · JFK 00:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.