nginx安全配置小技巧

1.版本:应该从nginx官方提供的下载页面下载最新稳定版本,注意不要下载beta版本。nginx官网下载地址为:http://nginx.org/en/download.html

2.消除目录浏览漏洞:nginx默认不允许目录浏览,请检查目录浏览的相关配置,确保没有目录浏览漏洞:检查各个配置文件,确保autoindex的配置为off。

autoindex off

3.开启访问日志:开启日志有助于在发生安全事件后回溯分析事件的原因和定位攻击者。默认情况下,nginx已经开启日志访问功能。

access_log /backup/nginx_logs/access.log combined;

4.目录安全配置:nginx应该严格保证用户上传文件的目录没有执行脚本的权限,如取消upload目录执行php权限可以在配置文件中设置:

location ~* ^/upload/ .*\.(php|php5)$ { deny all; }

5.管理目录安全配置:对于管理目录,需要做到只允许合法ip可以访问,nginx限制白名单ip访问的配置日下:

location ~ ^/admin/ {allow 192.168.1.0/24;deny all;}

管理目录建议启用密码认证,密码认证依靠Web应用自身的认证机制。如果Web应用无认证机制,可启用nginx的密码认证机制,配置样例如下:

location ^~ /soft/ { location ~ .*\.(php|php5)?$ { fastcgi_pass unix:/tmp/php-cgi.sock;#这里按照你自己的设置 fastcgi_index index.php; include fcgi.conf; }auth_basic "Authorized users only";auth_basic_user_file 这里写前面脚本返回的文件路径;}

6.删除默认页面:删除nginx默认首页index.html,业务可以自行创建默认首页代替之。Nginx存在默认目录:

删除如下配置信息。

location /doc { root /usr/share; autoindex on; allow 127.0.0.1; deny all; } location /images { root /usr/share; autoindex off; }

删除首页index.html后,新建其他首页内容不允许出现如下首页内容:

原文发布于微信公众号 - 腾讯云安全(TencentCloudSecurity)

原文发表时间:2014-07-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java编程技术

Spring之配置项管理小结

正如webx框架文档里面所说,在一个应用中我们总是会遇到一些参数,例如:数据库服务器IP地址、端口、用户名;这些参数有一个共性,那就是:它们和应用的逻辑无关,只...

751
来自专栏黑泽君的专栏

Java中不同包下类与类之间的访问

Java中不同包下类与类之间的访问 (1)我们多次使用一个带包的类,都需要加包的全路径,非常的麻烦,这个时候,Java就提供了导包的功能,提供了一个关键字im...

3602
来自专栏DeveWork

设置你的Gravatar头像的方法

Gravatar是Globally Recognized Avatar的缩写,是gravatar推出的一项服务,意为“全球公用的头像”。如果在Gravatar的...

2567
来自专栏地方网络工作室的专栏

shell命令行,一键创建 python 模板文件脚本

shell命令行,一键创建 python 模板文件脚本 写 python 文件时,每个文件开头都必须注明版本和编码。每次我 touch 文件之后粘贴这两句话让我...

2527
来自专栏葡萄城控件技术团队

如何在ASP.NET中生成HTML5离线Web应用

传统的Web应用程序有一个很大的症结是当用户的网络连接不好时,应用会加载失败,为了 解决这一问题,HTML5中引入了Web的离线工作的功能。离线功能使得Web应...

2106
来自专栏一个会写诗的程序员的博客

Refused to execute script from 'http://127.0.0.1:8004/login' because its MIME type ('text/html') ...

Refused to execute script from 'http://127.0.0.1:8004/login' because its MIME ty...

1022
来自专栏各种机器学习基础算法

ubuntu上安装php7.0+nginx+mysql

安装Nginx sudo apt install nginx sudo service nginx start 然后在其他电脑浏览器中输入该主机的ip地址进行访...

4188
来自专栏lgp20151222

MySQL中UTF8编码的数据在cmd下乱码

其实,原因是cmd用gbk的格式来显示数据,那么我们只需要将utf-8存储的数据用gbk的格式输出到cmd即可。

974
来自专栏技术记录

解决openssh漏洞,升级openssh版本

关于解决漏洞的问题我就不详说了,主要就是升级版本。这里我们就直接简单记录下步骤: 1、升级 使用root用户登录系统进入到/home/guankong ,上传o...

3838
来自专栏carven

cors跨域探讨

前端跨域方案很多,jsonp、iframe等等,但是个人觉得,最正宗,最无损的跨域方式还是CORS。 CORS(Cross-origin resource sh...

1540

扫码关注云+社区