TA的每日心情 | 难过 昨天 00:16 |
---|
签到天数: 370 天 [LV.9]以坛为家II
|
前提:使用virsh管理kvm虚拟机的时候出现需要使用密码
一、修改libvirtd配置
1.1修改 /etc/libvirt/libvirtd.conf :- listen_tls = 0 #来禁用该伪指令(因为没有配置任何 TLS 证书)。否则,libvirtd 守护程序启动会失败
- listen_tcp = 1 #来启用该伪指令
- tcp_port = "16509" #默认端口
- auth_tcp = "sasl" #配置伪指令设置为 sasl,以启用通过 TCP 进行 SASL 认证
- #如果启用tls,配置如下
- auth_tls = "sasl"
复制代码 1.2 修改/etc/sysconfig/libvirtd- #开启tcp端口
- LIBVIRTD_ARGS="--listen"
复制代码 二、添加sasl2配置
2.1 设置加密方式 /etc/sasl2/libvirt.conf- mech_list:digest-md5
- sasldb_path: /etc/libvirt/passwd.db
复制代码 2.2 安装所需依赖包:- #一般我会把所有包装上 yum install cyrus-sasl*
- yum install cyrus-sasl-md5-2.1.26-21.el7.x86_64 cyrus-sasl-devel-2.1.26-21.el7.x86_64
复制代码 三、重启libvirtd- #如果调试或者没生效使用:libvirtd --daemon --listen --config /etc/libvirt/libvirtd.conf
- systemctl restart libvirtd
复制代码 四、添加用户
注意这里必须是libvirt,这是application的名字,只有输入libvirt,才会使用配置/etc/sasl2/libvirt.conf,结果才会写到/etc/libvirt/passwd.db- # saslpasswd2 -a libvirt admin
- Password:
- Again (for verification):
复制代码 如果使用qemu+tcp://连接,则应该enable digest-md5,这样交互会被加密。
如果使用qemu+tls://连接,则应该disable digest-md5,这样交互就不会被md5加密一次,然后再被TLS加密一次- # virsh -c qemu+tcp://localhost/system nodeinfo
- Please enter your authentication name:
- Please enter your password:
- CPU model: x86_64
- CPU(s): 24
- CPU frequency: 1999 MHz
- CPU socket(s): 1
- Core(s) per socket: 6
- Thread(s) per core: 2
- NUMA cell(s): 2
- Memory size: 134171180 KiB
复制代码 注意:如果 KVM 主机正在运行防火墙,请确保该防火墙允许传入的流量通过 libvirtd 守护程序 TCP 侦听端口。在缺省情况下,该侦听端口为 16509
文章转载自:https://blog.51cto.com/foxhound/2051024
|
|