Доступ к виртуальным машинам KVM через VNC без переадресации портов по SSH

10

Можно ли получить доступ к виртуальным машинам без необходимости перенаправлять удаленный порт и VNC на локальный хост? Я хотел бы иметь возможность VNC на сервер KVM и видеть отображение виртуальных машин.

Shoan
источник

Ответы:

12

Я нашел ответ после некоторого поиска и нашел следующее в /etc/libvirt/qemu.conf

# VNC is configured to listen on 127.0.0.1 by default.
# To make it listen on all public interfaces, uncomment
# this next option.
#
# NB, strong recommendation to enable TLS + x509 certificate
# verification when allowing public access
#
vnc_listen = "0.0.0.0"

Я раскомментировал вышеупомянутую строку и перезапустил, libvirtdчтобы обнаружить, что я все еще не мог получить доступ к VNC по сети. На этот раз виновник был iptables. На Centos я system-config-firewall-tuiразрешал доступ к VNC.

Shoan
источник
Именно то, что я искал.
Хайко Рупп,
Не забудьте разблокировать порты, защищенные брандмауэром, на узле KVM (гипервизоре), чтобы, например, иметь доступ к вашему серверу VNC firewall-cmd --permanent --add-port=5900/tcp; firewall-cmd --reload. Вы можете увидеть эти порты открытыми на хосте KVM (как LISTEN) в выходных данных команды netstat -pantили ss -pant.
Милан Керслагер
после изменения этой опции в qemu.conf, какую службу вы бы перезапустили?
Филипп Гачу
1

если вы подключаете VNC к узлу KVM, это означает, что на нем должен быть запущен X-сервер (что совершенно необходимо сделать на гипервизоре, но это ваш выбор). Поскольку у вас уже есть рабочий стол, ничто не помешает вам запустить его virt-viewerили virt-managerполучить прямой доступ к гостевой консоли. С другой стороны, если виртуальная машина qemu-kvm работает с поддержкой VNC, вы можете просто напрямую подключиться к консоли VNC виртуальной машины.

dyasny
источник
У меня не работает X-сервер на хосте KVM. Вы можете создать виртуальные машины с выводом vnc, заставив гипервизор создать сервер vnc для просмотра консоли виртуальной машины. Это очень полезно в не-Unixy ОС, таких как Windows. Но по умолчанию сервер vnc прослушивает только localhost.
Шоэн
Это именно то, что я имел в виду во второй части моего поста. Полагаю, вы могли бы сформулировать вопрос немного лучше, чтобы решить проблему того, что прослушиватель VNC по умолчанию указывает на локальный хост, а не на ловушку 0.0.0.0. Это, конечно, сделано по соображениям безопасности
дясный
Во время вопроса было неочевидно, что я искал, пока не нашел ответ. Вы правы, что вопрос должен был быть лучше.
Шоэн