Я использую KVM-хост с тремя клиентскими виртуальными машинами. Два сервера Ubuntu и один сервер Windows R2 2008.
Для всех трех виртуальных машин в конфигурационном XML-файле включена опция VNC:
<graphics type='vnc' port='5910' autoport='no' listen='0.0.0.0' keymap='de'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<graphics type='vnc' port='5911' autoport='no' listen='0.0.0.0' keymap='de'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<graphics type='vnc' port='5912' autoport='no' listen='0.0.0.0' keymap='de'>
<listen type='address' address='0.0.0.0'/>
</graphics>
И данные порты открываются при запуске:
user@kvm-host:~$ netstat -tpln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1061/rpcbind
tcp 0 0 192.168.100.1:53 0.0.0.0:* LISTEN 2811/dnsmasq
tcp 0 0 0.0.0.0:5269 0.0.0.0:* LISTEN 1844/beam
tcp 0 0 0.0.0.0:5910 0.0.0.0:* LISTEN 4497/qemu-system-x8
tcp 0 0 0.0.0.0:40758 0.0.0.0:* LISTEN 1844/beam
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1680/sshd
tcp 0 0 0.0.0.0:5911 0.0.0.0:* LISTEN 4532/qemu-system-x8
tcp 0 0 0.0.0.0:5912 0.0.0.0:* LISTEN 2844/qemu-system-x8
tcp 0 0 0.0.0.0:5280 0.0.0.0:* LISTEN 1844/beam
tcp 0 0 0.0.0.0:5281 0.0.0.0:* LISTEN 1844/beam
tcp 0 0 0.0.0.0:38724 0.0.0.0:* LISTEN 1131/rpc.statd
tcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTEN 1844/beam
tcp6 0 0 :::111 :::* LISTEN 1061/rpcbind
tcp6 0 0 :::4369 :::* LISTEN 1753/epmd
tcp6 0 0 :::22 :::* LISTEN 1680/sshd
tcp6 0 0 :::52896 :::* LISTEN 1131/rpc.statd
И я добавил в iptables правило:
sudo iptables -L
ACCEPT tcp -- anywhere anywhere tcp dpt:5911
ACCEPT tcp -- anywhere anywhere tcp dpt:5910
ACCEPT tcp -- anywhere anywhere tcp dpt:5912
Но я не могу подключиться через vnc удаленно! Я могу подключиться на localhost через telnet к порту 5910. Локальное telnet-соединение возвращает RFB 003.008. Но при подключении извне время подключения заканчивается.
Что я могу сделать?