当前位置: 首页 > article >正文

在Linux中对Nginx进行安全加固

准备工作

在IP为x.x.x.x的服务器上安装nginx,确保Linux系统为nginx环境。

检查nginx是否配置nginx账号锁定策略

配置nginx账号锁定策略,降低被攻击概率。

第一步,查看nginx的锁定状态

命令:passwd -S nginx

若结果出现“Password locked”,则说明锁定成功。

若结果没有出现“Password locked”,则说明没有锁定。

这时可以通过执行命令“passwd -l nginx”来进行锁定。

第二步,对nginx安全加固建议

1)nginx服务使用非root用户(如nginx,nobody)启动。

# 创建nginx运行使用的用户nginx

命令:useradd -s /sbin/nologin -M nginx

(nginx服务的默认用户是nobody,为了安全更改为nginx,在配置文件中启用user nginx nginx;)

2)确保启动用户的状态为锁定状态,可执行命令“passwd -l <nginx启动用户>”(如passwd -l nginx)来锁定nginx服务的启动用户。

# 锁定nginx服务的启动用户

格式:passwd -l <nginx启动用户>

命令:passwd -l nginx

# 查看nginx的锁定状态

格式:passwd -S <nginx启动用户>

命令:passwd -S nginx

若结果出现“Password locked”,则说明锁定成功。

3)在配置文件nginx.conf中,把nginx启动用户修改为nginx或nobody。(如user nginx;)

注意:操作时建议做好记录或备份必须使用命令“service nginx reload”重启nginx

检查nginx服务启动账号

修改nginx服务启动账号,降低被攻击概率。

第一步,对nginx安全加固建议

在配置文件nginx.conf中,把nginx启动用户修改为nginx或nobody。(如user nginx;)

注意:操作时建议做好记录或备份必须使用命令“service nginx reload”重启nginx

nginx后端服务指定的Header隐藏状态

隐藏nginx后端服务指定Header(如X-Powered-By)。

第一步,对nginx安全加固建议

在配置文件nginx.conf(或主配置文件中的inlude文件)中,在http节点下配置proxy_hide_header项,增加或修改为

proxy_hide_header X-Powered-By;

proxy_hide_header Server;

注意:操作时建议做好记录或备份必须使用命令“service nginx reload”重启nginx

任意文件读取入侵防范

缺少斜杠可能导致目录穿越。

第一步,对nginx安全加固建议

在配置文件nginx.conf中,把“location /path”改为“location /path/”,以/结尾;把“root /;”改为“root /path/;”,以/结尾。

配置文件nginx.conf修改如下:

location /path/ {

     root /path/;

}

注意:操作时建议做好记录或备份必须使用命令“service nginx reload”重启nginx

针对Nginx SSL协议进行安全加固服务配置

Nginx SSL协议采用TLSv1.2的加密策略来进行安全加固。

第一步,对nginx安全加固建议

1)在配置文件nginx.conf(或主配置文件中的inlude文件)中,在server节点下配置ssl_protocols项,增加或修改为

server {

     ...

     ssl_protocols TLSv1.2;

     ...

}

注意:操作时建议做好记录或备份必须使用命令“service nginx reload”重启nginx

2)确认nginx是否支持OpenSSL。

命令:nginx -V

若结果显示“built with OpenSSL”,则说明nginx支持OpenSSL。

反之,则需要重新编译nginx。


http://www.kler.cn/a/226589.html

相关文章:

  • redis redisson报错 Unsupported protocol问题原因和解决方案
  • PDF中公式转word
  • 双指针练习题移动零
  • 1.27马尔科夫链,抽样蒙特卡洛模拟(逆转化方法,接受拒绝矩阵),马尔科夫链蒙特卡洛MCMC,隐马尔科夫(HMM(V算法剪枝优化),NLP)
  • [嵌入式系统-6]:龙芯1B 开发学习套件 -3-软件层次架构
  • 顺序表:数据结构的建筑积木
  • 【lesson8】高并发内存池Central Cache层释放内存的实现
  • Vue发送Get 和 Post 请求以及获取数据
  • 蓝桥杯---垒骰子
  • 如何快速记忆小鹤双拼键位图?
  • 对于软件测试的认识和了解
  • 【自然语言处理】P2 PyTorch 基础 - 张量
  • 02链表:1、两数之和
  • Dockerfile构建Nginx访问说明
  • 一文掌握单基因GSEA富集分析
  • 【Go】微服务架构下实现etcd服务注册与服务发现
  • VUE项目导出excel
  • Jmeter接口自动化测试(提取CSV文件遍历数据)
  • 基于springboot实现二次元商品购物系统项目【项目源码+论文说明】计算机毕业设计
  • 第二证券:苹果Vision Pro出货在即 固态电池产业化前景渐明