欢迎光临
我们一直在努力

腾讯云服务器https,nginx配置ssl证书实现https访问

因公司开发了内部使用的vue app, 为保证数据安全, 需要接口数据进行https加密传输, HTTPS实现数据加密需要有SSL证书的认证才可以, 目前SSL证书可以在腾讯云、阿里云等站点免费申请, 免费证书一般有效期为一年,到期可再续期。

1. 申请腾讯云免费SSL证书

登录腾讯云网站选择SSL证书产品

证书申请需要对域名所有权进行认证, 根据要求在域名管理中增加新的cname解析记录

域名解析记录配置完毕, 腾讯会自动进行验证,验证成功后,此解析记录即可删除。

认证成功后,根据需要,下载ssl证书即可。

我们选择的是Nginx证书,证书包括四个文件:

2. nginx部署SSL证书

在nginx目录下创建cert文件夹,将证书文件夹内后缀名为key和crt的文件拷贝进去;

我们用的是腾讯云服务器, 需要在云服务器的安全组规则中增加开放443端口的入站规则;

在centos7系统 firewall 防火墙开放443端口;

app接口服务发布在云服务器的内网地址172.17.0.16的8009端口;

在nginx中配置将内网8009端口的接口服务转发至https 443端口,以 api.mydomain.cn 举例说明:

server {

listen 443 ssl;

server_name api.mydomain.cn;

#请填写证书文件的相对路径或绝对路径

ssl_certificate "/etc/nginx/cert/api.mydomain.cn_bundle.crt";

#请填写私钥文件的相对路径或绝对路径

ssl_certificate_key "/etc/nginx/cert/api.mydomain.cn.key";

ssl_session_timeout 5m;

#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;

#请按照以下协议配置

ssl_protocols TLSv1.2 TLSv1.3;

ssl_prefer_server_ciphers on;

location / {

proxy_set_header Host $host;

proxy_set_header X-Real-Ip $remote_addr;

proxy_set_header X-Forwarded-For $remote_addr;

proxy_pass http://172.17.0.16:8009;

}

}

追加说明:

云服务器利用80和443端口发布信息需要进行ICP网站备案, SSL证书支持非443端口发布, 例如将发布端口修改为12343, 只需要将nginx配置文件的

server {

listen 443 ssl;

……

修改为

server {

listen 12343 ssl;

……

访问的url地址为 https://api.mydomain.cn:12343/

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。