今天给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接收不到
可以用私钥来做这件事。生成一个解密的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
要不然就参考其它答案了
正文完