小工具知识网

当前位置: 首页 > 行业知识 > https证书配置(nginx)

行业知识

https证书配置(nginx)

2026-11-06 15:40:09 来源:互联网转载

 HTTPS 是什么

  • HTTPS 是一种应用层协议,是一种透过计算机网络进行安全通信的传输协议,HTTPS 经由 HTTP 进行通信,但是在 HTTP 的基础上引入了一个加密层,使用 SSL/TLS 来加密数据包,
  • HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性
  • HTTPS 默认工作在 TCP 协议443端口

    HTTPS工作流程

    既然要保证数据安全,就需要进行“加密”,即网络传输中不再直接传输明文,而是加密之后的“密文”。加密的方式有很多,但是整体可以分为两大类:对称加密和非对称加密 

    • 对称加密其实就是只通过一个密钥,把明文加密成密文,并且也能把密文解密成明文
    • 非对称加密要额外再用到两个密钥,一个叫做==“公钥”,一个叫做”私钥“。公钥和私钥是配对的==,这对密钥由服务器产生
    • 客户端如何获取到公钥?客户端如何确定这个公钥不是黑客伪造的?为了解决这两个问题,就引入了证书

      证书机制 

      在客户端和服务器刚建立连接时,服务器就给客户端返回一个证书。这个证书就好比人的身份证,用来作为网站的身份标识。而每搭建一个 HTTPS 网址时都需要在 CA 机构申请一个证书

      证书包含的信息

      • 证书发布机构
      • 证书有效期
      • 公钥
      • 证书所有者
      • 签名

        HTTPS的完整流程

        对称加密: 需要有一个客户端生成的对称密钥,用于对传输的数据进行加密,但需要将该对称密钥告知给服务器
        非对称加密:服务器提供一个公钥(自己持有私钥),将公钥传发送给客户端,客户端使用公钥对对称密钥进行加密,将密文传送给服务器
        引入证书机制:通过第三方公证机构,向网站颁发证书,该证书里面就含有公钥。客户端向服务器请求的也就是证书,客户端拿到证书后去公证机构校验,如果证书合法,就使用里面的公钥对对称密钥进行加密

        阿里云免费证书申请

        下载所需的证书zip 

        我这里是nginx配置的ssl证书

         

        下载包含pem和key两种文件 .key (私钥)与 .pem(公钥)

        在nginx中使用证书

        在nginx下建立cert文件夹,传入解压好的pem和key文件

         

        进入nginx.conf配置页面配置nginx,具体配置内容如下 ,我配置的是访问json文件,各位可以配置别的内容

        server {        listen 443 ssl;        server_name  shilei.tech;        root /opt/json/;        ssl_certificate      /usr/local/nginx/cert/shilei.tech.pem;        ssl_certificate_key  /usr/local/nginx/cert/shilei.tech.key;        ssl_session_cache    shared:SSL:1m;        ssl_session_timeout  5m;        ssl_ciphers  HIGH:!aNULL:!MD5;                ssl_prefer_server_ciphers  on;         location /{                        if (!-e $request_filename){                   rewrite ^(.*)$ /.json last;                   break;             }            root /opt/json/;            index apple-app-site-association.json;        }

        停止并启动nginx

        ./nginx -s stop ./nginx

        访问测试 

        https://shilei.tech/apple-app-site-association

        注意事项

        保证服务器的443端口和阿里云的防火墙是开启的,否则访问不到  

        # 开启443端口firewall-cmd --add-port=443/tcp --permanent# 重载防火墙firewall-cmd --reload

上一篇:比心软件下载攻略,轻松获取比心应用,体验社交魅力!

下一篇:Java API源码深度探索,揭秘核心机制,洞悉奥秘之旅