Nginx部署ssl安全证书(腾讯云DV证书)

本文详细指导如何在腾讯云上获取并部署DV SSL证书,包括创建密钥文件夹、上传文件、配置Nginx以支持443端口HTTPS访问,并重定向HTTP流量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、部署SSL安全证书

1、1 获取腾讯云DV

从腾讯云上下载Nginx版本的证书,如下:
在这里插入图片描述

1、2 创建密钥文件夹

mkdir /etc/nginx/cert // 最好放在nginx文件夹里面

1、3把后缀为key和pem的文件上传到服务器上
rz -E 
1、4 配置SSL
server {
    listen 443 ssl; // 这里是新的写法
    server_name your-domain.com; // 你的域名
    # ssl on; // 这种已经不使用了,这么写会报警告,可以直接去掉采用第一行的写法
    root /xxx/xxx/html; // 前台文件存放文件夹,一般使用 Nginx 初始化的文件夹,当然也可以自己修改
    index index.html;// 上面配置的文件夹里面的index.html
    ssl_certificate  /xxx/cert/214292799730473.pem;// 改成你的证书的名字
    ssl_certificate_key /xxx/cert/214292799730473.key;// 你的证书的名字
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        index index.html index.htm;
    }
}
server {
    listen 80;
    server_name your-domain.com;// 你的域名
    rewrite ^(.*)$ https://$host:443$1 permanent;// 把http的域名请求转成https且转发到443端口

重新刷新配置

source nginx.conf
<think>好的,我现在需要帮助用户了解如何在RuoYi项目中部署SSL证书。根据用户提供的引用内容,我需要结合Spring Boot的SSL配置方法以及RuoYi项目的部署流程来给出步骤。 首先,用户提到参考引用[2],里面详细说明了Spring Boot 2.X项目配置SSL证书的步骤,包括修改application.yml文件,指定证书路径、密码和类型。而RuoYi是一个基于Spring Boot的后端框架,所以这些步骤应该同样适用。需要确认的是RuoYi项目的配置文件位置,通常是application.yml或者application.properties,用户需要在这里添加SSL相关的配置。 接下来,引用[3]提到RuoYi项目的部署涉及前后端分离,可能需要使用Nginx。如果用户选择在Nginx上配置SSL,那么步骤会不同,如引用[1]中的Nginx配置示例,需要指定ssl_certificate和ssl_certificate_key的路径。这时候需要用户明确是要在Spring Boot应用内配置SSL,还是在Nginx反向代理层配置,或者两者都做。 用户的问题可能希望两种方法都覆盖,所以应该分情况说明。首先讲解Spring Boot内嵌Tomcat的配置方法,然后讲解Nginx反向代理的配置方法。此外,需要提醒用户证书格式的转换,因为引用[2]中使用的是JKS格式,而引用[1]中的Nginx使用的是PEM和KEY文件,可能需要用OpenSSL进行转换。 另外,需要注意RuoYi项目的前后端分离结构。前端可能单独部署,比如使用Nginx,而后端Spring Boot应用可能通过jar包运行。这种情况下,SSL配置可能在前端Nginx处理HTTPS,后端依然使用HTTP,或者后端也配置SSL。需要说明这两种场景的不同配置方法。 最后,要确保步骤清晰,包括证书获取、格式转换、配置文件修改、重启服务等关键步骤。同时,生成的相关问题需要覆盖常见疑问,比如证书类型区别、HTTP重定向、多域名配置等,帮助用户进一步理解。</think>### RuoYi项目SSL证书部署方法 在RuoYi(若依)框架中部署SSL证书,可通过**Spring Boot内嵌服务器配置**或**Nginx反向代理配置**两种方式实现。以下是具体操作步骤: --- #### 一、Spring Boot内嵌Tomcat配置SSL(适合直接对外服务) 1. **证书格式转换** RuoYi基于Spring Boot,需使用JKS或PKCS12格式证书。若已有PEM格式证书,用OpenSSL转换: ```bash openssl pkcs12 -export -in cert.pem -inkey key.key -out ruoyi.p12 -name "ruoyi_ssl" ``` 将生成的`ruoyi.p12`文件放入`src/main/resources`目录。 2. **修改application.yml配置** 在配置文件中添加SSL参数: ```yaml server: port: 443 # HTTPS标准端口 ssl: enabled: true key-store: classpath:ruoyi.p12 key-store-password: 你的证书密码 key-store-type: PKCS12 key-alias: ruoyi_ssl ``` 通过`java -jar ruoyi-admin.jar`启动即可通过`https://域名`访问[^2]。 --- #### 二、Nginx反向代理配置SSL(推荐生产环境) 1. **上传证书文件** 将PEM格式证书(`domain.pem`和`domain.key`)上传至Nginx服务器的`/etc/nginx/cert/`目录。 2. **修改Nginx配置** 在`nginx.conf`中配置HTTPS服务: ```nginx server { listen 443 ssl; server_name your-domain.com; ssl_certificate /etc/nginx/cert/domain.pem; ssl_certificate_key /etc/nginx/cert/domain.key; ssl_session_timeout 5m; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!aNULL:!MD5; location / { proxy_pass http://127.0.0.1:8080; # 转发到RuoYi的HTTP端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } server { listen 80; server_name your-domain.com; return 301 https://$host$request_uri; # HTTP强制跳转HTTPS } ``` 执行`nginx -s reload`重启服务[^1]。 --- #### 三、混合部署模式(前后端分离场景) 1. **前端Nginx配置SSL** 前端项目打包后通过Nginx部署,配置同上文Nginx部分。 2. **后端保持HTTP协议** Spring Boot应用无需SSL配置,只需通过内网端口(如8080)与前端通信。 --- #### 关键注意事项 1. 证书有效期需定期更新 2. 测试时可用`curl -k https://域名`忽略证书验证 3. 阿里云/腾讯云等平台可申请免费DV证书 4. 部署后使用[SSL Labs测试](https://www.ssllabs.com/ssltest/)检查安全性
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SoftwareDevOps

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值