You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SSH连接远程libvirt提示No worthy mechs found SASL错误排查

libvirt连接oVirt Node节点报SASL协商失败错误解决方案

问题现象

  • 服务器运行oVirt Node系统,已完成SSH密钥配置,可通过ssh user@server -i ssh-privkey正常登录服务器
  • 使用virsh、virt-manager、Terraform libvirt provider尝试连接qemu+ssh//user@host/system?keyfile=ssh-privkey地址时均报错:

authentication failed: Failed to start SASL negotiation: -4 (SASL(-4): no mechanism available: No worthy mechs found)

  • 服务端开启libvirt --listen --verbose模式抓日志,仅输出如下错误信息:

error : virNetSocketReadWire:1792 : End of file while reading data: Input/output error

  • 已排查防火墙策略,相关端口全部放通,按照官方TLS配置指引部署客户端、服务端TLS证书后问题仍未解决

根因分析

该问题和TLS配置无关,核心诱因为oVirt Node默认搭载的vdsm服务会修改libvirt默认配置:

  • vdsm会在/etc/libvirt/libvirtd.conf配置文件中写入auth_unix_rw="sasl"参数,强制所有libvirt连接(包括SSH隧道连接)走SASL认证,而默认环境未配置对应SASL认证机制,因此报No worthy mechs found错误
  • vdsm会修改libvirt PKI证书文件的默认存放路径,按照官方默认文档配置TLS证书不会被libvirt加载,属于无效排查方向

解决方法

编辑服务端/etc/libvirt/libvirtd.conf配置文件,删除或注释掉auth_unix_rw="sasl"配置项,重启libvirtd服务后,即可直接使用SSH私钥通过qemu+ssh方式正常连接,无需额外配置SASL或TLS。


内容的提问来源于stack exchange,提问作者meustrus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 10:30:39