怎么让nginx配置SSL安全证书重启免输入密码

今天给Nginx配置了一个SSL的安全证书

ssl on; 
    ssl_certificate  /home/cert/server.crt;
    ssl_certificate_key  /home/cert/server.key;

然后重启和reload的时候都得如如密码。。。

# /usr/local/nginx/sbin/nginx -s reload
Enter PEM pass phrase:

可是我有个脚本要每天运行reload,不能实现这个输入密码功能
有没有什么办法可以自动输入密码?

P.S. 我试了管道,nginx接收不到

阅读 28.8k
3 个回答

可以用私钥来做这件事。生成一个解密的key文件,替代原来key文件。

openssl rsa -in server.key -out server.key.unsecure

然后修改配置文件

ssl on; 
    ssl_certificate  /home/cert/server.crt;
    ssl_certificate_key  /home/cert/server.key.unsecure;

这样就可以不用输入密码了

试试expect命令,可以用来输密码,可以参考expect自动ssh的脚本。

建议在制作CSR证书请求文件时不要设置口令

sudo openssl genrsa -out server.key 2048

而不是你在百度上看到的

sudo openssl genrsa -des3 -out server.key 204

要不然就参考其它答案了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏