Настройка VNC консолей на работу с TCP в Proxmox VE.
В Proxmox VE версии 2 консоль VNC открывается через unix сокет. С точки зрения безопасности это хорошо, но иногда в угоду удобству или еще ради чего, хочется повесить консоли на tcp-порту. Описываю легкий способ как это сделать.Открываем
# vi /usr/share/perl5/PVE/QemuServer.pm
находим строку
push @$cmd, '-vnc', "unix:$socket,x509,password";
коментируем её и следом за ней вставляем строку
push @$cmd, '-vnc', "10.101.14.1:5$vmid";
В качестве bind адреса используем свой адрес, а в качестве уникальности порта используем переменную $vmid в которой хранится идентификатор виртуальной машины.
При запуске машин, vnc консоли будут навешиваться на указанный адрес
# netstat -tanp |grep kvm
tcp 0 0 10.101.14.1:11010 0.0.0.0:* LISTEN 12272/kvm
tcp 0 0 10.101.14.1:11011 0.0.0.0:* LISTEN 12296/kvm
tcp 0 0 10.101.14.1:11012 0.0.0.0:* LISTEN 12319/kvm
tcp 0 0 10.101.14.1:11013 0.0.0.0:* LISTEN 12335/kvm
Позже я узнал что можно в конфигурационные файлы дописывать любые аргументы которые будут переданы kvm в порцессе запуска машины. Задача упростилась в разы. Теперь чтобы привязать VNC консоль к TCP порту, нужно в файл конфигурации машины прописать одну строчку.
# vi /etc/pve/qemu-server/101.conf
args: 10.101.14.1:100
С такой конфигурацией виртуальная машина запустится с VNC консолью привязанной к ip-адресу 10.101.14.1 на порту 6000 (стандартный 5900 + 100 указанные в параметре)
Вот и всё.
На главную "Virtualizing Linux"
Комментариев нет:
Отправить комментарий