怎么在Nginx中配置SSL自签名证书
发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,本篇文章给大家分享的是有关怎么在Nginx中配置SSL自签名证书,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。生成自签名SSL证书生成R
千家信息网最后更新 2024年12月12日怎么在Nginx中配置SSL自签名证书
本篇文章给大家分享的是有关怎么在Nginx中配置SSL自签名证书,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
生成自签名SSL证书
生成RSA密钥(过程需要设置一个密码,记住这个密码)
$ openssl genrsa -des3 -out domain.key 1024
拷贝一个不需要输入密码的密钥文件
$ openssl rsa -in domain.key -out domain_nopass.key
生成一个证书请求
$ openssl req -new -key domain.key -out domain.csr
这里会提示输入国家,地区组织,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 []: # 一个可选公司名称,可直接回车
输入完这些就会生成一个domain.csr文件,提交给ssl提供商的时候就是这个csr文件.当然这里并没有向任何证书提供商申请,而是自己签发证书.
使用上面的密钥和CSR对证书签名
$ openssl x509 -req -days 365 -in domain.csr -signkey domain.key -out domain.crt
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.2 ssl_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; # 自动跳转到HTTPS if ($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自签名证书,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
配置
证书
文件
密码
生成
名称
地区
密钥
输入
相同
信息
国家
域名
就是
提供商
更多
知识
端口
篇文章
网站
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库中什么是关系规则
go 服务器部署
数据库水平扩展
中小学开展网络安全教育情况
sql server服务器
软件开发危机包括哪些
ms网络技术公司
青海省超级服务器虚拟主机
更新苹果手机软件显示连接服务器
服务器怎么打开磁盘管理器
网络技术人员怀疑无效的
株洲软件开发培训去哪里
软件开发项目的可行性
智慧农贸软件开发者
有孚服务器
神经网络技术分类
为什么电话会显示无法连接服务器
南京鹏的软件开发有限公司
存储网络技术概括
呼和浩特网络安全技术培训
上海房价数据库
疑似病毒数据库
数据库mysql降序怎么
软件开发危机包括哪些
杭州真义互联网科技
软件开发主要算法
证券软件开发人员可以炒股吗
棋牌软件开发定制游戏
msde数据库 win7
数据库管理 excel