NGINX配置ssl

采用自发行的证书(如果购买证书可以跳过)

首先确保安装了 openssl (没有的话可以用 yum -y install openssl)
先建立ssl目录,并进入到该目录操作

mkdir /etc/nginx/ssl
cd /etc/nginx/ssl

创建证书

  1. 创建私钥(密码用123456)

      `openssl genrsa -des3 -out ftpse.key 1024`
    
  2. 此步用于生成csr证书,使用上一步骤生成的私钥

    在此步过程中,会交互式输入一系列的信息(所在国家、城市、组织等)
    `openssl req -new -key ftpse.key -out ftpse.csr`
    
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:Beijing
Organization Name (eg, company) [Default Company Ltd]:FTPSE COMPANY LTD
Organizational Unit Name (eg, section) []: (空不填)
Common Name (eg, your name or your server's hostname) []:*.ftpse.com
Email Address []: 随便填

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: 空不填
An optional company name []: 空不填

3、去除访问密码,如果不执行此步,在配置了ssl后,nginx启动会要求输入密码
操作过程中会要求输入密码,密码为生成key文件时的密码
openssl rsa -in ftpse.key -out ftpse-np.key

4、生成crt证书
openssl x509 -req -days 732 -in ftpse.csr -signkey ftpse-np.key -out ftpse.crt

修改nginx配置

listen       443 ssl;    #如果硬性要求全部走https协议,这里去除ssl 
      
    #ssl on;   #如果硬性要求全部走https协议,这里开启ssl on  
    ssl_certificate ssl/ftpse.crt;    
    ssl_certificate_key ssl/ftpse.key;  
  
    ssl_session_cache    shared:SSL:1m;  
    ssl_session_timeout  5m;  
  
    ssl_protocols  SSLv2 SSLv3 TLSv1.2;     
  
    ssl_ciphers  HIGH:!aNULL:!MD5;  
    ssl_prefer_server_ciphers  on;  

防火墙开放443端口

firewall-cmd --permanent --zone=public --add-port=443/tcp

上一篇:【第 06 个代码模型】综合案例:生产者与消费者(解决重复操作问题)|学习笔记


下一篇:如何使用 Istio 进行多集群部署管理:多控制平面