README.md

VIRTCCA DEPLOY

virtcca 机密虚机自动化部署工具

安装部署

建议创建虚拟环境运行,首次运行执行以下命令生成虚拟环境

yum install virtcca-manager -y

管理节点配置运行virtcca-manager

获取管理节点域名

hostname

/etc/virtcca_deploy/virtcca_deploy.conf中配置管理节点域名、虚拟机镜像路径和证书路径,要求指定路径支持virtcca用户具备读写权限。

[DEFAULT]
manager = compute01
cvm_image_path = /var/lib/virtcca_deploy/qcow2

[MANAGER]
external_ca_cert = /etc/virtcca_deploy/cert/external_ca.crt
ca_cert = /etc/virtcca_deploy/cert/ca.crt
server_cert = /etc/virtcca_deploy/cert/manager.crt
server_key = /etc/virtcca_deploy/cert/manager.key
client_cert = /etc/virtcca_deploy/cert/manager.crt
client_key = /etc/virtcca_deploy/cert/manager.key

external_ca.crt 为外部CA证书,用于验证外部接口调用者身份 ca.crt 为内部CA证书,用于管理节点manager和计算节点compute通信身份校验 server_cert/server_key 为管理节点作为服务器使用证书和私钥 client_cert/client_key 为管理节点作为客户端使用证书和私钥

配置root用户登录密码

virtcca-deploy-tool --node manager set-password

配置私钥密码,若server_keyclient_key口令一致,仅配置all即可,否则分别配置

virtcca-deploy-tool --node manager set-ssl-password --key-type all
virtcca-deploy-tool --node manager set-ssl-password --key-type server
virtcca-deploy-tool --node manager set-ssl-password --key-type client

启动运行virtcca-manager

systemctl start virtcca-manager

计算节点配置运行virtcca-compute

/etc/virtcca_deploy/virtcca_deploy.conf中配置管理节点域名、虚拟机镜像路径、证书路径和挂载的离线yum源权限,要求指定路径支持virtcca用户具备读写权限。

[DEFAULT]
manager = compute01
cvm_image_path = /var/lib/virtcca_deploy/qcow2

[COMPUTE]
ca_cert = /etc/virtcca_deploy/cert/ca.crt
server_cert = /etc/virtcca_deploy/cert/compute.crt
server_key = /etc/virtcca_deploy/cert/compute.key
client_cert = /etc/virtcca_deploy/cert/compute.crt
client_key = /etc/virtcca_deploy/cert/compute.key
agent_cert = /etc/virtcca_deploy/cert/agent.crt
agent_key = /etc/virtcca_deploy/cert/agent.key
iso_repo = /dev/sr0

server_cert/server_key 为计算节点作为服务器使用证书和私钥 client_cert/client_key 为计算节点作为客户端使用证书和私钥 agent_cert/agent_key 为计算节点虚机内部agent使用证书和私钥

配置计算节点私钥密码,若server_keyclient_keyagent_key口令一致,仅配置all即可,否则分别配置

virtcca-deploy-tool --node manager set-ssl-password --key-type all
virtcca-deploy-tool --node manager set-ssl-password --key-type server
virtcca-deploy-tool --node manager set-ssl-password --key-type client
virtcca-deploy-tool --node manager set-ssl-password --key-type agent

启动运行virtcca-compute

systemctl start virtcca-compute

配置虚拟机运行环境和虚拟机镜像

在计算节点通过执行下面脚本自动安装libvirt、qemu等组件

cd scripts
bash tmm_cvm_env_setup.sh

注: 1.检查libvirt、qemu权限设置,确保计算节点能够正常运行机密虚机 2.检查系统防护墙和selinux配置,管理节点使用5001端口,计算节点使用5000端口,确保对应端口能够正常访问

通信矩阵

源设备:机密虚机运维部署管理节点 源IP地址:机密虚机运维部署管理节点IP地址 源端口:1024~65535(默认值5001) 目的设备:机密虚机运维部署计算节点 目的IP地址:机密虚机运维部署计算节点IP地址 目的端口(侦听):5000 协议:TCP 端口说明:用于机密虚机运维部署管理节点和计算节点间机密虚机运维命令交互 侦听端口是否可更改:否 认证方式:TLS 加密方式:TLS_AES_256_GCM_SHA_384 所属平面:控制面 版本:所有版本 特殊场景:无