怎么在Nginx中配置SSL自签名证书
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章给大家分享的是有关怎么在Nginx中配置SSL自签名证书,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。生成自签名SSL证书生成R
千家信息网最后更新 2026年11月02日怎么在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安全错误
数据库的锁怎样保障安全
咖啡
耶加雪菲
百单网互联网科技有限公司
互联网科技巨头监管
智能科技公司是互联网公司吗
互联网未来科技
朗涯互联网科技
云电互联网科技
丰台科技园 互联网
互联网金融监管科技
互联网科技类展会
联恩商钥互联网科技有限公司
互联网教育科技公司vipkid
湖北码尼互联网科技有限公司电话
阿大互联网科技有限公司
成都互联网科技公司工作好不好
广州新华互联网科技学校电竞方面
沐思想互联网科技有限公司
福建互联网展示科技馆设计
广州全民伙伴互联网科技有限公司
有格互联网科技
科技企业和互联网企业
狮子座互联网科技培训
成都玖崟互联网科技有限公司乐商圈怎么样
字节跳动和互联网科技
互联网媒体平台算高科技产业
银川新华互联网科技学校联系电话
互联网科技人工智能实验室
山东大美朱楼互联网科技有限公司
互联网科技大会大佬