去评论
dz插件网

使用Discuz! Nginx环境伪静态规则的一些安全规则伪静态设置技巧分享

admin
2022/10/15 23:12:24
使用Discuz! Nginx环境伪静态规则的一些安全规则伪静态设置技巧分享,按需添加:(请按照自己需求摘取添加。)

  1. #请求这些敏感词时跳转下载10g文件
  2. if ($request_uri ~* "(\.gz)|(")|(\.tar)|(admin)|(\.zip)|(\.sql)|(\.asp)|(\.rar)|(function)|($_GET)|(eval)|(\?php)|(config)|(\')|(\.bak)") {
  3.             return 301 http://lg-dene.fdcservers.net/10GBtest.zip;
  4.         }


  5. #禁止下载以 XXX 后缀的文件
  6. location ~ \.(zip|rar|sql|bak|gz|7z)$
  7. {
  8.    return 444;
  9.   }


  10. #访问链接里含有 test 直接跳转到公安网
  11. if ($request_uri ~* test=) {
  12.   return 301 https://www.mps.gov.cn;
  13. }


  14. #屏蔽非常见蜘蛛爬虫配置
  15. if ($http_user_agent ~* (SemrushBot|python|MJ12bot|AhrefsBot|AhrefsBot|hubspot|opensiteexplorer|leiki|webmeup)) {
  16.      return 444;
  17.   }


  18. #禁止某个目录执行脚本
  19. #uploads|templets|data 这些目录禁止执行PHP
  20. location ~* ^/(uploads|templets|data)/.*.(php|php5)$ {
  21.     return 444;
  22.   }

  23. #禁止爬虫返回404【禁止任何爬虫收录网站】
  24. if ($http_user_agent ~* "qihoobot|Censys|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot|FeedDemon|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|YisouSpider|Scrapy|HttpClient|MJ12bot|heritrix|EasouSpider|LinkpadBot|Ezooms|^$") {  
  25.         return 404;
  26. }

  27. #非指定域名访问返回403
  28. if ($host != 'XX.XX.XX'){
  29.     return 403;
  30.        }

  31. #仅允许特定IP访问并加上帐号密码验证
  32. root /opt/hostloc/www;
  33. allow  xx.xx.xx.xx;
  34. allow  2xx.xx.x.xx;
  35. deny  all;
  36. auth_basic “test”;
  37. auth_basic_user_file htpasswd;

  38. #禁止访问多个目录
  39. location ~ ^/(cron|templates)/
  40. {
  41. deny all;
  42. break;
  43. }

  44. #隐藏nginx版本号
  45. http块添加
  46. http {
  47. ...
  48. server_tokens off;
  49. ...
  50. }

  51. #禁止非浏览器访问
  52. if ($http_user_agent ~ ^$) {
  53.         return 412;
  54. }


  55. #限制http版本号,只允许下面3个HTTP版本
  56. if ($server_protocol !~* "HTTP/2.0|HTTP/3.0|SPDY/3.1") {
  57.     return 403;
  58. }


  59. #下面3个规则比较暴力,酌情引用
  60. #禁止非 Mozilla/ 请求头的访问
  61. if ($http_user_agent !~* "Mozilla/") {
  62.     return 403;
  63. }

  64. #禁止非GET|HEAD|POST方式的抓取
  65. if ($request_method !~ ^(GET|HEAD|POST)$) {
  66.     return 403;
  67. }

  68. #禁止Scrapy等爬虫工具的采集
  69. if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {
  70.     return 403;
  71. }