我正在使用。net的confluent kafka库,它是建立在librdkafka之上的。根据这里的文档:https://github.com/edenhill/librdkafka/blob/master/INTRODUCTION.md#ssl如果未设置ssl.ca.location,它将探测默认路径。当我没有设置它时,使用"/etc/ssl/certs/ca-certificates.crt">
现在为了验证目的,我从/etc/ssl/certs中删除了所有其他证书,并在/etc/ssl/certs中放置了一个新文件(例如"kafka_root_ca.pem")根据文档,如果没有明确的ssl.ca.location设置,它应该自动探测路径"/etc/ssl/certs"但事实并非如此。甚至尝试设置ssl.ca.location = 'probe'(按照confluent库的建议),但它仍然没有从上面的文件夹中选择。只有当我设置了绝对路径"/etc/ssl/certs/kafka_root_ca.pem"它的工作原理。
我错过了什么,因为根据上面的文档,如果没有设置,它应该自动从/etc/ssl/certs文件夹中选择。
我也有类似的问题:
至少在Ubuntu的rdlibkafka中,即openssl期望文件ca-certificates.crt
与所有证书连接在一起(二进制格式),这是由linux自动完成的,参见https://manpages.ubuntu.com/manpages/xenial/man8/update-ca-certificates.8.html。但是,如果您指定ssl.ca.location
并将完整的文件路径用于预期的CA证书,那么我就可以使用单个PEM证书。