zoukankan      html  css  js  c++  java
  • 网站启用SSL后重启Nginx提示 Enter PEM Pass Phrase:需要输入密码

    ​最近在玩 STARTSSL 感觉个人站点使用这个SSL差不多也够用了。真正商用的SSL当然也可以自行购买。

    我个人是为了防止数据中间被抓走,所以用了startssl 也基本就够用了。

    转回正题,startssl生成证书后,放到配置文件中,重启每次卡在Enter PEM pass phrase:需要输入密码

    这很不方便,

    网上流传办法:

    这种情况可能是在设置私钥key时将密码设置写入了key文件,导致Nginx/Apache等系列服务器在启动时要求Enter PEM pass phrase。我们需要做的是剥离这个密码,利用如下OpenSSL命令生成server.key.unsecure文件:
    openssl rsa -in server.key -out server.key.unsecure
    ​如果server.key.unsecure生成成功,我们就修改Nginx配置,比如像下面这样:

    # 这里是SSL的相关配置
    server {
      listen 443;
      server_name www.example.com; # 你自己的域名
      root /home/www;
      ssl on;
      ssl_certificate /etc/nginx/certs/server.crt;
      # 修改下面这一行指向我们生成的server.key.unsecure文件
      ssl_certificate_key /etc/nginx/certs/server.key.unsecure;
    }
    然后使用/etc/init.d/nginx restart重启Nginx,是不是发现不再提示了,整个世界清净了吧:-)

    有些童鞋可能苦于VPS的配置,精简掉了OpenSSL,从而没有openssl命令,那怎么办呢?你可以不在服务器上做这个操作,把原先的key文件下载到本地客户端,然后再openssl吧。什么?Windows怎么办?没关系,Windows下有OpenSSL for Windows,没有的童鞋赶紧下载下来使用吧。

     

    我使用startsll 他控制面板自带了解密工具。Tool Box -> ​Decrypt Private Key  ​输入之前生成的key和key的密码解密即可。

  • 相关阅读:
    简易自制线程池(备忘)
    大数据量的删除过程查看
    收集书籍备忘
    6月12日C代码
    fseek()
    区分int *p[4]与int (*p)[4]
    常用的字符串处理函数 C语言
    6月11日
    C学习代码
    文件读取 C语言
  • 原文地址:https://www.cnblogs.com/cnsanshao/p/8025508.html
Copyright © 2011-2022 走看看