Linux下VNC配置使用总结:开启+桌面配置+安全访问
操作环境:CentOS 5.3 + Windows XP SP3 32bit + RealVNC 4.1.2 i386 + TigerVNC.
参考:潇湘隐者-Linux系统VNC配置实践总结,萨米的博客-VNC配置,孤叶风铃-Linux 开启VNCSERVER,远程桌面设置:利用putty进行vnc + ssh tunneling
VNC是基于RFB(Remote FrameBuffer)的一款开源的远程桌面控制软件。目前,原来的AT&T版本已经不再使用,因为更多有重大改善的分支版本已经出现,像是RealVNC,VNC tight 和UltraVNC。Real VNC 是当前最活跃和强大的主流应用。
一、安装VNC Server
CentOS 5.3默认已经安装vnc与vnc-server,对应的是realvnc的4.1.2版本。
对于没有安装vnc的Linux系统可以:
1、yum安装,CentOS 5.3 yum源自带了vnc与vnc-server;
[root@localhost ~]# yum install vnc [root@localhost ~]# yum install vnc-server
2、可以从realvnc官网下载,解压归档后得到两个rpm包,安装vnc-server即可。
二、配置VNC Server
VNC Server的配置文件为 /etc/sysconfig/vncservers,在文件末尾添加以下两句:
VNCSERVERS="2:hubery"
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
#桌面分辨率为800*600 ,阻止图形桌面通过TCP端口 ,不能通过WEB访问vncserver,不能通过不安全的方式从远程登录。
关于参数配置说明:
1:-geometry 表示桌面分辨率,默认为1024x768。
2:-nohttpd 表示不监听HTTP端口(58xx)。
3:-nolisten tcp 表示不监听TCP端口(60xx)
4:-localhost 只允许从本机访问。
5:AlwaysShared 默认只允许一个VNCVIEWER连接,此参数表示同一个显示端口允许多用户同时登录.
6:-depth 表示色深,参数有8,16,24,32.
7: SecurityTypes None 登录不需要密码认证VncAuth默认值,要密码认证。
由于root用户使用的是第一个VNC Server,我们添加Server是从2开始的,所以这里桌面号是2,用户是hubery。
VNC使用的起始端口是5900和5800,桌面号是2时,VNC Viewer访问的端口是5902,WEB方式(java)访问的端口号是5802。
root用户的配置也是这个文件,若要配置需要在文件末尾同样加上类似以上两句。
以上配置,vncserver将在服务启动时打开vncserver :2。
三、防火墙配置
如果不熟悉防火墙iptables,可以直接关掉(重启失效):
[root@localhost ~]# iptables -L
或
[root@localhost ~]# service iptables stop
但一般不建议这样做,我们需要在防火墙里打开某些端口:
[root@localhost ~]# iptables -I INPUT -p tcp --dport : -j ACCEPT
[root@localhost ~]# iptables -I INPUT -p udp --dport : -j ACCEPT
同样,上述操作在计算机重启之后也会失效,以下操作将配置保存到配置文件,使其永久生效:
[root@localhost ~]# service iptables save
四、启动VNC Server
在启动Server之前需要给远程控制设置一个访问密码:
[root@localhost ~]# su hubery
[hubery@localhost root]$ vncpasswd
Password:
Verify:
[hubery@localhost root]$ vncserver :
xauth: creating new authority file /home/hubery/.Xauthority New 'localhost:2 (hubery)' desktop is localhost: Creating default startup script /home/hubery/.vnc/xstartup
Starting applications specified in /home/hubery/.vnc/xstartup
Log file is /home/hubery/.vnc/localhost:.log [hubery@localhost root]$
关闭某个vncserver:
vncserver -kill :
五、VNC Viewer访问
我的VNC客户端是在Win XP下安装的TigerVNC Viwer,可以从其官网免费下载。安装VNC Viewer后以 Server_IP:桌面号 的形式访问。
六、桌面配置(可选)
以上配置登陆之后得到的是twm桌面,看起来像一个终端,但它还是桌面,我们可以从命令行启动桌面应用,例如firefox,但是一般人是用不习惯、不会去用它的,可以换其它的桌面吗?当然可以,其配置文件为(用户根目录下)~/.vnc/xstartup,将twm修改为gnome-session或startkde即可切换成gnome或kde。
#!/bin/sh # Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24++ -ls -title "$VNCDESKTOP Desktop" &
# twm &
gnome-session &
切换之后重启服务是必须的:
[root@localhost .vnc]# service vncserver restart
或
[root@localhost .vnc]# su hubery
[hubery@localhost .vnc]$ vncserver -kill :
Killing Xvnc process ID
[hubery@localhost .vnc]$ vncserver : New 'localhost:2 (hubery)' desktop is localhost: Starting applications specified in /home/hubery/.vnc/xstartup
Log file is /home/hubery/.vnc/localhost:.log [hubery@localhost .vnc]$
使用Viewer重新登陆,你会发现我们熟悉的桌面又回来了:
七、安全访问VNC(可选)
如果直接使用vncviewer来进行访问,有两点不利因素:
1. 口令传输是明文,很容易被侦听到.
2. 防火墙需要打开59xx端口,这在通常的单位里是不可能的.
幸运的是,我们有ssh这个强大的工具,象X11 Forwarding(另文论述),我们可以使用ssh隧道来保护通讯过程,下面就进行简单介绍.
我依然使用Win XP下的Tiger VNC做客户端,其实对于Linux下也是可以的(更简单)。
1、在Session下配置Host Name为Server IP,Port为SSH端口22;
2、在Connection-》SSH-》Tunnels配置Source port为VNC Server端口号5902,Destination为localhost:5902,并Add添加;
3、使用TigerVNC Viewer访问,地址现在是localhost:2。
至此,我们使用了加密的VNC,而且也不需要配置防火墙打开端口,也就是说使用ssh隧道在没有步骤三的情况下也是有效的。
Linux下VNC配置使用总结:开启+桌面配置+安全访问的更多相关文章
- Linux下VNC配置多个桌面和修改密码 不会当系统重启vnc失效
1:vncserver 2:iptables -I INPUT -p tcp --dport 5901 -j ACCEPT 客户端方式 3:iptables -I INPUT -p tcp --d ...
- linux下使用FreeRDP 连接 Windows 远程桌面
linux下使用FreeRDP 连接 Windows 远程桌面 简介 FreeRDP 是一款开源的远程桌面系统,支持多种平台, 在 ubuntu 中使用 FreeRDP 可以很方便的登录到 win ...
- Linux下PHP+MySQL+CoreSeek中文检索引擎配置
说明: 操作系统:CentOS 5.X 服务器IP地址:192.168.21.127 Web环境:Nginx+PHP+MySQL 站点根目录:/usr/local/nginx/html 目的:安装co ...
- Linux下SVN server 的使用及权限配置
[Linux下SVN server 的使用及权限配置] 参考:http://www.cnblogs.com/heinoc/p/3805779.html
- Linux下MyCat和MyCat_web的安装和配置
Linux下MyCat和MyCat_web的安装和配置 Mycat 是一个数据库分库分表中间件 Mycat web 可以对 Mycat进行监控,这里分享一下 Mycat web 的搭建过程 详细内容可 ...
- Linux下Apache2.2和PHP5的安装配置
Linux下Apache2.2和PHP5的安装配置 环境介绍 我安装使用的Linux版本为CentOS6.5最精简版,Apache为2.2.29,PHP版本为5.4.28. 系统安装 首先安装Cent ...
- Linux下,Tomcat启动成功,发现ip:8080访问失败
Linux下,Tomcat启动成功,发现ip:8080访问失败 Chasel_H 2018.04.23 20:47* 字数 195 阅读 566评论 0喜欢 3 相信很多人都和我一样,在Linux环境 ...
- VNC CentOS Linux下VNC Server远程桌面配置详解
VNC概述 VNC (Virtual Network Console)是虚拟网络控制台的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 ...
- linux下VNC的配置及使用
我们知道在windows里面有远程桌面(著名的有pcanywhere,网络人等)对吧,在linux下我们同样有这个东西,其中最流行的一种就是VNC,其实VNC是一种协议,它的全称是virtual ne ...
随机推荐
- jenkins如何获取text parameter多行的文本内容
如果是string的插件 可以直接获取 但text的不可以 如果用 echo %aaa% 这种方式进行打印的话 会发现只打印了第一行 最后的解决方案: 使用了python脚本 在python脚本里通过 ...
- Django日志系统
在Django中使用的日志系统是基于Python中的loggin模块. 首先简单介绍下logging. 一 Loggin模块简介 loggin模块主要包含以下四个部分: Loggers ...
- Cmd下修改文件访问控制权限
保证自己的磁盘分区格式是NTFS.FAT32是不行的. 一.Cacls.exe命令的使用 这是一个在Windows 2000/XP/Server 2003操作系统下都可以使用的命令,作用是显示或者修改 ...
- sqlserver使用SQL语句创建数据库登录对象、数据库用户以及对为该用户赋予操作权限
--创建登录名USE masterGO--PbMaster,密码123456CREATE LOGIN PbMaster with PASSWORD='1234GO --创建数据库用户USE E_Mar ...
- JFinal Model判断数据库某条记录的属性字段是否包含空值
如果做报表,一条记录中有空值,使用FreeMarker渲染word会报错,并把错误日志输出到Word中.所以需要之前判断下当前记录中属性值是否有空值. package com.huijiasoft.u ...
- MVC的Forms登录验证
第一步:修改web.config配置 在 <system.web>节点下加入配置:未登录的用户跳转到/Home/Login,登录后跳转到/Home/UserCenter,登录后票证记录到c ...
- java的eclipse的使用
1下载eclipse地址:www.eclipse.org/downloads/ 解压就可安装 注意: 这可能你是没有安装java运行环境(jre或jdk) 直接www.java.com,下载就行 下一 ...
- 3F - Lowest Common Multiple Plus
求n个数的最小公倍数. Input 输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数. Output 为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行.你可以假设最 ...
- (转)system.badimageformatexception 未能加载文件或程序集
“/xxxxx”应用程序中的服务器错误. ------------------------------------------------------------------------------- ...
- HTML&&css练习
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...