目标:要查询LDAP服务器并确定证书的到期日期。
背景:我能够(通过ldapsearch)以“ userCertificate; binary”格式转储用户证书。这将产生类似于以下内容的数据:
userCertificate:: MIIABUNCHMORECHARACTERSFORCERT1
userCertificate:: MIIABUNCHMORECHARACTERSFORCERT2
(我相信)要使用OpenSSL处理上述内容,我必须按如下所示格式化输出:
文件1:
-----BEGIN CERTIFICATE-----
MIIABUNCHMORECHARACTERSFORCERT1
-----END CERTIFICATE-----
文件2:
-----BEGIN CERTIFICATE-----
MIIABUNCHMORECHARACTERSFORCERT2
-----END CERTIFICATE-----
问题:
什么是脚本遍历ldapsearch结果的最佳方法,对于每个条目,删除“ userCertificate; binary”,将证书放在BEGIN / END标记之间,然后将每个条目放入一个单独的文件中进行处理?我假设可以使用“ awk”或“ sed”完成此操作。
是否可以使用OpenSSL处理而不添加BEGIN / END标记或将每个条目分隔到一个新文件中?
谢谢。
答案 0 :(得分:0)
cat ldap_search_results.ldi | grep userCertificate |边读边;做cert = $(echo $ line | awk -F'::''{print $ 2}'); echo -e“ ----- BEGIN CERTIFICATE ----- \ n $ {cert} \ n ----- END CERTIFICATE -----” | openssl x509-文本| grep -Ei'Subject | not after';完成