linux vncserver vncserver命令
这篇文章给大家聊聊关于linux vncserver,以及vncserver命令对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
在Linux中使用VNCServer是否安全
VNC可以对数据进行压缩,使得传输的数据量比直接用SSH加密的小,但是缺点有一到两次机会让同一网段的计算机用sniffer窃听到用户名和密码。认证之后的数据可以进行加密传输,所以使用过程中如果经过配置,则是安全的,否则传输内容不能保证完全保密。必要时可以通过SSH进行加密端口映射来保证传输用户名和密码的时候也是加密的,这一操作占用的额外带宽是极少的。
至于SSH保护VNC的安全,需要使用SSH的端口转发功能。一般在客户端使用的是Linux的时候,可以先用SSH建立链接,语法上应当添加“-L本地端口:本地地址:远程端口远程地址”这一附加参数,比如说本地是a.b.c.d,服务器是d.c.b.a,要转发的端口本地的是5901,远程的也是5901,那么命令应当是:
ssh-L 5901:a.b.c.d:5901 d.c.b.a
其他的参数多数可以同时使用。执行完毕后就已经创建了服务器5901端口和本地5901端口的加密隧道。假设要链接的服务器上运行的VNC桌面号是1,则继续执行如下命令:
vncviewer d.c.b.a:1
这样打开的VNC窗口所有数据都经过了SSH的加密。
如果客户端是Windows,使用putty相对来说麻烦一些,在putty.exe的主界面上选择Connection下的SSH,再选其下的Tunnels,里面的SourcePort是本机端口,Destination是远程地址和端口,地址和端口之间以“:”隔开。然后再运行vncviewer来链接即可,但是由于我不是很经常使用Windows与服务器进行链接,后一种方法不保证绝对好用。^_^
怎样实现重启linux后自动启动vncserver服务
linux开机自动启动vncserver服务,需要先保证VNC安装无问题以及各种配置以及防火墙正常,下面是vncserver服务安装、配置以及设置自启动的步骤:
首先需要检查一下服务器是否已经安装了VNC服务,检查服务器的是否安装VNC的命令如下:
rpm-qa| grep vnc
使用了上面的命令我这边返回的信息是下面的(如果没有任何显示,则说明系统没有安装vnc包)
tigervnc-1.1.0-5.el6.i686
tigervnc-server-1.1.0-5.el6.i686
如果没有安装vnc可以使用下面命令进行安装:
yum install tigervnc tigervnc-server
接下来就是安装之后的配置问题了。
使用下面的命令编辑配置文件:
vi/etc/sysconfig/vncservers
使用上面命令的时候,可能您服务器上面已经存在这个配置文件,也可能您服务器上面不存在这个配置文件,将下面的内容添加到配置文件内:
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 800x600"
下面这段是上面所讲配置文件注解,做参考之用:
#这个是配置远程桌面登录的用户名,如果两个用户,则使用VNCSERVERS="1:user1 2:user2",,
依次类推,默认情况下,1:user1对应5901,2:user2对应5902(VNC的默认监听端口是5900,监听端口规则为590+usernumber),如下
VNCSERVERS="usernumber:myusername"
#下面这项配置为登录桌面配置,其中的“1”为用户序号,800x600为分辨率,-nolisten tcp为阻止tcp包,-localhost代表只监听本地,
VNCSERVERARGS[1]="-geometry 800x600-nolisten tcp-localhost"
如果想阻止http包,可以使用如下配置
VNCSERVERARGS[1]="-geometry 800x600-nolisten tcp-nohttpd-localhost"
使用下面的命令为vnc设置密码(需要使用su切换到要设置vnc密码的用户上,比如:su user1,其中user1就是在上面配置文件内写的帐号)
vncpasswd
设置好密码之后,就是启动VNC服务了,启动VNC服务的时候也需要用su user1(user1就是在上面配置文件内写的帐号)切换到要启动服务的帐号上(很多朋友在使用DirectSpace默认的桌面VNC的时候,遇到无法连接“10061错误”,即可在ssh下输入下面命令解决!)
vncserver
其他命令,比如重启VNC服务就用下面的命令:
service vncserver restart
设置VNC服务开机启动用下面的命令:
chkconfig vncserver on
在一些minimal系统里,即使英文也会出现方框乱码,请使用本处命令修正:yum-y install fontforge
其它说明:
设置完毕后使用servers vncserver start(如果不能启动,检查软件是否安装正常,检查/etc/rc.d/init.d目录是否存在vncserver控制脚本),
启动完毕后使用netstat-nat查看监听端口(默认为5901,5902,5903等),如果开启了防火墙,则需要配置规则允许对应端口tcp包通过。
参考配置:iptables-I INPUT 1-p tcp--dport 5901-j ACCEPT(其中-I INPUT 1代表插入一条规则,这条规则的位置是1,详情请查阅iptables相关配置)
Linux的VNCServer的默认端口是多少
如果你的vnc访问:192.168.1.203:1那么他访问服务器的真正端口是5900+1=5901(5900是vnc的默认端口)
接下来
编辑vi/etc/sysconfig/iptables
在里边加入
-A RH-Firewall-1-INPUT-m state--state NEW-m tcp-p tcp--dport 5901-j ACCEPT
-A RH-Firewall-1-INPUT-m state--state NEW-m tcp-p tcp--dport 5902-j ACCEPT
等等
grep vnc/etc/services
vnc-server 5900/tcp# VNC Server
vnc-server 5900/udp# VNC Server
拓展资料:
1.VNC Server是一般 Linux发行版都会附带的 VNC服务器软件。
2.vncserver是一个为了满足分布式用户共享服务器上面的资源,而在服务器上开启的一项服务,对应的客户端软件为vncviewer;它也可以是不同的操作系统,比如利用windows远程访问linux系统资源的一种远程访问方式。
3.Linux[2]操作系统是UNIX操作系统的一种克隆系统,它诞生linux系统于1991年的10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增长。
4.Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。
5.Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。
6.Linux以它的高效性和灵活性著称,Linux模块化的设计结构,使得它既能在价格昂贵的工作站上运行,也能够在廉价的PC机上实现全部的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。
7.Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT一样,允许我们使用窗口、图标和菜单对系统进行操作。
修改该端口的步骤如下:
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端口。