Eswlnk Blog Eswlnk Blog
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈
  • 注册
  • 登录
首页 › 攻防对抗 › 「运维干货」站长都想知道的Nginx安全配置分享

「运维干货」站长都想知道的Nginx安全配置分享

Eswlnk的头像
Eswlnk
2022-12-07 20:11:47
「运维干货」站长都想知道的Nginx安全配置分享-Eswlnk Blog
智能摘要 AI
本文介绍了Nginx作为流行Web服务器的安全配置方法。Nginx占用内存少但性能强大,其安全设置至关重要。通过修改`nginx.conf`文件,可以隐藏Nginx版本信息和`X-Powered-By`头以增强安全性。此外,还介绍了多种安全设置,如内容安全策略(CSP)、HTTP严格传输安全(HSTS)、跨域资源共享(CORS)等。文中提供了具体的配置代码,包括隐藏敏感信息、防止XSS攻击、保护Cookie、设置CORS等,确保网站的安全性和稳定性。

Nginx 是最流行的 Web 服务器,可以只占用 2.5 MB 的内存,却可以轻松处理 1w 的 http 请求。做为网站的入口,Nginx 的安全设置重要性不言而喻。

下面带你一起去认识一下这些安全配置吧!

nginx.conf是 Nginx 最主要的配置文件,大部分的安全配置都在这个文件上进行。

「运维干货」站长都想知道的Nginx安全配置分享-Eswlnk Blog

隐藏nginx版本信息

在 nginx.conf 中配置

http {
  ...

  # 隐藏版本信息
  server_tokens off;

  ...
}

就可以去掉nginx版本信息了

「运维干货」站长都想知道的Nginx安全配置分享-Eswlnk Blog

隐藏powered-by

输出的 x-powered-by 也会泄露网站信息,通过 proxy_hide_header 指令隐藏它。

···
location / {
...
# 隐藏powered-by
proxy_hide_header X-Powered-By;
...
}
···

相关安全设置

CSP 通过指定允许浏览器加载和执行那些资源,使服务器管理者有能力减少或消除 XSS 攻击的可能性

add_header  Content-Security-Policy  "default-src 'self'; img-src 'self' *.alicdn.com; object-src 'none'; script-src 'self' *.alicdn.com; style-src 'self' *.alicdn.com; frame-ancestors 'self'; base-uri 'self'; form-action 'self'";

X-Content-Type-Options 响应头相当于一个提示标志,被服务器用户提示浏览器一定要遵循 Content-Type 头中 MIME 类型的设定,而不能对其进行修改。

add_header  X-Content-Type-Options nosniff;

Strict-Transport-Security(HSTS)`告诉浏览器该站点只能通过 HTTPS 访问,如果使用了子域,也建议对任何该站点的子域强制执行此操作。

add_header  Strict-Transport-Security "max-age=31536000; includeSubDomains";

给浏览器指示允许一个页面可否在frame嵌入

DENY 表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许
SAMEORIGIN 表示该页面可以在相同域名页面的 frame 中展示
ALLOW-FROM uri 表示该页面可以在指定来源的 frame 中展示。

add_header  X-Frame-Options SAMEORIGIN;

跨域访问

add_header  Access-Control-Allow-Origin *;
add_header  Access-Control-Allow-Origin *.xx.com;

xss攻击防护

add_header  X-XSS-Protection  "1; mode=block";

cookie读取设置

add_header  Set-Cookie "Path=/; HttpOnly; Secure";

反向代理时要设置参数解决Cookie跨域丢失

proxy_cookie_path / "/; httponly; secure; SameSite=None";

跨域请求设置

通过配置Access-Control-Allow-Origin参数可以指定哪些域可以访问你的服务器,这个值要么是 要么是带协议端口号确定的值, .xx.com都是错误的值。

  set $cors "";
  if ($http_origin ~* (.*\.atpool.com)) {
    set $cors $http_origin;
  }
  add_header Access-Control-Allow-Origin $cors;
  add_header Access-Control-Allow-Methods "GET,POST,OPTIONS,DELETE,PUT";
  add_header Access-Control-Allow-Credentials true;
  add_header Access-Control-Allow-Headers *;
  if ($request_method = "OPTIONS") {
    return 204;
  }

完整的配置如下

server {
  listen  80;
  server_name test.xx.com;
  
  # 证书设置
  ssl_certificate cert/xx.com.pem;
  ssl_certificate_key cert/xx.com.key;
  ssl_session_timeout 5m;
  ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
  # 只启用TLS1.2 以上
  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_prefer_server_ciphers on;
  
  # 安全相关设置
  add_header  Content-Security-Policy  "default-src 'self' *.xx.com data: 'unsafe-inline';";
  add_header  Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
  add_header  X-Frame-Options  SAMEORIGIN;
  add_header  X-Content-Type-Options nosniff;
  add_header  X-XSS-Protection  "1; mode=block";
  add_header  Set-Cookie "Path=/; HttpOnly; Secure";
  add_header  Cache-Control  max-age=86400;
  
  # 跨域设置
  set $cors "";
  if ($http_origin ~* (.*\.xx.com)) {
    set $cors $http_origin;
  }
  add_header Access-Control-Allow-Origin $cors;
  add_header Access-Control-Allow-Methods "GET,POST,OPTIONS,DELETE,PUT";
  add_header Access-Control-Allow-Credentials true;
  add_header Access-Control-Allow-Headers *;
  if ($request_method = "OPTIONS") {
    return 204;
  }

  location / {
    gzip on;
    gzip_comp_level 6;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_types text/plain application/x-javascript text/css application/xml application/javascript application/json application/vnd.ms-fontobject font/ttf font/opentype font/x-woff image/svg+xml;

    proxy_pass   http://127.0.0.1:8000;
    proxy_hide_header   X-Powered-By; # 隐藏 powered-by
    proxy_cookie_path   / "/; httponly; secure; SameSite=None";
    proxy_set_header    X-Real-IP        $remote_addr;
    proxy_set_header    X-Forwarded-For  $remote_addr;
    proxy_set_header    X-Forwarded-Proto $scheme;
    proxy_set_header    Host $http_host;
    proxy_redirect      default;
  }
 
}
本站默认网盘访问密码:1166
本站默认网盘访问密码:1166
声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
Nginx安全配置
0
0
Eswlnk的头像
Eswlnk
一个有点倒霉的研究牲站长
赞赏
「运维教程」CentOS 7的FirewallD与iptables的区别
上一篇
「高危漏洞」宝塔面板 Nginx 挂马事件剖析以及相关的补救措施
下一篇

评论 (0)

请登录以参与评论
现在登录
    发表评论

猜你喜欢

  • 今日热点:伪Clash软件下载陷阱曝光,附防范建议
  • 「攻防对抗」利用 fastjson 原生反序列化与动态代理突破安全限制
  • 「攻防对抗」从上传漏洞到Getshell | 一次完整的渗透过程
  • 「日志记录」从零起步揭开路由器漏洞挖掘的面纱
  • 「攻防对抗」NSmartProxy流量特征的真实表现与应用
Eswlnk的头像

Eswlnk

一个有点倒霉的研究牲站长
1108
文章
319
评论
679
获赞

随便看看

体验新版本360网络空间测绘|因为看见,所以安全
2022-02-01 22:50:57
攻防实战:网站SQL注入攻击与猜解思路
2022-04-28 23:00:18
「攻防对抗」对 MacBook 翻盖模式进行逆向工程
2023-01-21 20:18:41

文章目录

专题展示

WordPress53

工程实践37

热门标签

360 AI API CDN java linux Nginx PDF PHP python SEO Windows WordPress 云服务器 云服务器知识 代码 免费 安全 安卓 工具 开发日志 微信 微软 手机 插件 攻防 攻防对抗 教程 日志 渗透分析 源码 漏洞 电脑 破解 系统 编程 网站优化 网络 网络安全 脚本 苹果 谷歌 软件 运维 逆向
  • 首页
  • 知识库
  • 地图
Copyright © 2023-2025 Eswlnk Blog. Designed by XiaoWu.
本站CDN由 壹盾安全 提供高防CDN安全防护服务
蜀ICP备20002650号-10
页面生成用时 0.854 秒   |  SQL查询 37 次
本站勉强运行:
友情链接: Eswlnk Blog 网站渗透 倦意博客 特资啦!个人资源分享站 祭夜博客 iBAAO壹宝头条
  • WordPress142
  • 网络安全64
  • 漏洞52
  • 软件52
  • 安全48
现在登录
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈