Nginx服务器申请及配置免费SSL证书
免费SSL证书申请
- 背景:
我的情况是这样,域名解析是华为云的,然后免费证书在腾讯云申请。但是大致的配置流程都是一样的
在腾讯云平台申请免费的SSL证明(目前有效期是90天),申请步骤如下
- 主要步骤说明
- 申请免费SSL证书
- 根据申请时说明配置解析规则到域名解析服务
- 在证书申请端验证域名解析
- 等待证书签发
- 下载证书, 并将证书部署到服务器
1.申请免费证书
- 在腾讯云的搜索
SSL证书
, 然后出现如下界面,电机申请免费证书(新的政策是免费证书·有效期90天·)
- 输入需要申请证书的
域名
,和自己的邮箱
- 提交申请,出现如下界面
2. 验证域名
- 需要想到对应的域名解析服务平台进行操作(我这里是华为云),进入域名界面
- 找到证书对应的域名,点击
管理解析
,找到解析类型是CNAME
的记录,编辑记录
- 根据证书申请步骤第三步的提示,将对应的“主机记录”和“记录值”填入对应的位置。
- 回到证书申请页面,点击
验证域名
(有可能需要等待个几分钟才可以,时长不固定,和域名解析缓存
有关) - 提示验证通过, 则回到证书列表页
3. 下载证书
- 等待证书状态转变成
已签发
,则可以下载证书:
- 点击
下载
,出现如下界面(我这里证书是配置到nginx, 所以选择nginx)
4. 安装证书到nginx服务器
- 解压缩下载的证书文件,上传到你的
nginx服务
所在的服务器, 放到某个目录,比如/usr/local/nginx/ssl
- 在nginx对应的服务节点配置证书, 示例如下:
server {listen 443 ssl;access_log /data/logs/nginx/access.log;error_log /data/logs/nginx/error.log;ssl_certificate "/usr/local/nginx/ssl/xxx.crt";ssl_certificate_key "/usr/local/nginx/ssl/xxx.key";ssl_session_cache shared:SSL:1m;ssl_session_timeout 60m;ssl_prefer_server_ciphers on;server_name www.xxx.com;client_max_body_size 1024m;location / {root /data/www/;proxy_set_header HOST $host;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://127.0.0.1:8080/;}}