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