Chinaunix首页 | 论坛 | 博客
  • 博客访问: 971253
  • 博文数量: 261
  • 博客积分: 10026
  • 博客等级: 上将
  • 技术积分: 3420
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-24 12:10
个人简介

https://smart888.taobao.com/ 立观智能监控

文章分类

全部博文(261)

文章存档

2011年(1)

2010年(4)

2009年(256)

我的朋友

分类: LINUX

2009-06-13 23:13:48

Linux远程桌面

这里我要说的不是telnet,rsh之类的远程控制工具,而是指远程控制桌面应用.

  X window比MS windows先进的地方是,X window是个基于网络的的图形视窗系统,本身就具有远程控制的强大功能.用户在远程系统上登录执行X 应用程序,并将Xclients执行的结果传回本地主机.这就是我下面要介绍的Remote X

  一、Remote X

  假设本地主机ip为172.16.1.1,远程的主机ip为172.16.1.2

  第一步,在本地主机上的任意一个xterm中执行xhost,用来允许远程的其它主机可以和本地主机的X server联网:

  xhost + 172.16.1.2

  如果不指定任何ip地址,则表示权限完全放开,这会带来安全问题,要小心!

  第二步,确认本地主机的xfs是运行的.用ps检查一下进程.

  第三步,从本地主机(172.16.1.1)上通过网络登录到远程主机172.16.1.2上,你用telnet,ssh,rsh都可以.设置DISPLAY变量.

  export DISPLAY=172.16.1.1:0

  第四步,现在可以使用远程主机上的X 应用程序了.

  这么样,很方便吧,但是你还不能掌控整个桌面环境,这个工作就交给vnc吧!Remote X 在局域网上运行效果很不错,普通的电话拨号就不用试了,速度太慢了。

  二、vnc

  我相信有不少人在windows环境用过pcanywhere,但你想不想用一个免费的,可以在linux,win9x/nt上都可以使用的pcanywhere,这就是vnc.

  vnc就是vitual network computing的缩写,它支持许多操作平台,甚至可在浏览器中操作.

  我主要介绍vncviewer的用法,以及用linux远程控制linux或nt.

  vnc client通过架构在tcp/ip上的vnc协议与vnc server沟通,通过认证后,把X server的桌面环境,输入设备,和X 资源交给vncserver掌控,vnc server将桌面环境通过vnc 协议送给vnc client端.让vnc client来操纵vnc server桌面环境和输入设备.

  首先下载到vnc的linux版本和windows版本.

  当前的linux版本是vnc-3.3.3r1_x86_linux_2.0.tgz

  当前的windows版本是vnc-3.3.3r7_x86_win32.zip

1.安装linux版的vnc

  (1)安装

  tar zxvf vnc-3.3.3r1_x86_linux_2.0.tgz

  cd vnc_x86_linux_2.0

  cp *vnc* /usr/local/bin/

  mkdir /usr/local/vnc

  cp -r classes/ /usr/local/vnc/

  (2)设置vnc server的访问密码

  vncpasswd

  (3)启动vnc server

  vncserver

  注意运行后显示的信息,记下所用的端口号,一般从1开始,因为0被x server占用了.现在,你就能提供vnc服务了.vnc client的用法等会介绍.

  2、安装nt版的vnc

  1)安装

  解开vnc-3.3.3r7_x86_win32.zip包后,会产生winvnc和vncviewer两个目录.winvnc目录中是vnc server的安装程序,vncviewer目录中是vnc client的安装序.我只关心vnc server,在winvnc目录中执行setup即可.

  2)设置

  首先执行install default registry settings.

  run winvnc(app mode)就是执行vnc server

  这时可看到winvnc运行的小图标,用鼠标右键点击图标,在properties/incoming connections中设定密码.默认配置即可.

  现在,你的nt就能提供vnc服务了.

  3、使用vncviewer

  vnc server启动成功后,你就可用vncviewer来远程控制桌面了.

  vncviewer xxx.xxx.xxx.xxx:display number

  例如,vncviewer 172.16.1.2:1

  按要求输入密码就可以看到远程的桌面了.

  注意:viewers需要在16位色的显示模式下工作,如果您的操作系统中没上16位色,那么请您及时的调整您计算机的显示模式。不然vncviewer无法正常工作。

  4、linux版vnc server的改进.

  linux上的vnc server内定的桌面管理环境是twm,实在是太简陋了.

  修改$HOME/.vnc/xstartup这个文件.

  把所有内容的行前加上#,再在接尾部份加上:

  startkde &

  你当然可用你喜好的桌面代替.我这是用kde来代替twm,速度会慢少少,但用起来方便不少.

  注意要重新启动vnc server.

  5、通过浏览器使用vnc

  通过浏览器使用vnc,要注意端口号的变化.

  假设vnc server是172.16.1.2:1的话,那么,可用浏览器访问

  端口号=display number + 5800

  好了,心动不如行动,just do it !


=====================================================
随着互联网的高速发展以及Linux企业应用的成熟,Linux被广泛应用于服务器领域,如何实现Linux的远程管理成为网络管理员的首要任务。我们经常见到的几种最为常用的windows下远程管理L 
inux服务器的方法,基本上都是利用SecureCRT,F-Secure SSH 抑或是PUTTY等客户端工具通过ssh服务来实现Windows下管理Linux服务器的,这些客户端工具几乎不需要什么配置,使用简单,但是它们都无法启动窗口服务的程序或进程,也无法达到远程桌面控制。本文将介绍通过xmanager远程桌面控制Linux的方法和技巧。本文中所指的Linux系统,如无特别说明都以RedHat 9.0为例。

  有两种方法可以实现远程管理Linux桌面窗口,其中一个就是是我们所选择的X显示管理器(X display manager)或者说xdm,另一个流行的解决方案是vnc。我选择xdm而不是vnc出于两点原因。第一,vnc要有个服务端的守护进程,为每个共享的桌面运行。第二,我已经有X服务器的软件安装在所有的工作站上,不想再添加额外的客户端软件了。

我们先来了解一些X系统方面的知识,X是用在大多数UNIX系统中的图形支持系统。如果你在你的Linux机器上使用GNOME或者KDE的话,你就正在使用X系统。它由X联盟()定义并维护。大多数的Linux用户使用的都是由XFree86 项目 ()提供的X Window系统的实现。xdm 是一个显示管理器,提供了灵活的任务管理功能。然而xdm通常被认为是“GUI的登陆屏幕,可以自动启动我的X任务”,我们会看到实际上它要更为强大。

  xdm 使用X联盟的X显示管理控制协议,即XDMCP,来和X服务器通信。它允许X服务器从运行xdm服务的服务器上获得会话服务。

  当使用xdm管理这些X任务的时候在设置上有些复杂。但设置xdm 可以得到本地的和其他服务器上的桌面了。我们下面将介绍服务器上配置xdm的方法和步骤,这里描述的配置允许任何的 XDMCP 客户访问 Linux 服务器桌面环境(当然了影响了X的安全)。

  第一步,我们在Linux系统下,修改/etc/X11/xdm/Xaccess文件,找到下面的语句:# * #any  host  can  get  a  login  window

去掉最前面的#号,成为 * #any  host  can  get  a  login  window

第二步,我们修改/etc/X11/gdm/gdm.conf文件,找到下面的语句:
[xdmcp]
# Distribution : Ship with this off. It is never a safe thing to leave
# out on the net. Alternatively you can set up /etc/hosts.allow and
# /etc/hosts.deny to only allow say local access.
Enable = false
将其中的Enable=false 改为Enable=true 或 Enable=1。
  同时我们要确保存在下面的语句,因为177端口是我们要配置的xdmcp服务的监听端口,我们在后面配置xmanager将看到。
# The port. 177 is the standard port so better keep it that way
Port = 177

第三步,我们要修改/etc/inittab文件,将下面的语句
id:3:initdefault:
改为如下,如果原来就是id:5:initdefault:就不用更改。

 同时,找到如下图文字所在的地方,
# Run xdm in runlevel 5
x:5:respawn: /etc/X11/prefdm -nodaemon

 将它修改为x:5:respawn:/usr/bin/gdm,即如下图所示,

 第四步,我们修改/etc/X11/xdm/xdm-config的最后一行,在displayManager.requestPort:0前面加上一个!号,结果如下

! SECURITY: do not listen for XDMCP or Chooser requests
! Comment out this line if you want to manage X terminals with xdm
! DisplayManager.requestPort:     0

  第五步,我们修改确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755,在RedHat 9.0中,我们可以看到这两个文件默认的属性就是444和775,因此不用修改。

-r--r--r--  1 root root   487 Dec 10  2004 Xservers
-rwxr-xr-x  1 root root   935 Oct 21  2004 Xsetup_0

 最后,如果我们的Linux机器配置有防火墙,为防止防火墙将通过177端口(即xdmcp服务)的数据过虑,我们必须加上如下的规则:
   iptables  -A  INPUT  -p udp -s 0/0 -d 0/0 --dport 177 -j ACCEPT
 
至此为止,我们在Linux下的配置xdm已经基本完成。但上面这些配置还只是x服务器端的配置,我们要想实现在Windows远程桌面控制Linux,还必须要
有Windows下的客户端工具,xmanager正是这样的一个工具,它是一个简单易用的高性能的运行在Windows平台上的 X Server 软件。我们现在来介绍xmanager的在Windows下的安装和配置技巧,这里我使用的机器是windows xp。

我们先下载xmanager的安装文件,我下载的是xmanager1.3.9,安装后,在安装目录下,我们点击xconfig,选择xdm,如下图,选择”XDM Indirect”,在 host:后面填上我们已经配置好的Linux系统的ip,注意下面的XDMCP Port:177, 这就是我们在配置Linux服务器时必须保证 port=177的原因。

====================================================
XManager系统配置简介
 
 
服务器:Red Hat Linux
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
-------------------------------------------------------------------------
1.修改X字体服务器脚本: /etc/rc.d/init.d/xfs , 改变端口 ,
       daemon xfs -droppriv -daemon -port -1
     改成:
       daemon xfs -droppriv -daemon -port 7100
-------------------------------------------------------------------------
2. 修改 /etc/X11/xdm/Xaccess,将下面的行:
#* # any host can get a login window
改为:
* # any host can get a login window
------------------------
3. 修改/etc/X11/gdm/gdm.conf,找到下面的信息:
[xdmcp]
Enable=0 或Enable=false
修改为:
[xdmcp]
Enable=1 或Enable=true
并确保以下信息存在:
Port=177
------------------------
4: 修改/etc/inittab,将
id:3:initdefault:
修改为:
id:5:initdefault:
并将最后一行改为:
 #red hat
x:5:respawn:/usr/bin/gdm  -nodaemon
#red hat A3(企业版)
x:5:respawn:/usr/bin/gdm-binary -nodaemon
-------------------------
5:修改 /etc/X11/XServers ,加入下面几行取得4个xdm 登录(X DisplayManager)或者
      gdm(GNOME X display manager)
进程,可以允许四个不同用户登录,当然你可以允许更多
      用户 .
                :0  A  local  /usr/X11R6/bin/X  :0

                :1  B  local  /usr/X11R6/bin/X  :1

                :2  C  local  /usr/X11R6/bin/X  :2

                :3  D  local  /usr/X11R6/bin/X  :3

#以上设置可以多个Client访问
-------------------------------------------------------------------
6: 确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755。
-------------------------

 

7.修改   /etc/X11/XF86Config ,改:
       FontPath    "unix:-1"
      到:
       FontPath    "unix:7100"

8.修改防火墙配置文件/etc/sysconfig/ipchains (iptables),在文件头部加入如下内容,  
# If you want to use GNOME/KDE, add the following line.
-A input -p udp -s 0/0 -d 0/0 177 -j ACCEPT
9. 重新启动RedHat Linux

好了,到此Server端告一段落,restart后如果出现下列错误:
   _ FontTransSocketUNIXConnect: Can't connect: errno = 111
              failed to set dafault font path 'unix:-1'
              Fatal server error:
              could not open default font 'fixed'
则在/etc/X11/XF86Config加入以下行:
  FontPath  "/usr/lib/X11/fonts/75dpi/"
                FontPath  "/usr/lib/X11/fonts/misc/"
                FontPath  "/usr/lib/X11/fonts/CID"
                FontPath  "/usr/lib/X11/fonts/Speedo"
                FontPath  "/usr/lib/X11/fonts/100dpi"

 


服务器:FreeBSD
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
-----------------------
1. /usr/X11R6/lib/X11/xdm/xdm-config
注释掉这句:
!DisplayManager.requestPort: 0
-----------------------
2. /usr/X11R6/lib/X11/xdm/Xservers
注释掉这句:
#:0 local /usr/X11R6/bin/X
-----------------------
3. /usr/X11R6/lib/X11/xdm/Xaccess
把这句的注释去掉:
* #any host can get a login window
-----------------------
4. /etc/ttys中
修改如下:
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm on secure
-------------------------------

 

服务器:SunOS
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
------------------
由于服务器默认启动xdm,无需更改
------------------

 

以上,终端连接的时候,可以使用xbrowser直接输入ip地址进行连接!

 

服务器:Red Hat Linux
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
------------------------
1. 修改 /etc/X11/xdm/Xaccess,将下面的行:
#* # any host can get a login window
改为:
* # any host can get a login window
------------------------
2. 修改/etc/X11/gdm/gdm.conf,找到下面的信息:
[xdmcp]
Enable=0 或Enable=false
修改为:
[xdmcp]
Enable=1 或Enable=true
并确保以下信息存在:
Port=177
------------------------
3: 修改/etc/inittab,将
id:3:initdefault:
修改为:
id:5:initdefault:
并将最后一行改为:
x:5:respawn:/usr/bin/gdm
-------------------------
4: 确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755。
-------------------------

 


服务器:FreeBSD
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
-----------------------
1. /usr/X11R6/lib/X11/xdm/xdm-config
注释掉这句:
!DisplayManager.requestPort: 0
-----------------------
2. /usr/X11R6/lib/X11/xdm/Xservers
注释掉这句:
#:0 local /usr/X11R6/bin/X
-----------------------
3. /usr/X11R6/lib/X11/xdm/Xaccess
把这句的注释去掉:
* #any host can get a login window
-----------------------
4. /etc/ttys中
修改如下:
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm on secure
-------------------------------

 

服务器:SunOS
终端:Xmanager 1.3.9

 

使用方法:

 

服务器上操作:
------------------
由于服务器默认启动xdm,无需更改
------------------

 

以上,终端连接的时候,可以使用xbrowser直接输入ip地址进行连接!
 

=================================================================
设置xwindow可以支持如xmanager这样的工具远程登陆linux。设置如下:
#vi /etc/X11/xdm/xdm-config
在最后一行: DisplayManager.requestPort: 0 前面加!号注释掉此行。
#vi /etc/X11/xdm/Xservers
在最后一行::0 local /usr/X11R6/bin/X 前面加#号注释掉这一行。
#vi /etc/X11/xdm/Xaccess
找到#* #any host can get a login window
把这一行前面的#号去掉,变成:
* #any host can get a login window
最后运行#xdm。这样使用xmanager等工具就可以连接Linux了!!!

 

====================
快捷键:

GNOME

CTRL+B 书签

CTRL+D 复制粘贴

CTRL+F 查找

SHIFT+CTRL+F WEB查找

CTRL+I 显示属性页

CTRL+H 切换到HOME

CTRL+U 向上一级

CTRL+N 建立新文件夹

CTRL+O 打开

CTRL+W 关闭窗口

SHIFT+CTRL+W 关闭所有窗口

CTRL+= 放大

CTRL+- 缩小

CTRL+[ 返回

CTRL+] 向前

CTRL+T 放到垃圾筒

CTRL+R 刷新

CTRL+A 全选

KDE

CTRL+TAB 切换工作桌面

ALT+TAB 切换应用程序

ALT+F1 打开应用程序菜单

ALT+F2 打开命令窗口

ALT+F3 打开窗口菜单

ALT+F4 关闭窗口

F1 HELP

F2 在页面搜索

F3 在页面搜索下一个

SPACE 选中/取消选中文件

CTRL+N 打开文件管理器

CTRL+A 全选当前目录下的文件和目录

CTRL+T 在当前目录下打开一个终端

CTRL+W 关闭窗口

CTRL+F 搜索文件

CTRL+C 拷贝

CTRL+r 粘贴

阅读(1075) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~