背景信息:我正在使用 OS X 服务器,我需要使用带有 openssl smime 的密钥链中的证书来加密 bash 脚本中的消息。为此,我使用security find-certificate
with-e
选项从 OS X 密钥链中提取某个电子邮件地址的证书。这很好用,但是,该命令会将针对该电子邮件地址找到的所有证书提取到 PEM 文件中。该文件甚至会包含过期的证书。
当我使用 PEM 文件进行邮件加密时openssl smime
,显然只使用了 PEM 文件中的第一个证书。
所以需要做的是从PEM文件中选择过期日期最长的证书,这样我就可以用openssl使用那个证书,但是这怎么能做到呢?
如果可以接受任何未过期的证书:
如果您特别需要最后一个到期日期,我看不到自动化日期比较的简单方法,但剩下的就是: