除了注意到这样的事情之外:
yourid@linuxtpf:~/certificates> ls -l
lrwxrwxrwx 1 yourid users 9 2009-04-07 18:06 50a694ac.0 -> cert2.pem #<-- was missing
lrwxrwxrwx 1 yourid users 9 2009-04-07 18:06 5170a0d9.0 -> cert3.pem #<-- was missing too...
-rw------- 1 yourid users 756 2009-04-07 18:02 cert2.pem
-rw------- 1 yourid users 747 2009-04-07 18:02 cert3.pem
在我的服务器中缺少它,添加它们之后,修复了在 LDAP 连接过程中的 ldap_bind 阶段失败的 LDAPS 连接。
到底发生了什么?为什么我需要为 CAPATH 创建符号链接通过运行以下命令?
yourid@linuxtpf:~/certificates> c_rehash /home/yourid/certificates
答案1
因为某些软件通过在配置的目录中查找具有给定证书哈希的文件来找到正确的密钥。
散列会从密钥 ID 创建到具有人类可读名称的文件的符号链接。
答案2
机器需要这样的文件。如果您打开证书,您将看到数字与证书中提供的哈希值匹配。这样证书的规范哈希值就与文件的名称匹配。请记住:证书可能包含多个主机名和别名,但它具有只有一个哈希。
50a694ac.0
5170a0d9.0
但是我呢?我是人类,这些名字很难理解。所以我使用人性化的符号链接,如下所示:
www.example.org.pem -> 50a694ac.0
wiki.example.org.pem -> 5170a0d9.0
根据我的经验,名称www.example.org.pem
和wiki.example.org.pem
通常是指向名为的文件的符号链接50a694ac.0
。在您的示例中,情况正好相反——存在人性化的名称,但不存在散列名称。人性化的名称有时是可选的。