
比如5901、5902、5903、5904
这个是可以设置的,根据你的设置就可以连接对应的vnc服务
希望可以帮助你 请采纳 谢谢
vnc的默认端口是5901,这个说法是不对的。vnc并不是只有一个端口。
以前另一个文章介绍了nvcserver的配置用户的过程,里面提到了桌面号,这个桌面号就可以端口有密切关系
先看看这个配置
VNCSERVERS="1:oracle 2:root"
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -nohttpd"
......
这里是摘自/etc/sysconfig/vncservers里的一段。 这里就配置了2个桌面,一个桌面号是1, 一个是2.
vncserver在调用的时候,会根据你的配置来启用server端的监听端口, 从5900开始,加上你的桌面号,比如这里的oracle就是5901,root就是5902
所以通过这里的桌面号也是可以达到我们的目的的,根据你的目标端口来设定用户的周面好,虽然可以解决,但是总是感觉有些没有拉干净的感觉,这不是 这次的研究内容,还是找个痛快的方式吧。
这次的研究主要就是颠覆这样的默认规则,直接的深入进去,我要直接修改5900+为15900+
在网上没有找到比较好的方法和文档,自己动手吧
从vncserver这个启动命令开始吧,
[root@redflag1 ~]# which vncserver
/usr/bin/vncserver
[root@redflag1 ~]# file /usr/bin/vncserver
/usr/bin/vncserver: a perl script text executable
[root@redflag1 ~]# grep "59" /usr/bin/vncserver -n
18:# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
118:$vncPort = 5900 + $displayNumber
238:# n is taken if something is listening on the VNC server port (5900+n) or the
257:# (5900+n) or the X server port (6000+n).
274: if (!bind(S, pack('S n x12', $AF_INET, 5900 + $n))) {
经过这几个回合,解决方法已经大白于天下了。
这里启动的脚本hard code了5900,我们可以替换这里就OK了
先定义一个$default_port=15900
然后替换118和274行的5900为$default_port就可以了
现在启动服务
[root@redflag1 ~]# service vncserver restart
查看端口
[root@redflag1 ~]# netstat -l | grep 159
tcp 0 0 *:15901 *:* LISTEN
tcp 0 0 *:15902 *:* LISTEN
已经成功了。用vncviewer链接一下。可以了
vnc的默认端口是自己配置的,并不是这有一个端口号。通过打开/etc/sysconfig/vncservers。 这里就配置了2个桌面,一个桌面号是1, 一个是2.这里的配置的参数 VNCSERVERS="2:root" VNCSERVERARGS[2]="-geometry 1280x800"就可以看出,这里就配置了2个桌面,一个桌面号是1, 一个是2.还有远程桌面的分辨率想要修改vncserver的配置,先找配置文件路径 [root@jtsyb01 longrise]# which vncserver /usr/bin/vncserver然后看看这个配置文件的类型, [root@jtsyb01 longrise]# file /usr/bin/vncserver /usr/bin/vncserver: a /usr/bin/env perl script text executable然后可以了解到的基本信息是可以通过text类型文件通过查找以前配置的端口,我这边配置的是80端口 [root@jtsyb01 longrise]# grep "80" /usr/bin/vncserver -n 84: "xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &n". 222:$vncPort = 8001 + $displayNumber 419: if (!bind(S, pack('S n x12', $AF_INET, 8001 + $n))) {通过终端可以看到我这边以前的是8001端口为基础端口,通过修改222行的vncport和419行的数字8001,修改之后保存文件重启vncserver服务,就成功修改了vnc的端口号了最后可以查看端口情况: [root@jtsyb01 longrise]# ps -ef|grep vnc root 17134 1 0 May23 ? 00:13:00 /usr/bin/Xvnc :1 -desktop jtsyb01:1 (longrise) -auth /root/.Xauthority -geometry 1024x768 -rfbwait 30000 -rfbauth /root/.vnc/passwd -rfbport 8002 -fp catalogue:/etc/X11/fontpath.d -pn可以查看端口运行的是8002端口。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)