我有多个证书文件,例如“cert1.crt”,“cert2.crt”等,以及多个CRL列表,“list1.crl”,“list2.crl”等。没有提供rootCA或任何其他类型的文件。我的任务是找出哪些证书没有被撤销。尽管对“验证”命令进行了广泛的搜索,但我没有找到任何能够提供我至少一条线索的命令或程序。最后,我设法做一些bash脚本特技飞行这让我手动测试序列号,每个.crt文件验证针对各种CRL文件的SSL证书
for((i=1;i<9;i++))
do
echo $i
fileIn="crl"$i".crl"
#serial is manually c/p from each .crt file
serial="1319447396"
OUTPUT="$(openssl crl -in $fileIn -noout -text | grep $serial)"
echo $OUTPUT
done
这样我可以做手工每次一个,但它只能用于小文件数目(目前9个)。有了数十个文件,它会变得无聊而无效,而有100多个文件就不可能这样做。
我想知道是否有一种“聪明”的方式来验证.crt对抗.crl?或者至少有一种方法来打脚本的工作,所以我不必手动检查每个.crt?现在它超出了我的脚本知识。
所以,伪,我会很高兴,如果这样的事情存在:
openssl x509 -verify cert1.cert -crl_list list8.crl
https://raymii.org/s/articles/OpenSSL_manually_verify_a_certificate_against_a_CRL.html – 2017-03-18 20:43:48
谢谢,雨果。我很清楚这篇文章以及其他一些文章,因为我在提出问题之前尽可能多地搜索了它,但它并没有为我的问题提供解决方案,因为验证方法不适用于问题在眼前。正如我在文章中提到的,我没有提供一个CA文件,用于您提到的网站提供的验证方法。我确实找到了OpenSSL的方式来解决它,但我缺乏的是bash命令知识来做到这一点。 – Gishas