有时候需要给ssl增加根证书,这种情况很多,比如12306的根证书等等,反正没有内置到openssl的根证书,但是你需要信任它,就需要把它添加到ssl中。对于各个linux发行版来说证书相关的密码和认证的机制由openssl提供,而预置的根证书由ca-certificates提供,ca-certificates包由debian维护,主页在http://packages.debian.org/sid/ca-certificates。
ca-certificates包含的根证书存放在/usr/share/ca-certificates目录下,按照 机构名/证书.crt 的文件名存放。同时所有的根证书在/etc/ca-certificates.conf文件中列表,并且软链接到/etc/ssl/certs/....pem。ca-certifiacates包中提供/usr/sbin/update-ca-certificates命令,当/usr/share/ca-certificates目录下有变动的时候,根据/etc/ca-certificates.conf维护/etc/ssl/certs/目录。
update-ca-certificates根据/etc/ca-certificates.conf维护/etc/ssl/certs/,对于/etc/ca-certificates.conf中以#开头的行忽略,以!开头的行不予选择(标记为有问题),其他行在/etc/ssl/certs/目录下生成软链接,并生成/etc/ssl/certs/certificates.crt文件。