有没有办法如何通过运行/etc/ssl/certs/ca-certificates.crt
(或任何其他)命令并解析其部分输出来查找证书包的路径(例如openssl
)?有没有其他方法,没有运行openssl
命令?
我想在产品安装过程中找到路径,以便我可以提供合理的默认设置。
答案 0 :(得分:1)
是的,有:你可以解析
的输出openssl version -a
示例输出:
built on: Thu Mar 14 02:45:44 NZDT 2013
platform: linux-elf
options: bn(64,32) rc4(1x,char) des(ptr,risc1,16,long) blowfish(idx)
compiler: gcc -Wl,--as-needed,-O1,--hash-style=both -DPURIFY -fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/local/Libraries/OpenSSL/x86/1.0.1c/gcc-4.7.2/ssl"
您可以看到最后一行显示了您可以找到 certs 子目录的目录,这可能是您正在寻找的目录。
我不知道是否有其他方法可以获取此信息(毕竟 OPENSSLDIR 是一个编译标志)。