我想使用virt-manager来pipe理运行在远程主机上的libvirt / kvm虚拟机,但是我用ssh来进入主机的方法有点复杂。 我需要使用自定义端口以及多个代理转发。 例如,要使用默认的身份validation证书并执行以下命令,进入该KVM盒子:
ssh -At -p 4188 www.example.com ssh -At -p 8854 virt-host.internals.int
Virtmanager远程连接对话框看起来相当原始,我想知道是否有一个解决方法?
我想你有两个问题。
1)设置一个通过堡垒主机的单个ssh连接。
这与我如何处理Multihop SCP传输基本上是一样的问题。 所以先去阅读。
2)现在您已经知道如何在命令行上更加透明地处理它,您需要设置它,以便在没有CLI选项的情况下进行。
设置一个~/.ssh/config文件的用户做ssh'ing。 (几乎?)任何你可以在ssh命令行中指定的东西,你可以在configuration文件中指定。
为此,你会想要的东西沿线:
host www.example.com port 4188 forwardagent yes host virt-host.internals.int proxycommand ssh www.example.com nc virt-host.internals.int 8854
我没有testing过,所以语法可能会closures,但它应该让你朝着正确的方向前进。
请注意,它假设您可以从原始客户机parsing名称virt-host.internals.int。 这可能不是这种情况(只有内部dns),在这种情况下,你将不得不以某种方式(例如/etc/hosts ,使用ip而不是主机名等)进行混淆。