0

我有一个 Ubuntu LDAP 服务器,STARTTLS 使用自签名证书(按照这些说明)。

设置 CentOS 客户端时(按照这些说明),该authconfig-tui命令要求我提供 PEM 格式的证书:

│ 使用 TLS 连接到 LDAP 服务器 │
│ 启用协议你需要一个 CA 证书│
│ 哪个签署了你的服务器的证书。│
│ 将 PEM 格式的证书复制到 │
│ '/etc/openldap/cacerts' 目录。│
│ 然后按确定。│

如何获得 PEM 格式的证书?我找到了这些命令,但/etc/dirsrv/我的 ubuntu 系统上什至不存在该文件夹。

certutil -L -d /etc/dirsrv/slapd-SOMETHING
certutil -L -d /etc/dirsrv/slapd-SOMETHING -n "SOMETHING_ELSE" -a > cacert.asc

我也看到了 command certutil -L -d /etc/openldap/certs,它给了我这个错误信息(我也试过/etc/ssl/certs):

certutil:函数失败:SEC_ERROR_LEGACY_DATABASE:证书/密钥数据库采用旧的、不受支持的格式。

请注意,出于显而易见的原因,我只想导出证书的公共部分,而不是私有部分(用于易于识别的 SSH 密钥,其中 id_rsa 是私有的,id_rsa.pub 是公共的,我总是发现很难知道我导出的证书是公开的还是私有的……)

4

1 回答 1

1

如果您按照链接到的说明进行操作,那么您已经获得了 PEM 格式的证书。根据这些说明:

Create the self-signed CA certificate:

sudo certtool --generate-self-signed \
   --load-privkey /etc/ssl/private/cakey.pem \ 
   --template /etc/ssl/ca.info \
   --outfile /etc/ssl/certs/cacert.pem

证书是/etc/ssl/certs/cacert.pemPEM 格式。

...我只想导出证书的公共部分,而不是私人部分

证书 ( cacert.pem) 仅包含公钥。私钥 ( cakey.pem) 不包含在证书中。

于 2015-03-09T16:56:29.833 回答