安装证书颁发机构
====================
组织可以创建自己的本地证书颁发机构(CA)或从第三方获取。这可能意味着不止一个证书,例如一个或多个中间证书和根证书。在任何情况下,都有必要添加证书颁发机构(CA)的证书,以便将其用于各种用例。
方法
证书可以是单个的,也可以是串联的(捆绑的)。以下步骤是将此类证书添加到 Podman 中的一种方法。假设 Podman 正在运行,并且要通过 curl 从可访问的服务器上安装证书。如果无法进行此类访问,请遵循后面的替代方法。
首先,假设 Podman 机器正在运行,通过 ssh 进入该机器:
podman machine ssh
如果 Podman 以默认的 rootless 模式运行,则需要额外的命令来获取 root shell:
sudo su -
执行上述命令后,提示符应该更改以指示当前用户是“root”而不是“core”。
接下来,在机器中,切换到应该安装证书的目录:
cd /etc/pki/ca-trust/source/anchors
然后使用 curl 下载证书。注意:
- 只有在安全地连接到尚未受信任的服务器时才需要 -k
- MY-SERVER.COM/SOME-CERTIFICATE.pem 应根据实际情况替换
curl -k -o some-certificate.pem https://MY-SERVER.COM/SOME-CERTIFICATE.pem
根据需要重复此操作以获取多个证书。
一旦所有证书都已下载,运行以下命令将证书添加到受信任的 CA 列表中:
update-ca-trust
退出机器:
exit
方法二(如果无法通过 curl 访问)
如果由于某种原因无法通过 curl 访问证书,那么可能需要手动将证书复制到 Podman 机器上。这可以通过多种方式完成,例如使用 scp 命令或通过挂载文件系统。
一旦证书文件被复制到 Podman 机器上的 /etc/pki/ca-trust/source/anchors
目录中,就需要运行 update-ca-trust extract
命令来更新受信任的 CA 数据库。这个命令会扫描 /etc/pki/ca-trust/source
目录下的所有证书,并更新 /etc/pki/ca-trust
下的证书数据库。
请注意,对于运行 Podman 的特定环境或配置,可能还需要进行其他步骤或考虑其他因素。始终建议查阅 Podman 的官方文档或相关资源,以获取针对您特定用例的详细和准确的指导。
如果使用了“sudo su -”命令来切换到root shell,如上所述,那么需要再执行一个exit命令来退出机器:
exit
```bash
### 替代方法
如果由于某些原因上述方法不可行或不理想,可以使用vi来创建证书。
如上所述,假设Podman机器正在运行,通过ssh进入该机器:
```bash
podman machine ssh
```bash
如果提示符以“core”而不是“root”开头,请切换到root shell:
```bash
sudo su -
```bash
接下来,切换到证书应该安装的目录:
```bash
cd /etc/pki/ca-trust/source/anchors
```bash
然后使用vi来创建证书。
```bash
vi SOME-CERTIFICATE.pem
```bash
在vi打开后,将证书复制到剪贴板,然后在插入模式下,将剪贴板内容粘贴到vi中。最后,保存文件并关闭vi。
如果有多个证书,请重复上述步骤。
一旦所有证书都已创建,运行以下命令将证书添加到受信任的CA列表中:
```bash
update-ca-trust
```bash
退出机器:
```bash
exit
```bash
如果之前使用了“sudo su -”命令,那么还需要再执行一个exit命令:
```bash
exit
```bash
### 最终说明
证书安装将在机器重启期间持续存在。无需停止和重新启动机器即可开始使用证书。