使用图形客户端远程访问Linux服务器

简介:   一、引言  我们可以通过telnet、ssh等远程登录Linux服务器,但都是字符界面的。本文介绍了通过XDMCP+XDM来远程连接Linux服务器上的XFree86 Server,可以在图形环境下远程管理Linux服务器。
  一、引言
  我们可以通过telnet、ssh等远程登录Linux服务器,但都是字符界面的。本文介绍了通过XDMCP+XDM来远程连接Linux服务器上的XFree86 Server,可以在图形环境下远程管理Linux服务器。
  
  二、基本概念
  1、什么是XFree86
  XFree86是X Window系统的一种开放源代码的实现。它提供了一种对鼠标、键盘、显卡和窗口图形环境的Client-Server接口。所以客户端程序可以运行在不同的主机上,由一台服务器提供X Window的Server服务。
  2、什么是XDMCP
  XDMCP即“X Display Manager Control Protocol”,是一种网络协议。由它来建立图形客户端程序与X Window服务器的连接与通信。
  3、什么是XDM
  XDM即“X Display Manager”,由它来启动X Window服务器,并管理图形客户端程序的登录、会话、启动窗口管理器(KDE、Gnome)等。KDE和Gnome也提供了自己的xdm的实现,分别叫kdm和gdm。
  4、什么是XFS
  XFS即“X Font Server”,可以由由一台服务器来统一提供字体,远程图形客户端程序就不需要单独安装所有的字体了。
  
  三、配置过程
  1、我们的环境
  我们使用一台装有Mandrake Linux 8.1的计算机作为X Window的服务器,服务器上网卡地址为192.168.0.1/24。并且在安装Linux时一起安装了XFree86相关软件包。
  我们在局域网中的另一台装有Windows 2000的计算机上安装了X-Win32软件,作为X Window的客户端。还有很多Windows下的X客户端程序,但大多是商业程序,如exceed只提供30天的试用期。而X-Win32没有天数限制,只是每次只能使用30分钟,这对于大多数基本的服务器维护操作也够了,时间到了再连接就是了。免费使用商业程序不能要求太高了
  
  2、配置服务器
  (1)配置xfs
  xfs的配置文件是/etc/X11/fs/config,内容如下:
  #
  # Default font server configuration file for Mandrake Linux workstation
  #
  
  # allow a max of 4 clients to connect to this font server
  client-limit = 4
  
  # when a font server reaches its limit, start up a new one
  clone-self = off
  
  # alternate font servers for clients to use
  #alternate-servers = foo:7101,bar:7102
  
  # where to look for fonts
  # Some of these are commented out, i.e. the TrueType and Type1
  # directories in /usr/share, because they arent forced to be
  # installed alongside X.
  #
  catalogue = /usr/X11R6/lib/X11/fonts/misc:unscaled,
  /usr/X11R6/lib/X11/fonts/75dpi:unscaled,
  /usr/X11R6/lib/X11/fonts/100dpi:unscaled,
  /usr/X11R6/lib/X11/fonts/misc:unscaled,
  /usr/X11R6/lib/X11/fonts/Type1,
  /usr/X11R6/lib/X11/fonts/Speedo,
  /usr/X11R6/lib/X11/fonts/mdk:unscaled,
  /usr/share/fonts/default/Type1,
  /usr/share/fonts/ttf/big5,
  /usr/share/fonts/ttf/gb2312,
  /usr/share/fonts/ttf/decoratives,
  /usr/share/fonts/ttf/western
  
  # in 12 points, decipoints
  default-point-size = 120
  
  # 100 x 100 and 75 x 75
  default-resolutions = 75,75,100,100
  
  # how to log errors
  use-syslog = on
  
  在配置文件中可以定义最大客户端连接数量,这里缺省是4。配置文件中也指明了字体文件的位置,特别注意包含了中文字体,否则在客户端无法正确显示中文字体。
  接下来修改/etc/rc.d/init.d/xfs文件,把所有“-port -1”改为“-port 7100”,这是xfs缺省监听的端口。使用如下命令来重启xfs:
  service xfs stop
  service xfs start
  xfs启动成功后,可以使用netstat -ln命令来确认7100端口已绑定:
  tcp 0 0 0.0.0.0:7100 0.0.0.0:* LISTEN
  
  (2)配置xdm
  xdm的配置文件在/etc/X11/xdm目录下。
  首先修改xdm-config文件,找到一行:DisplayManager.requestPort: 0
  注释这行:!DisplayManager.requestPort: 0
  如果有这行,xdm就不会监听XDMCP的连接了。
  接下来修改Xaccess文件,这是控制客户端访问的配置文件,修改内容如下:
  #* #any host can get a login window
  192.168.0.*
  
  这里允许局域中的计算机都可以连接。
  现在可以直接使用xdm命令来启动xdm服务,使用netstat -ln命令来确认177端口(xdm缺省的端口)已绑定:
  udp 0 0 0.0.0.0:177 0.0.0.0:*
  
  如果想要在服务器启动后自动运行xdm,就需要修改/etc/inittab文件,使启动后进入“5”运行级别,修改内容如下:
  id:5:initdefault:
  
  3、使用图形客户端来测试
  我们下载的是X-Win32 5.4版,在windows中安装完成后,会在“程序组”中生成“X-Win32 5.4”,在其中有两个可执行程序:X-config和X-Win32。
  首先要使用X-config来建立连接配置:在“session”处选择“add”,再选择“XDMCP”连接方法,点“Next->”,在“Session name”处输入一个名字,在“XDMCP Mode”处选择“Broadcast”,再点“Save”保存配置。然后再选择X-config主界面的“Font”,点击“Add Font Server...”,在“Host”出输入服务器的IP地址192.168.0.1,并确认“Port”为7100。
  配置完后就可以启动X-Win32了,启动时当然要选择“Evaluation”因为我们没有注册的。然后选择刚才建立的session名称,就会出现一个窗口显示当前网络中的X Window服务器名称,选中我们的服务器点“OK”,就会出现xdm的登录界面了,使用你在Linux中的用户帐号登录后,X Window图形界面就出现了,和在Linux服务器上本地操作一样。中文也显示正常,因为使用的是服务器上的字体。
  
  四、其它问题
  1、获得X-Win32
  可以在www.starnet.com处下载X-Win32软件,下载前需要注册。
  
  2、X Window客户端和Windows相互粘贴拷贝
  X-Win32还提供了让X Window和Windows中内容相互粘贴拷贝的功能,这样就方便多了。
  
  五、参考资料
  http://www.tldp.org/HOWTO/XDMCP-HOWTO/index.html
  http://www.tldp.org/HOWTO/mini/Xterminals/index.html
  

目录
相关文章
|
7月前
|
NoSQL IDE MongoDB
Studio 3T 2025.17 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
Studio 3T 2025.17 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
426 1
Studio 3T 2025.17 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
|
6月前
|
Linux 虚拟化 iOS开发
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
1418 0
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
|
8月前
|
存储 人工智能 编解码
阿里云GPU云服务器深度评测:算力怪兽如何重塑AI与图形处理的未来?
在AI与高性能计算需求激增的今天,传统CPU已难满足“暴力计算”需求。阿里云GPU云服务器依托NVIDIA顶级显卡算力,结合专为GPU优化的神行工具包(DeepGPU),为深度学习、科学计算、图形渲染等领域提供高效、弹性的算力支持。本文全面解析其产品优势、工具链及六大真实应用场景,助你掌握AI时代的算力利器。
阿里云GPU云服务器深度评测:算力怪兽如何重塑AI与图形处理的未来?
|
8月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
9月前
|
Linux 虚拟化 iOS开发
VMware Remote Console 13.0.0 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
VMware Remote Console 13.0.0 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
2217 0
VMware Remote Console 13.0.0 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
|
9月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
2969 0
|
9月前
|
存储 安全 Linux
Linux服务器上安装配置GitLab的步骤。
按照以上步骤,一个基础的GitLab服务应该运行并可以使用。记得定期检查GitLab官方文档,因为GitLab的安装和配置步骤可能随着新版本而变化。
871 0
|
12月前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
807 28
|
存储 运维 监控
深度体验阿里云系统控制台:SysOM 让 Linux 服务器监控变得如此简单
作为一名经历过无数个凌晨三点被服务器报警电话惊醒的运维工程师,我对监控工具有着近乎苛刻的要求。记得去年那次大型活动,我们的主站流量暴增,服务器内存莫名其妙地飙升到90%以上,却找不到原因。如果当时有一款像阿里云 SysOM 这样直观的监控工具,也许我就不用熬通宵排查问题了。今天,我想分享一下我使用 SysOM 的亲身体验,特别是它那令人印象深刻的内存诊断功能。
580 1