1.下载证书
在ssl证书管理界面下载对应于Nginx的证书。
下载的Nginx证书压缩文件解压后包含:
- .pem:证书文件。PEM文件的扩展名为CRT格式。
- .key:证书的密钥文件。申请证书时如果未选择自动创建CRS,则下载的证书文件压缩包中不会包含.key文件,需要您将自己手动常见的私钥文件拷贝到cert目录下。
2.更改nginx设置
在nginx安装目录下新建cert目录存储nginx证书
cd usr/local/nginx/conf
mkdir cert
更改nginx.conf设置vi nginx.conf
找到server块,更改并加入以下内容:
server{
listen 80;
server_name localhost; #localhost修改为证书绑定的域名
rewrite ^(.*)$ https://${server_name}$1 permanent; #设置http自动转发https
}server{
listen 443 ssl;#设置SSL功能
server_name localhost; #localhost修改为证书绑定的域名
root html;
index index.html index.htm;
ssl_certificate cert/xxxx.pem; #证书的文件名
ssl_certificate_key cert/domain name.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;
……..
3.重新编译含有ssl配置的nginx
进入到nginx解压文件夹下
./configure –with-http_ssl_module
如果报错./configure: error: SSL modules require the OpenSSL library说明openssl未安装,安装:
#检查安装
yum list installed | grep openssl
#安装
yum install -y openssl openssl-devel
然后编译并替换原nginx
#编译
make
#备份原nginx
cp 解压目录下/objs/nginx /usr/local/nginx/sbin/nginx.bak
#停止nginx服务
ps aux | grep nginx
kill xxxx #上一条命令找到的进程号
#更新nginx
cp 解压目录下/objs/nginx /usr/local/nginx/sbin/nginx
#检查是否成功
/usr/local/nginx/sbin/nginx -t
#重启nginx服务
cd /usr/local/nginx/sbin
./nginx
原文链接:https://blog.csdn.net/qq_36908872/article/details/127284955