Nginx配置ssl自签名证书
1、生成ssl自签名证书
1)生成RSA密钥(过程需要设置一个密码,记住这个密码)
$ openssl genrsa -des3 -out domain.key 1024
2)拷贝一个不需要输入密码的密钥文件
$ openssl rsa -in domain.key -out domain_nopass.key
3)生成一个证书请求
$ openssl req -new -key domain.key -out domain.csr
4)这里会提示输入国家,地区组织,email等信息.最重要的一个是"common name",需要与网站域名相同.
Enter pass phrase for domain.key: # 之前设置的密码
-----
Country Name (2 letter code) [XX]:CN # 国家
State or Province Name (full name) []:Jilin # 地区或省份
Locality Name (eg, city) [Default City]:Changchun # 地区局部名
Organization Name (eg, company) [Default Company Ltd]:Python # 机构名称
Organizational Unit Name (eg, section) []:Python # 组织单位名称
Common Name (eg, your name or your server's hostname) []:domain.com # 网站域名
Email Address []:123@domain.com # 邮箱
A challenge password []: # 私钥保护密码,可直接回车
An optional company name []: # 一个可选公司名称,可直接回车
5)输入完这些就会生成一个domain.csr文件,提交给ssl提供商的时候就是这个csr文件.当然这里并没有向任何证书提供商申请,而是自己签发证书.
使用上面的密钥和CSR对证书签名
$ openssl x509 -req -days 365 -in domain.csr -signkey domain.key -out domain.crt
2、Nginx下ssl配置方法
检测nginx是否支持SSL:
$ nginx -V
如果有显示-with-http_ssl_module
表示已编译openssl,支持安装ssl.
如果没有,请重新编译安装nginx
$ ./ configure --with-http_ssl_module --with-http_stub_status_module
$ make & make install
配置文件:
server {listen 80;listen 443 ssl; # 监听443端口, 开启ssl(必须)server_name domain.com;# ssl on; # 不建议使用! 该指令与listen中ssl参数功能相同.# 引用ssl证书(必须,如果放在nginx/conf/ssl下可以用相对路径,其他位置必须用绝对路径)ssl_certificate /home/user/domain.com/conf/ssl/domain.crt;ssl_certificate_key /home/user/domain.com/conf/ssl/domain_nopass.key;# 协议优化(可选,优化https协议,增强安全性)ssl_protocols TLSv1 TLSv1.1 TLSv1.2ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;ssl_session_cache shared:SSL:10m;ssl_session_timeout 10m;# 自动跳转到HTTPSif ($server_port = 80) {rewrite ^(.*)$ https://$host$1 permanent;}# 其他配置信息...
}
配置完成后检查niginx配置文件是否可用:
$ nginx -t # 检查nginx配置文件
successful后重新加载配置文件使配置生效:
$ nginx -s reload
注:记得开启防火墙的443端口 firewall-cmd --zone=public --add_port=443/tcp permanent
注:我使用的nginx+uwsgi部署,这种情况还需要重启下uwsgi,否则无法访问 uwsgi --reload ./tmp/uwsgi.pid
Nginx配置ssl自签名证书相关推荐
- windows下nginx配置OpenSSL自签名证书
版本 nginx:1.16.1 安装git windos下可以安装git工具后,自带openssl工具. 生成证书的申请文件和私钥文件 openssl req -nodes -newkey rsa:1 ...
- nginx配置ssl双向证书
CA根证书制作 # 创建CA私钥 openssl genrsa -out ca.key 2048#制作CA根证书(公钥) openssl req -new -x509 -days 3650 -key ...
- Nginx 配置 SSL 证书 + HTTPS 站点小记
今天给几个站点配置了认证的 ssl 证书,但是苦于自己技术不过关,或是知识不足,导致还有那么一小点 Bug 的出现,这里就我配置 HTTPS 站点的经验来总结一下吧. 一.什么是 SSL 证书,什么是 ...
- 个人站点配置免费HTTPS证书、nginx配置ssl证书、阿里云盾和站长之家两种
原文链接:https://www.aiprose.com/blog/20 相信大家都想让自己的站点支持https,今天就给大家介绍如何在个人站点中使用https,并使用nginx配置ssl证书.我们可 ...
- Nginx配置SSL证书(CentOS环境),实现https请求
目录 一.Nginx配置SSL 1.证书申请 二.配置SSL 2.1 证书上传 2.2 HTTPS server配置 2.2.3 配置转发 三.配置问题 四.配置示例 1.nginx.conf配置SS ...
- Nginx 配置ssl证书 windows
最近在做小程序开发时,发现小程序发布到微信公众平台后,必须通过https + 域名的请求方式访问公网服务器(本地开发测试可直接用 本机ip或localhost 进行访问,在小程序开发工具中勾选不校验合 ...
- windows配置NGINX、NGINX配置SSL证书通过HTTPS访问、使用HTTPS通过NGINX代理访问服务器端项目
1.windows配置nginx 1)在nginx官网下载稳定版nginx,nginx官网:http://nginx.org/en/download.html 2)解压文件,注:存放目录最好不要带有中 ...
- Nginx 配置 SSL 及 HTTPS 协议通信过程
一.前言 基础知识 1.1 公钥密码体制(public-key cryptography) 公钥密码体制分为三个部分,公钥.私钥.加密解密算法,它的加密解密过程如下: 加密:通过加密算法和公钥对内容( ...
- Nginx配置SSL,提示您的连接不是私密连接解决方案
今天利用Nginx配置SSL安全证书后,访问时提示你的连接不是私密连接: Nginx如何配置SSL安全证书请看:https://blog.csdn.net/weixin_44427181/articl ...
- ssms没有弹出服务器验证_Nginx服务器负载均衡及生成ssl密钥对、Nginx配置ssl操作示例...
概述 当用户访问nginx定制好的域名时,nginx通过转发到几台真实的站点,通过upstream实现 [root@centos7 vhost]# vim /usr/local/nginx/conf/ ...
最新文章
- 【Java面试题】54 去掉一个Vector集合中重复的元素
- Xcode的一些控制台命令
- JavaScript基础学习之运算符(三)
- 整机压力测试_加湿器防水检测仪防水测试与气密性检测是怎么做的
- Windows Server 2008设置远程桌面连接的最大数量
- 七、MySQL DDL数据定义语言 学习笔记(库和表的创建、修改、删除详解 + 强化复习)
- jmeter压测前清理内存
- scrapy.response
- 本博客停止更新,后续用博客园。
- ibernate 配置数据库方言
- GCC的__attribute__ ((constructor))和__attribute__ ((destructor))
- modbus串口调试工具_用modscan测试modbus协议离散仪表数据方法
- 绘制自己组合的k线图_史上最全K线图大全:搞懂70种K线组合形态,轻松低买高卖不踏空...
- php报修小程序,微信小程序报修管理系统
- 三相PWM整流器Simulink仿真
- 舒尔特方格训练注意力游戏
- 在matlab中如何求偏导数,求解 PDE 并计算偏导数
- onenote标注pdf笔记_你们怎么用onenote做读书笔记呢?
- Redis数据结构(一)SDS
- Extraneous non-props attributes (ref_key) were passed to component but could not be automatically