当前位置: > 虚拟化 Virtualization > oVirt >

ovirt host主机上证书的强制更新

时间:2020-03-24 13:17来源:linux.it.net.cn 作者:IT

1 问题的提出:

Ovirt对于主机设置的时间年限是5年。5年到期之后,需要更新主机的证书。正常情况下,重新添加主机,就自动完成了主机证书的更新。然而,往往由于误操作,或者不可操作(本地存储),导致主机无法删除,此时需要强制更新主机上的证书。

2 更新哪些证书?

host主机上证书的强制更新

如上所述,需要更新9个证书。

3 如何更新?

总共分两步,第一步生成证书,第二步将生成的证书部署到表中的位置。

(1)   生成证书。

1) 在主机上(engine上也可以)创建一个文件夹test。在此目录下进行操作。首先将engine上的两个证书文件,拷贝到此目录下。

 将engine的 ca.pem和private/ca.pem拷贝到当前test目录下,并且分别改名称为cacert.pem, cakey.pem。engine的ca.pem目录为

/etc/pki/ovirt-engine/ca.pem

/etc/pki/ovirt-engine/private/ca.pem

2)  执行命令

[root@www test]#certtool –generate-privkey > host1_server_key.pem

Generating a 2048 bit RSA private key…

3)    生成模板

[root@www test]# vi host1_server_template.info

organization = center.com 注:组织名字

cn = www.server1.com 注:cn 为 server的主机名

signing_key

encryption_key

tls_www_client

tls_www_server

expiration_days = 700 注:有效时间

4) 执行命令

[root@www test]# certtool –generate-certificate \

>             –template host1_server_template.info \

>             –load-privkey host1_server_key.pem \

>             –load-ca-certificate cacert.pem \ 注:为center的ca.pem

>             –load-ca-privkey cakey.pem \  注:为center的private/ca.pem

>             –outfile host1_server_certificate.pem

 

经过上述操作,在test文件夹下,获得了host1_server_key.pem, host1_server_certificate.pem两个文件,以及从center获得的cacart.pem文件。

(2) 将生成的pem文件,以及engine的ca证书,进行部署。

根据表格的要求进行部署。

1)  用engine的cacart.pem替换当前的 /etc/pki/vdsm/certs/cacert.pem

2)  用cp host1_server_certificate.pem /etc/pki/vdsm/certs/vdsmcert.pem 进行替换。

3) 用cp host1_server_key.pem /etc/pki/vdsm/keys/vdsmkey.pem 进行替换。

经过上述三步,vdsm目录替换完毕,进入libvirt-spice目录。

4) cp /etc/pki/vdsm/keys/vdsmkey.pem   server-key.pem

5) cp /etc/pki/vdsm/certs/vdsmcert.pem  server-cert.pem

6) cp /etc/pki/vdsm/certs/cacert.pem ca-cert.pem

经过上述三步,qemu/libvirt替换完毕,进入libvirt目录

7) cp /etc/pki/vdsm/certs/vdsmcert.pem clientcert.pem

8) cp /etc/pki/vdsm/keys/vdsmkey.pem  ./private/clientkey.pem

9) cp /etc/pki/vdsm/cacert.pem  /etc/pki/CA/cacert.pem

此时,9个证书全部被刷新。就可以重新进行操作了。

4 如何验证证书刷新成功?

在engine上执行如下命令

# openssl s_client \

-connect the_ip_of_host:54321 \

-cert /etc/pki/ovirt-engine/certs/engine.cer \

-key /etc/pki/ovirt-engine/keys/engine_id_rsa \

-CAfile /etc/pki/ovirt-engine/ca.pem

5 参考文献

1)http://www.ovirt.org/Features/PKI

2)https://blog.51cto.com/phpme/2313592?source=dra

3)https://www.ovirt.org/develop/release-management/features/infra/pki.html



(责任编辑:IT)
------分隔线----------------------------