• 这辈子只能碰到一次! 记一次SSL无故被撤消!


    SSL证书刚更新一切都那么正常, 突然有一天网站不能访问了, Chrome浏览器提示有风险, 没有继续访问链接,没有,没有, 重要的事情说三遍, 于是乎赶紧加班查原因, 发展浏览器报的错误是证书撤消(不敢相信,难不成....), 赶紧试所有的有浏览器试了个遍都一样又去手工验证, 天哪是真的, 只能打CA提供商客服了. 原来是CA那边出bug了, 具体什么bug就是好多ssl证书没验证域名所有权就发证书了, 无语....

    • 解决方法, 重新认证域名控制权, 具体就是在主域下上传一个html文件, 内面写入他们提供的唯一id, 将html页面做到指定的url上本地就配置好了, 然后登录其网站点击去验证,应该就OK了
    • 验证完毕就可以下载证书文件了, 跟根服务器类型选择下载(我的是nginx选择其它类型), 包里面有两个文件一个貌似随机字符串就是我们需要的证书, 另外一个是根证书证书链文件, 将两个文件合并
      cat 53f58e3ac2172cd5.crt gd_bundle-g2-g1.crt > domain.crt将这个文件和服务器上的server.key设置到nginx.conf中就完成了, 过程倒是不复杂,关键是太吓人...谁能想到这玩意儿会被撤消...

    下面附上提交申请到配置nginx的详细笔记:

    申请SSL并配置nginx,整体流程是:

    1. 生成密钥,生成时必须得输入密码, 生成后再删除密码
    2. 生成csr文件, 输入国家, 省, 市, 公司名, 部门(可不输), 邮箱, 最后是密码(直接回车不输入)
    3. 拷贝csr文件内容到godaddy网站csr内并提交申请
    4. 批准后选择服务器类型下载证书(nginx服务器选择其它类型)
    5. 将证书上传到服务器(我传到/etc/ssl/文件夹内)
    6. 将key文件邮件密码备用
    7. 将两个crt证书文件合并(随机字符串名的文件在并面)
    8. 编辑nginx服务器配置文件
    9. 重起nginx服务器
    
    • 准备工作:

      ubuntu@xxxxxx:~$ pwd
      /home/ubuntu
      ubuntu@xxxxxxx:~$ openssl genrsa -des3 -out server.key 2048      # 命令!产生一个最少2048的密钥
      Generating RSA private key, 2048 bit long modulus
      ...+++
      ...+++
      e is 65537 (0x10001)
      Enter pass phrase for server.key:			# 输入密码
      Verifying - Enter pass phrase for server.key:		# 再次输入
      
      ubuntu@xxxxxx:~$ openssl req -new -key server.key -out server.csr       # 使用这个key生成申请文件
      Enter pass phrase for server.key:										    # 输入密钥的密码
      You are about to be asked to enter information that will be incorporated
      into your certificate request.
      What you are about to enter is what is called a Distinguished Name or a DN.
      There are quite a few fields but you can leave some blank
      For some fields there will be a default value,
      If you enter '.', the field will be left blank.
      -----
      Country Name (2 letter code) [AU]:CN    		# 国家(两位字母)
      State or Province Name (full name) [Some-State]:Beijing   # 省份
      Locality Name (eg, city) []:Beijing					# 城市
      Organization Name (eg, company) [Internet Widgits Pty Ltd]: Astrowings for zhangyu			# 公司名
      Organizational Unit Name (eg, section) []:		# 部门(可不写)
      Common Name (e.g. server FQDN or YOUR name) []:homeba.com.cn  	# 域名, (也可*.homeba.com.cn泛域名)
      Email Address []:zyu911@126.com    			# 公司对外邮箱
      
      Please enter the following 'extra' attributes
      to be sent with your certificate request
      A challenge password []:		    # 直接回车
      An optional company name []:		# 直接回车完成
      ubuntu@xxxxxxx:~$ 
      
      # 执行以下命令去除密钥文件的密码(很重要否则nginx会出问题, 每次重起都要输入密码)
      openssl rsa -in server.key -out server_nopass.key    
      
    • 申请并下载

      # 查看生成的xxxx.csr文件并将内容拷贝到网页上面的csr去申请证书
      [root@xxxxxxx ~]# cat xxxx.csr 
      -----BEGIN CERTIFICATE REQUEST-----
      MIICwzCCAasCAQAwfjELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaWppbmcxEDAO
      BgNVBAcMB0JlaWxxxxxxxxxxxxxxxxxxxxxxxxxxxxxWMBQGA1UEAwwNaG9tZWJh
      LmNvbS5jbjEiMCAGCSqGSIb3DQEJARYTYWRtaW5AaG9tZWJhLmNvbS5jbjCCASIw
      DQYJKoZIhvcNAQExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxEI5RuO+Wa1uEYujZLoO
      88dVU99va7wBFP/iPXKOlegBUoSulAsB2Rc8xJaybPzpB3z26ZFjkzt4cuccFgoB
      IZx6f/5phv4QXI7f+yTvnWD7u6eypAkN6tURF3RxiIayTg5e6lfXQOGOsuD1hgve
      YDUoEw0bZzHFRYvtQ5b1vUnaLuKCDxy+jyo/dLsf5/8JyUxuJyEHWZg2fd/WdtQ6
      Rt91wcTLlKdV1ToT4cu1PInqJZY5H+4R7u1nu8nmOekCed6uXmHqFrEPIaNetgvL
      n/UvNJzeCN7/s1taAE/xxxxxxxxxxxxxxxxxxxxxxxxxxxhv64CIy/gKFR0CAwEA
      AaAAMA0GCSqGSIb3DQEBBQUAA4IBAQDksoRnUd5Jit5OiStYDRkvbtpZ+z68zAaT
      thp7lGjw8Ranl5e36qKjraP1EKYH55Pov1jl0zhL+vruCfSfb1CEKzwkZy54NbRj
      OHwF/Mqeyu2Lg8xU/VNzkxxxxxxxxxxxxxxxxxxxx7xt33puCCJKI9JGGyX1DQBi
      i8dkTkwEUmG643mHmt1oUKxaSH8Zi9aW946sG39v1iH2dCl2LQ9H4jyGAG/mV0rw
      gIVOApRrJH3BTBcY8WExxxxxxxxxxxxxxxxxxxxxxxxcFAXoEwjI7QODRD45iNZD
      Fr5IYhaUSOVrXxNk/03jIwafsBupR2Ur6RKf/9x01xoAnjuLTy4e
      -----END CERTIFICATE REQUEST-----
      
      # 证书批准后从godaddy下载证书文件 如果是nginx服务器选择其它种类并下载.zip文件.解压后是两个文件:
      	53f58e3ac2172cd5.crt   # 域名证书
      	gd_bundle-g2-g1.crt    # 根证书
      
      
      # 而后使用如下命令合并证书
      cat 53f58e3ac2172cd5.crt gd_bundle-g2-g1.crt > domain.crt
      
    • 配置nginx

      server {
      	listen	443 ssl;
      	server_name	xxoo.com.cn www.xxoo.com.cn;
      
      	ssl on;
      	ssl_certificate	/etc/ssl/domain.crt;    # 全并后的证书!
      	ssl_certificate_key /etc/ssl/server_nopass.key;   # 去除密码的key私钥文件
      
      	location / {
      		proxy_pass http://unix:/tmp/ooxx.sock;
      		proxy_set_header Host $host;
      		proxy_set_header X-Real-Ip $remote_addr;
      		proxy_set_header X-Forwarded-Proto $scheme;
      		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      		# uwsgi_pass	xxxoo;		# 以后要用uwsgi
      		# include uwsgi_params;
      	}
      
      	location /static {
      		root /var/www/ooxx;
      	}
      	location /Robots.txt {
      		root /var/www/ooxx;
      	}
      }
      
      server {
      	listen	80;
      	server_name	xxoo.com.cn www.xxoo.com.cn;
      	# rewrite		^(.*)$ http://xxoo.com.cn$1;
      	rewrite ^(.*)$ https://$host$1 permanent;
      }
      
  • 相关阅读:
    [转]IDEA 新建 JSP 项目时
    [转] AForge.NET 图像处理类
    [转] 端口被占用的处理
    [极客大挑战 2019]PHP
    今天鸽了
    [ZJCTF 2019]NiZhuanSiWei
    [极客大挑战 2019]Secret File
    [SUCTF 2019]Pythonginx
    [CISCN2019 华北赛区 Day1 Web2]ikun
    [极客大挑战 2019]EasySQL
  • 原文地址:https://www.cnblogs.com/zyu911/p/6675660.html
Copyright © 2020-2023  润新知