linux修改口令的命令
基于Linux平台实现不同权限的VNC用户登录方法
张妍;帅文明
【摘 要】服务器通常是公司的公共财产,不可能为一人所独有.为了让需要的人都可以登录使用服务器,常常要借助远程控制的方式对这些服务器进行管理.在Windows平台下想要管理linux平台,通常采用终端服务来实现远程控制,使用VNC服务实现多用户远程控制可大大提高管理效率.可以练习编程的手机游戏
c语言rand函数怎么用
【期刊名称】《通信电源技术》
【年(卷),期】jstl标签中value值的类型转换2014(031)001
【总页数】2页(P94-95)
【关键词】远程控制;VNC服务;多用户
【作 者】张妍;帅文明
【作者单位】广东工业大学,广东广州510006;广东工业大学,广东广州510006
怎么下载silverlight【正文语种】中 文
【中图分类】TP316
在公司局域网内,服务器是共有的财产,经常有多个用户需要登录到linux平台进行操作,但由于每个层级能接触到的内容都不尽相同,所以需要对不同的分组设置不同的权限,让各层级从不同权限用户登入linux平台,这样就需要配置VNC多用户。在此介绍一种简便的设置VNC不同权限多用户的方法。以下操作均在笔者的实验环境下进行,服务器操作系统为Red Hat Enterprise Linux 4,客户机操作系统为Windows XP。
1 VNC概述
VNC(Virt ual Net wor k Co mputing)是虚拟网络计算机的缩写,它是一套由英国剑桥大学AT&T实验室在2002年开发的轻量型的远程控制计算机软件,采用了GPL授权条款,任何人都可免费取得该软件。VNC是基于UNIX和Linux的免费的开源软件,远程控制能力强大,高效实用。软件分为两个部分:vncser ver和vncviewer。使用前,用户先将VNC server安装在被控端的计算机上,然后在主控端运行VNC vier wer来远程控制被控端。VN
C支持多种操作系统,如 Windows、Linux、Unix、Mac OS等,可将 VNC ser ver与VNC viewer分别安装在不同的操作系统中进行控制。
2 VNC服务的启动和基本配置
通常情况下,Red Hat Enter prise Linux默认附带VNC,可使用r p m-q vnc-ser ver命令检查已安装了何种版本。如果没有安装的话,可以去网上下载安装。
首先,如果是第一次使用vnc的话,你必须先通过其他方式进入Linux系统,然后创建一个vnc用户,开启vnc服务。可以使用vncserver命令来启动VNC服务,命令的格式为“vncserver:桌面号”,其中桌面号用数字表示,每个用户连接需要占用一个桌面,以此来区别到底是使用哪个用户来登录的,桌面号可以说是唯一的识别码。这里建议第一个创建的用户为r oot,如要启动编号为1的桌面可以执行命令:vncserver:1。第一次运行该命令的时候,系统会提示用户输入访问口令。口令会被加密保存在用户主目录下的.vnc子目录中的pass wd文件里,以后想修改密码的话也很简单,只需要输入vncpasswd就可以进行修改了。同时,系统还会在用户目录下的.vnc子目录中为用户自动建立xstartup配置文件,以后每次启动VNC服务时,都会读取该文件中的配置选项。
如果Linux服务器开启了防火墙功能,还需要设置允许TCP协议相应的端口通过或关闭防火墙功能,如可以使用以下命令允许桌面号为1的连接通过:iptables-I INPUT-p tcp-dport 5901-j ACCEPT。其 中桌面号1对应的端口是5901,2对应的端口是5902,依此类推。
要想更方便地使用VNC远程控制Linux系统,KDE和GNOME图形桌面环境无疑是一大助手。创建好vnc桌面号之后,想直接登录进入图形界面,则要对其用户目录下的.vnc/xstart up文件做一些修改——将第四行和第五行,即unset SESSION_MAN-AGER和exec/etc/X11/xinit/xinitrc前面的#号去掉,如图1所示。
图1 xstartup文档的修改
然后重新启动vncserver桌面号——使用命令vncserver-kill:1杀掉桌面号1,再用vncserver:1重新启动它。这样就成功配置好了一个桌面号为1的root用户了。配置好vnc用户之后,从安装了vnc viewer的机器登录时,只需在其中输入Linux所在主机名和桌面号,就会以桌面号对应的用户登入Linux系统了,如图2。
图2 VNC登陆Linux界面
3 VNC多用户配置
对于VNC多用户配置,笔者总结网上最为普遍的一种方法,就是修改配置文件/etc.sysconfig/vncser vers,首先将最后两排代码#VNCSERVERS="2:myuser na me"
#VNCSERVERARGS[2]="-geometry 800x600-nolisten tcp-nohttpd-localhost"
之间加入要配置的vnc多用户的信息,即:
#VNCSERVERS="2:myuser name"
VNCSERVERS="1:root 2:test1 3:test2"
VNCSERVERARGS[1]="-geometry 800x600"
VNCSERVERARGS[2]="-geometry 800x600"
VNCSERVERARGS[3]="-geometry 800x600"
#VNCSERVERARGS[2]="-geometry 800x600-nolisten tcp-nohttpd-localhost"
然后切换到上述写入的用户中,手动创建.vnc文件夹,设置该用户的vnc远程连接密码,再回到root用户重启vnc服务。
实际上,这样配置出来的VNC多用户登录进入Linux系统后都是r oot权限,显然不符合不同用户拥有不同权限的要求,必须更进一步进行授权,非常麻烦。于是笔者想到一种方法——既然要求登入系统后每个用户权限不同,那么直接用相应权限的用户来创建VNC登录用户无疑更加方便可靠。
配置VNC多用户的过程其实与上述配置r oot用户过程相差不多,只要在配置其他用户之前先切换到该用户,然后进行基础配置即可。这里以test1用户,桌面号11为例,先以su-test1命令切换到test1用户,然后以vncserver:11启动该桌面号服务,再修改.vnc/xstartup文 件,最 后 以 vncserver-kill:11 和vncserver:11重新启动服务即可。
若test1用户要配置多个vnc登录用户,只需要在该用户下多次重复上述过程创建不同桌面号就能满足要求。
4 需要注意的事项
4.1 重启VNC服务注意事项
由于使用vncserver命令创建的桌面号会在服务器重新启动后失效,服务器每次启动之后都需要重新建立桌面号,非常不方便。为了让系统自动管理这些桌面号,可以将它们添加到配置文件/etc/sysconfig/vncser vers中,格式为:VNCSERVERS="桌面号:使用的用户名。
例如:VNCSERVERS="1:r oot"
VNCSERVERS="2:test1"
VNCSERVERS="3:test2"
添加完成后,VNC服务每次启动时都会自动创建这些桌面号。
4.2 异常删除桌面号修复方法
若不小心异常操作删除了桌面号,导致虽然桌面号被删除,但对应的端口号却没有释放,而无法重新启用该桌面号时,我们可以先计算出对应的端口号,如test1的桌面号为11,则
对应的端口号则为5911。然后用lsof-i:5911来查看占用该端口号的进程,然后用kill杀掉该进程,即可以恢复到桌面号和端口号都自由的状态,重新使用该桌面号。
【相关文献】
[1] 陈 虹.基于Linux平台下的VNC远程控制实现方法[J].萍乡高等专科学校学报,2007,3:25-26.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。