我有一个运行全新安装的 Fedora 15 的机器。我在它上面安装了 TigerVNC 服务器,在我的 Windows 机器上安装了客户端。
我已经添加-A INPUT -m state --state NET -m tcp -p tcp --dport 5900 -j ACCEPT
到/etc/sysconfig/iptables
然后,添加到/etc/sysconfig/vncservers
: VNCSERVER="1:UNAME" VNCSERVERARGS[1]="-geometry 1024x768"
然后我尝试启动服务器,但我得到job failed. See bla bla for details
((提到一些我不知道找到的文件))
我究竟做错了什么?
-谢谢!
iptables-nvL:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
173 12044 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
1518 85858 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:5900
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT 1613 packets, 146K bytes)
pkts bytes target prot opt in out source destination``
系统控制:
vncserver.service loaded failed failed LSB: start|stop|restart|try-restart|status|force-reload vncserver
答案1
“1:user”告诉vnc服务器,用户名user映射到显示1,因此通过vnc访问该用户的端口号是5901。
注意:“默认情况下,VNC 使用编号为 5900 的端口加上显示编号。在本示例中,显示为 1,因此端口号为 5901。
答案2
我认为有两个问题。问题之一是您的防火墙规则错误。它没有解释这service vncserver start [failed]
一点,所以你可能还有另一个问题。请发布bla bla
.
查看规则INPUT
中的链iptables
:它们是按顺序处理的,因此当您尝试在端口 5900 上打开连接时,内核会显示:嗯,不是 RELATED 或 ESTABLISHED,不是 icmp,不是环回,不是到端口 22,啊哈REJECT 规则匹配,故事结束。您需要在 REJECT 规则之前添加端口 5900 的规则(就在端口 22 的现有规则之后)。
假设您确实想要打开 VNC 端口,这意味着包括您的 VNC 密码在内的所有内容都将以明文形式在您的 LAN 上传输。如果这是一个问题,您可以通过 SSH 建立 VNC 隧道(我不知道如何在 Windows 端进行设置)。