Introduction & Overview
下载/购买/手动创建( Let’s Encrypt)-对应域名下的CA证书,在一台安装好Nginx的服务器上配置https-server模块。
�Prerequisite
CVM主机
域名
CA证书
OperateFlow
-
安装Nginx
--with-http_ssl_module --with-http_gzip_static_module --with-pcre --with-debug --conf-path=/etc/nginx/nginx.conf --conf-path=/etc/nginx/nginx.conf --sbin-path=/usr/sbin/nginx --pid-path=/var/log/nginx/nginx.pid --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --add-module=../nginx-rtmp-module-dev
- 注意编译安装带http_ssl_module模块
-
获取域名下的CA证书
这里采用腾讯云上购买的域名,然后通过腾讯云控制台SSL证书页面申请免费证书(有效一年),如下图所示:
点击右下方的下载按钮可以现在证书,是一个zip文件里头包含Nginx配置时需要的证书和Key。
文件格式:
1_www.**.com_bundle.crt || 2_www.**.com.key
下载的zip包包含多种服务器下的对应证书:Apache、IIS、Nginx、Tomcat。
Or make it on your own - certbot -
上传证书到Nginx所在服务器
scp -r ./* nginx-host:/usr/local/nginx/addon/ca/
用shell命令scp上传证书文件到指定可访问目录,同时设置文件权限可读。
-
配置Nginx的https-ssl模块
http { ...... keepalive_timeout 75; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; server { listen 443 ssl; server_name www.*.com; ssl_certificate /usr/local/nginx/addon/ca/1_www.*.com_bundle.crt; ssl_certificate_key /usr/local/nginx/addon/ca/2_www.*.com.key } }
关键在listen、ssl_certificate、ssl_certificate_key指令上;其中保持连接和缓存指令主要用于加速访问,其他配置信息可参考:http://nginx.org/en/docs/http/configuring_https_servers.html。
-
重启Nginx生效配置
重启:sudo service nginx restart
Test
浏览器访问:https://*.com/
Grade:https://www.ssllabs.com/ssltest/](https://www.ssllabs.com/ssltest/
☑️可以看到浏览器上的一个小锁🔒