nginx1.8.1配置SSL使用HTTPS及access.log配置记录

简介: nginx1.8.1配置SSL使用HTTPS及access.log配置记录

一、在Centos7.4上构建私有CA并颁发证书:
要想使用SSL对http协议进行数据加密,必须有一个CA颁发的k证书,以下步骤实现在Centos7.4上给自己颁发私有证书:
1、在/etc/nginx/创建ssl目录:
15
并使用(umask 077;openssl genrsa -out ssl/nginx.key 2048)命令创建一个私钥,umask 077保证仅属主可读写.
2、创建证书请求
openssl req -new -key ssl/nginx.key -out nginx.csr -days 365
17
依次填入的信息为国家、省名、城市名、公司名、部门名称、网站名称(这个最好填入跟你的网站一样的域名,如www.aliyun.com)、后三项可敲回车跳过.
3、构建私有CA机构:
进入/etc/pki/CA: cd /etc/pki/CA目录
执行(umask 077;openssl genrsa -out private/ca.pem 2048)
18
创建自签署证书:
openssl req -new -x509 -key private/ca.pem -out cacert.pem -days 365
19
4、在/etc/pki/CA/目录下创建一个index.txt: touch index.txt
echo 01 >serial
5、使用创建好的私有CA签署生成nginx下SSL的server证书
openssl ca -in /etc/nginx/ssl/nginx.csr -out /etc/nginx/ssl/nginx.crt -days 365
20

6、修改/etc/nginx/conf.d/example_ssl.conf配置文件:
21
其中server_name最好与ssl证书定义的域名一致
ssl_certificate /etc/nginx/ssl/nginx.crt;###当前虚拟主机使用的pem格式的证书文件
ssl_certificate_key /etc/nginx/ssl/nginx.key;###ssl证书文件中的公钥配对的私钥文件路径
ssl_session_cache shared:SSL:1m;###指明SSL会话的缓存机制为shared,表示缓存有所有的worker进程共享,每1m空间可缓存约4000个会话,可适量调大该值
ssl_session_timeout 5m;###ssl会话超时时长
ssl_ciphers HIGH:!aNULL:!MD5;###ssl会话使用的加密算法
ssl_prefer_server_ciphers on;###优先使用服务器端的加密算法
7、重载配置进行测试nginx -s reload:
使用https://ip 访问测试,提示
22
说明已经成功使用ssl加密http协议
8、将之前的http协议都重定向至https会话:
只需要在之前定义的http server{}上下文中添加:
rewrite ^(.*)$ https://$server_name$1 permanent; ###表示将匹配到的http请求均重定向至https

二、nginx的access_log模块配置记录
1、open_log_file_cache max=1000 inactive=20s valid=1m;

日志写入的缓存设置,max最大缓存条目,inactive非活动时间时长,valid缓存条目有效性检查频率

2、access_log /var/log/nginx/access.log main buffer=16k flush=120s;####buffer缓冲区大小为16k,到达此值后才有写入磁盘中,可以优化磁盘io. flush表示每隔120秒会去同步缓冲区中的日志到磁盘中

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
19天前
|
移动开发 前端开发 JavaScript
前端vue2、vue3去掉url路由“ # ”号——nginx配置(一)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
52 0
|
19天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
54 0
|
4天前
|
应用服务中间件 nginx
nginx配置集群轮训策略
nginx配置集群轮训策略
12 0
|
5天前
|
安全 网络协议 应用服务中间件
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
|
12天前
|
应用服务中间件 PHP nginx
php如何实现检测nginx配置的正确性
请确保在执行此操作时,PHP有足够的权限来执行Nginx命令和访问Nginx配置文件。另外,将上述代码嵌入到您的应用程序中时,要注意安全性,以防止潜在的命令注入攻击。
52 3
|
14天前
|
安全 Go 网络安全
【Go语言专栏】Go语言中的HTTPS与TLS配置
【4月更文挑战第30天】本文介绍了在Go语言中配置HTTPS服务器和处理TLS证书的方法。首先,TLS证书由证书颁发机构(CA)颁发,用于验证服务器身份和加密通信。接着,展示了如何使用`crypto/tls`包加载自签名证书启动HTTPS服务器。在生产环境中,通常使用CA签名的证书,这需要获取证书链和私钥。为了自动续期证书,可以利用Go的`acme/autocert`包与ACME服务交互。掌握这些技能对于确保Web服务的安全至关重要。
|
15天前
|
Web App开发 前端开发 Java
SpringBoot配置HTTPS及开发调试
在实际开发过程中,如果后端需要启用https访问,通常项目启动后配置nginx代理再配置https,前端调用时高版本的chrome还会因为证书未信任导致调用失败,通过摸索整理一套开发调试下的https方案,特此分享
20 0
SpringBoot配置HTTPS及开发调试
|
应用服务中间件 PHP nginx
nginx log 错误502 upstream sent too big header while reading response header from upstream
cookies的值超出了范围我是说 看看了一下日志 错误502 upstream sent too big header while reading response header from upstream   sudo gedit /var/log/nginx/error.
5270 0
|
19天前
|
JavaScript 前端开发 应用服务中间件
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
24 0
|
1月前
|
安全 应用服务中间件 Linux
linux nginx的配置总结
linux nginx的配置总结
19 0