nginx基本安全配置

配置ssl证书

listen 443 ssl;
ssl_certificate /usr/local/nginx/conf/server.crt;
ssl_certificate_key /usr/local/nginx/conf/server.key;

关闭目录浏览功能

http {
autoindex off;
}

隐藏版本号

http {
server_tokens off;
}

请求头部和连接时间配置

http {
#设置客户端请求头读取超时时间,超过这个时间还没有发送任何数据,Nginx将返回“Request time out(408)”错误
client_header_timeout 15;
#设置客户端请求主体读取超时时间,超过这个时间还没有发送任何数据,Nginx将返回“Request time out(408)”错误
client_body_timeout 15;
#上传文件大小限制
client_max_body_size 100m;
#指定响应客户端的超时时间。这个超过仅限于两个连接活动之间的时间,如果超过这个时间,客户端没有任何活动,Nginx将会关闭连接。
send_timeout 600;
#设置客户端连接保持会话的超时时间,超过这个时间,服务器会关闭该连接。
keepalive_timeout 60;
}

ip访问控制

#设置网站目录的访问权限
location /download {
allow 192.168.1.1/24;
allow 120.20.93.79;
deny all;
}

nginx高级安全配置

访问权限控制

server {
...
auth_basic "website login";
auth_basic_user_file conf/.htpasswd;
}

连接数和请求速率控制

limit_req_zone $binary_remote_addr zone=allips:10m rate=20r/s;
limit_conn_zone ip_zone $binary_remote_addr 10m;
......
location {
... #限制每ip每秒不超过20个请求,漏桶数burst为5
#brust的意思就是当每秒超过20个请求时,5个以内的请求会被延迟访问,超过5个的直接返回503
#nodelay,设置该选项,将严格使用平均速率限制请求数,超过请求频率的直接返回503
limit_req zone=allips burst=5 nodelay;
limit_conn ip_zone 20; #连接数限制
limit_rate 500k;    
... }

最新文章

  1. Ubuntu下关闭apache和mysql的开机启动
  2. paip.输入法编程---词频顺序order by py
  3. [ZETCODE]wxWidgets教程一:介紹
  4. php中session的运行机制
  5. Spring MVC之LocaleResolver(解析用户区域)
  6. 网易云课堂_程序设计入门-C语言_第二周:判断_2信号报告
  7. Python3.5 在Ubuntu16.04上无法画图的解决方案
  8. 开涛spring3(12.4) - 零配置 之 12.4 基于Java类定义Bean配置元数据
  9. Tomcat启动一闪而过
  10. 将你的Python Web程序部署到Ubuntu服务器上
  11. hiveql笔记(一)
  12. asp.net core系列 25 EF模型配置(隐藏属性)
  13. Java Spring Boot VS .NetCore (三)Ioc容器处理
  14. 第74节:Java中的Cookie和Session
  15. 高度可配置的 Linux 内存守护程序 Nohang!
  16. 自定义django-admin命令
  17. Mysql 锁机制和事务
  18. MetaMask/json-rpc-engine
  19. PMP备考指南之第二章:项目运作环境
  20. Daily Scrum (2015/11/2)

热门文章

  1. 四十一.redis主从复制 RDB/AOF持久化 数据类型
  2. P1613 跑路——倍增思想,floyd
  3. expect 实例
  4. 怎么样修改小程序分享的title/onShareAppMessage
  5. [mysql] Mysql数据分组GROUP BY 和HAVING,与WHERE组合使用
  6. sql查询表的所有字段和表字段对应的类型
  7. Linux shell脚本 (十二)case语句
  8. 使用oid2name列出数据库和对应的oid
  9. LoadRunner11下载、安装与破解
  10. 如何在linux中测试i2c slave模式驱动的功能?