分享

修改VNC的服务端口 | VNC 端口 RHEL6.1

 richsky 2012-05-05
修改VNC的服务端口 | VNC 端口 RHEL6.1
2011-11-30 15:15

       VNC的服务端口为5900,新增一个连接" :1" ,则该连接端口为5900+1=5901。但是在只有一个公网地址的公司网络中,可能会有多台服务器需要用到VNC则5900系列端口会不够用。VNC的服务端口没有在其配置文件中,幸好,可以在其脚本中修改。

      首先找到vncserver的脚本先修改服务端

[root@l~]# grep "59" /usr/bin/vncserver -n
21:#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
222:$vncPort = 5900 + $displayNumber;
374:# n is taken if something is listening on the VNC server port (5900+n) or the
393:# (5900+n) or the X server port (6000+n).
410:    if (!bind(S, pack('S n x12', $AF_INET, 5900 + $n))) {
//可以看到该文件中只有222和410两行的5900数字是其作用的,其他均为注释

[root@l~]# vi /usr/bin/vncserver

//于是将这两行的5900替换为你想要的新端口,我这里改为17050

$vncPort = 17050 + $displayNumber;

.........

   if (!bind(S, pack('S n x12', $AF_INET, 5900 + $n))) {

..........

[root@longzw ~]# vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 17050 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 17051 -j ACCEPT

//开放防火墙,因为vnc用的了" :1"连接所以17051也要用到。这里我已经将公网地址的1705*都映射到此服务器上

//然后就是重启iptables生效

[root@longzw ~]# service iptables restart
iptables:清除防火墙规则:[确定]
iptables:将链设置为政策 ACCEPT:filter nat [确定]
iptables:正在卸载模块:[确定]
iptables:应用防火墙规则:[确定]

[root@longzw ~]# service vncserver restart
关闭 VNC 服务器:1:root [确定]
......

[确定]

[root@longzw ~]# netstat -tnl | grep 17051
tcp        0      0 0.0.0.0:17051               0.0.0.0:*                   LISTEN     
//看下17051端口已起来了

   此时在远端用vnc client软件(我的是vncviewer)输入ip:17051,这里" : "后面跟的是" :1 "的实际端口。

  如果还是无法正常连接,还需要修改vnc client软件相对于的vnc server的配置。我用的realvnc的server在开始菜单中有"server 配置"的选项,把“连接”中的端口都修改为"17050"-即服务器端VNC的服务端口,因为连接过去时会自动加1。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多