Nginx详解二十一:Nginx深度学习篇之配置苹果要求的openssl后台HTTPS服务

Posted zhongyehai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx详解二十一:Nginx深度学习篇之配置苹果要求的openssl后台HTTPS服务相关的知识,希望对你有一定的参考价值。

 

配置苹果要求的证书:

1、服务器所有的连接使用TLS1.2以上的版本(openssl 1.0.2)

2、HTTPS证书必须使用SHA256以上哈希算法签名

3、HTTPS证书必须使用RSA2048位或ECC256位以上公钥算法

4、使用前向加密技术

 

首先看openssl版本:openssl version,为1.0.1,需要升级

技术图片

 查看当前使用的自签算法类型:openssl x509 -noout -text -in ./jesonc.crt,使用的是sha1,位数是1024位,都不符合规定

技术图片

技术图片

 

升级openssl,使用shell脚本升级

#!/bin/sh
#[email protected]
cd /opt/download
wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz
tar -zxvf openssl-1.0.2k.tar.gz
cd openssl-1.0.2k
./config --prefix=/usr/local/openssl
make && make install
mv /usr/bin/openssl /usr/bin/openssl.OFF
mv /usr/include/openssl /usr/include/openssl.OFF
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
echo "/usr/local/openssl/lib" >>/etc/ld.so.conf
ldconfig -v
openssl version -a

技术图片

执行脚本

技术图片

版本升级成功

技术图片

 

修改算法:openssl req -days 36500 -x509 -sha256 -nodes -newkey rsa:2048 -keyout jesonc_apple.crt

技术图片

还是和之前一样输入相应的信息

技术图片

 

修改配置文件

技术图片

server
{
listen 443;
server_name 116.62.103.228 jeson.t.imooc.io;

keepalive_timeout 100;

ssl on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;

#ssl_certificate /etc/nginx/ssl_key/jesonc.crt;
ssl_certificate /etc/nginx/ssl_key/jesonc_apple.crt;
ssl_certificate_key /etc/nginx/ssl_key/jesonc.key;
#ssl_certificate_key /etc/nginx/ssl_key/jesonc_nopass.key;

index index.html index.htm;
location / {
root /opt/app/code;
}
}

技术图片

检查配置语法,并重载

nginx -tc /etc/nginx/nginx.conf
nginx -s reload -c /etc/nginx/nginx.conf

技术图片

技术图片

 

查看443端口是否启动

技术图片

 

浏览器访问,这个证书就是苹果要求的类型

技术图片

 

以上是关于Nginx详解二十一:Nginx深度学习篇之配置苹果要求的openssl后台HTTPS服务的主要内容,如果未能解决你的问题,请参考以下文章

Nginx详解十八:Nginx深度学习篇之Rewrite规则

Nginx详解二十五:Nginx架构篇之Nginx常见的问题

Nginx详解二十六:Nginx架构篇之性能优化

Nginx详解七:Nginx基础篇之Nginx官方模块

Nginx详解九:Nginx基础篇之Nginx的访问控制

Filebeat 与Kibana仪表板(二十一)