用SSH实现X11转发
有多种不同的方法实现连接到远程服务器或工作站,你可以使用NoMachine的NX服务器或GPL解决方案FreeNX,其他工具类似RealVNC或VNC提供远程控制软件允许你查看和通过网络与桌面应用程序进行交互. 一种加强通讯安全的方法就是使用SSH通过X11隧道或端口转发技术实现,开发SSH是为了替换不安全的telnet,ftp,rlogin,rsh软件,FreeNX已经可以完美地运用这个技术,在本文中我将展示如何使用SSH实现X11转发,而不用任何附加的软件,另外,我将解释如何在windows xp客户端上用PuTTY和X-Deep/32运行Linux应用程序. 为了对你有所启发,我将用一小段解释都需要些什么,我将远程访问两台机器: 客户端机器我使用包括ssh客户端的OpenSUSE和使用Putty的windows xp,从ssh的角度来看,远程机器就是服务器,本地机器就是客户端,实验环境准备如下图:
第一步:准备ssh服务器 ,你在你的服务器上安装ssh软件包,我将使用操作系统发行版提供了OpenSSH软件包,请核对在两个发行版中如何寻找和安装rpm包,在某些情况下它已经安装在服务器上了(有可能将其作为标准软件包在安装系统时就安装了). 如果你是从源代码建立的软件,确认编译时选择了X转发支持,ssh 3.2或更高版本的二进制软件包包括运行时X检测. 准备好之后,使用下面的命令启动sshd服务:
第二步:使用一个Linux客户端 你或许已经注意到Linux通过Ctrl-Alt-F1(-F12)组合键在虚拟控制台之间切换.通常,没有理由离开默认的控制台(虚拟控制台#7),除非你试图再次登陆或问题诊断. 请象下面这样为测试目的进行控制台切换: 当你同时敲击了Ctrl-Alt-F12时,你会看到在这个控制台没有任何实质内容,让我们在这里显示远程机器的GUI图形界面,我们使用组合键可以很容易地从你的客户端切换到远程机器.
登陆到你的客户端机器,作为一个常规用户运(不需要root权限)行KDE并打开一个控制台,我们将在控制台12上使用下面的命令打开一个X会话:
这将发生所有不需要的输出或全部黑屏但是将在控制台12上打开另外一个X窗口,如果你现在用Ctrl-Alt-F12进行切换,你将看到下面这样的显示(空的灰暗的背景):
使用Ctrl-Alt-F7切回到原始的图形显示,回到之前你已经打开的控制台,使用下面的命令创建一个到远程服务的ssh连接:
“User”应该是远程系统上的一个有效用户,你可以(无疑地)用服务器的有效域名替换ip地址. 如果你现在切回到控制台12(Ctrl-Alt-F12),在输入正确的密码后你会得到一个提示符:
在远程机器OpenSUSE上用下面的命令启动KDE:
如果你想访问Debian机器,你可以用下面的命令: 使用下面的命令在远程Debian机器上启动Gnome:
请注意两个例子中都有一个x-term窗口显示登陆信息,你可以最小化它,但是不应该关闭它. 如果你想取消连接,只需要关闭xterm窗口或使用Ctrl-Alt-Backspace组合键. |
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |