【问题标题】:Openssl command does not run in crontab only for a specific certificateOpenssl 命令不会仅针对特定证书在 crontab 中运行
【发布时间】:2020-08-06 10:17:12
【问题描述】:

我在 Ubuntu 服务器 16 中有一个 SH 脚本,我运行它来获取证书的结束日期:

openssl pkcs12 -in cert.p12 -clcerts -nodes -passin file:passwordfile | openssl x509 -noout -enddate

这对多个证书运行良好,但仅对一个它不运行。我检查了所有证书的文件权限,并且都具有相同的权限。文件中的密码也是正确的。如果脚本由 crontab 调用,它不会返回日期。如果我在命令行中运行,它会按预期工作。 我创建了一个节点 JS 文件来做同样的事情,它也适用于除同一个证书之外的所有证书,并且它再次在命令行中工作。

文件的密码包含重音字符。它适用于命令行,但不能从 crontab 运行。这可能是某种原因吗?

我正在使用: OpenSSL 1.1.1e 2020 年 3 月 17 日 Ubuntu 16.04.6 LTS

根据https://www.openssl.org/docs/man1.1.1/man7/passphrase-encoding.html,它接受 UTF8。 任何想法为什么这不仅仅适用于特定证书?谢谢。

更新: 我将 OpenSSL 升级到 1.1.1g,但问题仍然存在。我用 Ubuntu 20.04 测试,没有出现问题。

【问题讨论】:

    标签: cron openssl pkcs#12


    【解决方案1】:

    这是 crontab 作业中的路径问题。刚刚添加: PATH=/usr/local/bin:/usr/local/ssl/bin:/usr/bin:/bin: 在工作之前解决了问题。

    【讨论】:

      猜你喜欢
      • 2016-09-14
      • 1970-01-01
      • 2018-07-26
      • 2015-07-02
      • 2017-08-05
      • 1970-01-01
      • 1970-01-01
      • 2019-02-04
      • 2018-04-21
      相关资源
      最近更新 更多