美文网首页
配置Nginx实现https协议,支持ATS

配置Nginx实现https协议,支持ATS

作者: dadage456 | 来源:发表于2020-07-05 15:40 被阅读0次

前言


在CentOS版本的Linux系统下使用 yum install -y nginx直接安装。

执行nginx -V命令,查看nginx版本。

nginx版本:1.16.1, OpenSSL: 1.0.2k

不能通过ATS检测SSL Server Test评分【F】也很低。所以需要手动安装最新版本。

环境


安装环境:CentOS 7

安装openssl版本:1.1.1g

安装Nginx版本:1.18.0

SSL证书申请机构:Let’s Encrypt ,支持苹果ATS标准

SSL申请工具:acme.shSSL For Free在线生成

SSL 测试: SSL Server Test

配置步骤


安装新版本Openssl

访问Openssl官网,查看是否有最新版本:https://www.openssl.org/source

# !bin/bash

// 1、获取安装包
wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz

// 2、解压安装包,并进入目录
tar -zxvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g

// 3、安装依赖程序
yum install zlib

// 4、编译安装
./config --prefix=/usr/local/openssl shared zlib --enable-tlsext
make depend 
make && make install

// 5、配置使用新版本
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl

// 6、更新动态链接库
echo "/usr/local/lib64" >> /etc/ld.so.conf

// 7、重新加载动态链接库
ldconfig -v

// 8、查看版本
openssl version

安装Nginx, 支持TLS1.2+

安装Nginx时候指定编译下载的openssl的安装包路径。 --with-openssl=/root/downloads/openssl-1.1.1g

该下载的openssl支持TLS1.2+,最新版本是肯定支持的。

官网查看最新版本:http://nginx.org/en/download.html

# !bin/bash

// 1、获取并解压安装包
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0

// 2、配置并安装
./configure --prefix=/usr/local/nginx \
    --with-http_ssl_module \
    --with-http_v2_module \
    --with-openssl=/root/downloads/openssl-1.1.1g

make && make install

// 3、配置使用新版本
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

//查看信息
nginx -V

//启动nginx服务
nginx

使用acme.sh申请SSL证书,并安装到nginx或其他服务

注意点:

  • 使用acme.sh之前,先安装支持TLSv1.2的Openssl工具(最新版本就可以)。
    • 使用不支持TLSv1.2的Openssl工具申请的证书,在SSL Server Test测试不支持TLSv1.2。
  • 申请的域名使用*.aa.com,一个证书配置所有的二级域名上。
# !bin/bash
acme.sh  --issue  --dns dns_dp   -d *.aa.com  

修改nginx.conf文件

server {
    listen       443 ssl;
    server_name  test.codepower.top;

    ssl_certificate      cert.pem;
    ssl_certificate_key  cert.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
    
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

    location / {
        root   html;
        index  index.html index.htm;
    }
}

注意:

以上配置后,浏览器提示不安全连接。检查网页中的图片、css、js是不是使用http请求方式。

相关文章

  • 配置Nginx实现https协议,支持ATS

    前言 在CentOS版本的Linux系统下使用 yum install -y nginx直接安装。执行nginx ...

  • 通过nginx发布IOS包

    需要安装nginx并配置支持https协议 编辑 .plist文件: 编辑 页面,跳转到 .plist文件

  • ATS中

    苹果前段时间要求上架的应用都要支持https协议,并为此设计了ATS这个配置项。具体来说就是,应用默认是不支持ht...

  • Nginx配置https协议

    1.申请SSL证书然后下载 2.上传证书 上传证书文件 (.pem或者.crt文件 和 .key文件)到 /etc...

  • 配置nginx支持Https

    配置nginx支持Https一定要先使用stop停止nginx然后重新代开不能使用reload 一:安装letse...

  • Nginx配置https请求,以及Nginx+keepalive

    一、Nginx配置https请求 要实现Nginx配置https请求,安装的时候需要加上 --with-http_...

  • nginx配置https

    nginx配置https自建证书 最近需要给内部服务添加https支持,首先考虑使用自建的证书来实现https的配...

  • Nginx正向代理配置

    Nginx配置正向代理支持HTTP和HTTPS转发Nginx本身不支持HTTPS正向代理,需要安装ngx_http...

  • 如何给网站配置SSL证书

    配置SSL使得Nginx支持HTTPS协议(开发环境) 很多情况下,项目的前端页面可能已经上线(已发布),并且通过...

  • Nginx HTTPS

    准备工作 获取HTTP证书并上传到服务器 配置Nignx支持HTTPS协议,首先需要检查Nginx是否已经安装了S...

网友评论

      本文标题:配置Nginx实现https协议,支持ATS

      本文链接:https://www.haomeiwen.com/subject/ccuvqktx.html