最近一个项目需要到电信机房去部署,为了最大程度的避免以后的辐射,自然就想到要配置远程控制。
机器的操作系统是RHEL5。虽然RHEL5也支持XDMCP等远程桌面协议,但是发现配好XDMCP后,本地局域网访问没问题,但是出了电信机房就连不上(网上貌似都说是端口问题,但是后来试过端口全开,甚至防火墙啥的都关掉,还是连不上,faint)。幸好当时配了SSH,连上去后试着配了下VNC,居然可以连(皆大欢喜)。
RHEL5默认安装了VNC,只要配置一下服务端就可以用了。当然Windows上的客户端还是要安装的。
VNCServer 配置:
1. 基本配置
1)以某个用户登陆(这里以myuser为例)
2)打开终端执行:vncserver
如果是第一次运行,会在/home/myuser目录下(如果是root,则在/root目录下)生成一个.vnc目录,里面会生成一个xstartup脚本文件。
默认情况下vnc只支持命令行模式。如果要用桌面模式,则取消xstartup文件中的两行注释即可
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
3)设定登陆密码
在terminal中执行:vncpasswd命令即可设定密码
这个密码是登陆vnc的密码,和用户在操作系统中的密码可以不一样。
4)重启vnc桌面:
运行命令:vncserver –kill :编号 来关闭某个vnc桌面
这个编号表示桌面号,从1开始。
然后再运行vncserver来打开vnc桌面
2. Linux启动后自动运行VNCServer
1) 在 System>Administration>Services 中把 vncserver 打勾。
2) 打开配置文件/etc/sysconfig/vncservers,去掉下面这行的注释
VNCSERVERS="1:root" VNCSERVERARGS[1]="-geometry 800x600" (这里注意一下,默认系统配置里有 –nolisten tcp 和 –nohttpd ,这两个是阻止tcp和HTTP方式VNC登陆的,当然要删掉);1表示VNC以桌面1运行。
如果要加入myuser用户。
则在下面添加:VNCSERVERS="2:myuser " VNCSERVERARGS[2]="-geometry 800x600"
依此类推。
或者也可以写在一行:VNCSERVERS="1:root 2:myuser "(注意空格,后面的参数都一样)
3)如果需要从外网控制内网的某台Linux,则需要打开防火墙相应的端口,并在路由器上进行端口映射。vnc给浏览器的端口是5800+N,给vncviewer的端口是5900+N,N是设置的display号
Windows 客户端 VNC Viewer 的配置: 1. 从 http://www.realvnc.com/download.html 下载 VNC Free Edition for Windows Version 4.1.2 2. 打开 VNCViewer : 填入VNCServer 的IP:编号(1或2或...) 3. VNCViewer 切换全屏模式:F8