在Linux(或异构)网络上共享计算机(转发)

上一篇 / 下一篇  2008-05-12 12:14:47 / 个人分类:Lunix 点滴

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费
  • 运行平台: Win9X/Win2000/WinXP

J]7A%T5Y [,J1o!]0比较“安全 shell(SSH)”和“虚拟网络计算(VNC)”
3~a1XJ.~f$H!A3yB?{ g0  在这两篇文章的第一篇中,David 比较和对照了“安全 shell(SSH)”和“虚拟网络计算(VNC)”,这两种技术允许用户在一台工作站上运行位于另一台计算机上的应用程序。(他没有涉及文件和打印共享或诸如 httpd、ftpd、smtp 或 nntpd 之类的“因特网”服务,虽然这些技术也可以有效地“共享”上述计算机中的某些资源。)然而,他确实给出了 SSH 和 VNC 的安装和配置的提示,并评论了工具的稳定性、选项和许可证状况。51Testing软件测试网9Q4Mz/qi*hN
  为有效地测试各种软件程序和撰写关于它们的文章,我在自己的本地网络上配备了大量计算机。这些机器运行各种操作系统并使用各种硬件配置。有时我会在各种平台上评测工具;而有时候会测试和调试自己编写的工具。51Testing软件测试网h9s[0^+@s4Zu
  我网络上的大多数机器都以多重引导配置的方式安装了多种操作系统,但也有一些是“无头的”(无监视器或键盘)。虽然多重引导装入器适于容纳多种操作系统,但由于只在一台机器上进行测试,重新引导的时间开销使得多平台的详细比较测试花费了更多时间。多重引导不太利于“并排”比较。我没有评测过任何让您在一个系统内“虚拟”另一个系统的工具,譬如 VMWare、Plex86、VirtualPC、SheepShaver 或者其它工具。在某些方面,这些工具实现了我将在本文中讨论的那些工具的用途。51Testing软件测试网6Y~kZ1L0M|vt
  有几种不同的技术允许用户在一台工作站上运行位于另一台计算机上的应用程序。SSH 提供到远程计算机的文本终端;可以使用“X Window系统”在一些工作站上显示交互式应用程序,而这些应用程序实际上运行在另一台工作站上;VNC 可以作为对于整个远程桌面的“远程控制”。每种技术都有优点和缺点。它们都在 Linux 上运行,但不同变体(主机或远程)允许与其它各种 OS 环境(用于异构网络)进行交互。使用这些工具的组合,我可以坐在一台工作站(具有最好的监视器、键盘和椅子的那一台)前,运行、测试并对多个平台上(通常不用重新引导任何系统)的应用程序进行计时。51Testing软件测试网0J#?"^}#T
  我的网络设置51Testing软件测试网~ne,gHgG D
  我的本地网络上有七个节点,命名为 Apollo、Bacchus、Chaos、Delphi、Echo、Fury 和 Gaia。分别为这些节点分配了从 192.168.1.101 到 192.168.1.107 的 IP 地址。大多数情况下,同一物理机器在多重引导到不同操作系统时总是获得相同 IP 地址(但有时我使用 DHCP,它分配 192.168.1.200 以上的地址)。整个网络位于一个硬件防火墙/路由器后,我充分信任防火墙,对于运行在本地机器上的服务,我也许并没有象应有的那样过分猜疑。(需要在因特网上共享计算机的读者应该比我更担心安全性问题。这两篇文章中的第二部分加入一些关于安全性问题的讨论。)
e/VQYI;Q0  我提及了上面的大部分细节,以便您可以遵循我在下面给出的一些 shell 示例。我实际操作的机器是 Bacchus,它的本地 IP 地址是 192.168.1.102。51Testing软件测试网eIa jq
  安全 shell(ssh)
J6Et.q1i0  最节省带宽的连接计算机方法是通过简单文本 shell。完成这个操作的非安全工具是 telnet 和 rsh,但使用这些工具会引起很多安全性问题,因此最好在所有需要通信的计算机上安装 ssh。尽管下面的一些示例在我的防火墙之内使用了 telnet,但这种折衷办法也是以下事实的产物 — “Fury”目前专用于安装和重新安装测试操作系统。缺省情况下,许多类 UNIX 操作系统(包括最新的 Linux 分发版(distribution))将安装 ssh;如果没有安装,请参阅本文后面的参考资料来安装它。51Testing软件测试网)y`$}&u x(mKPW
  安全 shell(ssh)对通过特定通道的所有信息流都进行加密。因为使用了公钥(public-key)加密,所以,服务器和客户机不必在会话开始(initiation)之前共享密钥。此外,机密不会在通道中以未加密格式传输(譬如,使用 telnet 传输登录密码则任何拦截器都可以截获它)。其它协议 — 例如 VNC 或 X Window — 可以位于 ssh 顶部,但是这些协议最简单的用途是用于创建远程文本控制台。
W!?e1K@0y(oU0  使用 ssh,可以轻易地连接到与本地机器运行不同操作系统的机器上。唯一的要求是,远程机器运行 sshd服务器,而本地机器要有 ssh 客户机。例如,要从运行 OS/2 Warp 的“Bacchus”机器连接到隔壁运行 Slackware Linux 的“Delphi”机器,就象下列清单一样简单:51Testing软件测试网.\}E O |mU.{
  使用 ssh 通过 HOSTS 名称连接到远程机器 C:\UTILS % ssh quilty@delphi51Testing软件测试网d]"q O Cw.p
  Last login: Thu Nov 29 01:41:36 2001 from 192.168.1.10251Testing软件测试网UPn2i+RC6_J
  Linux 2.2.19.51Testing软件测试网k9|"v2T"akSb?
  quilty@delphi:~$ exit
8[{P.M!ld*_1G)J0  logout
J_pO4TO ^;{0  Connection todelphiclosed.
!Idfrm!q&w ~*?0  
M`-W2u ]7PW-Q2s/y0  如果我的 HOSTS文件未定义别名,可以使用:51Testing软件测试网 |R|'WL@ B^
  使用 ssh 通过 IP 连接到远程机器 C:\UTILS % ssh quilty@192.168.1.10451Testing软件测试网,NxK? w&v0c+N:kx
  Last login: Thu Nov 29 01:51:31 2001 from 192.168.1.10251Testing软件测试网%?]GC|&f+E5yZ
  Linux 2.2.19.51Testing软件测试网Na;h w,E1d
  quilty@delphi:~$51Testing软件测试网R:zf#vA
  
%D2Zc{ u:`0  同样地,我经常通过使用下列命令跨越国界,在全世界管理我租用的 Web服务器51Testing软件测试网e j} y `ox
  51Testing软件测试网O.Z.No(L;p&J
  使用 ssh 通过 DNS 名称连接到远程机器 C:\UTILS % ssh gnosis@gnosis.cx51Testing软件测试网 i3Q+P kPW{ U
  gnosis@gnosis.cx's password:
K7d-ETZ p8v)|x0  对于异构平台上的 ssh 来说,最困难的事情是正确地获得终端配置。实际上,这个问题并不是 ssh 本身的问题(telnet 也有同类的问题)。将两台 Linux 机器连接在一起几乎总是能无缝地工作。但是将安装其它平台的机器作为客户机或服务器时,显示总是不太正确,或者键绑定不象预期的那样工作。当涉及“非类 UNIX”平台诸如 Win32、BeOS、MacOS 和 OS/2 时,问题似乎尤其严重,但即使将 FreeBSD 与 Linux 连接也有缺点。51Testing软件测试网J I+X`Z3Y e#ev1O
  当在异构机器之间创建 ssh 连接时最典型的问题是代码页错误,或者色彩转义码错误。当任何一种情况发生时,基本命令行可用,但是线条(line-draw)字符显示成其它东西;经常只能看到单色终端而不是彩色的。shell 命令不大受这种“阻抗失谐(impedance mismatch)”影响,但是交互式 curses 或 slang 类应用程序通常会受影响。这些应用程序中最值得注意的是文本编辑器,它通常是您最需要在远程控制台上运行的应用程序。顺便说一下, jed 是一种特别好的远程文本方式编辑器;其强壮内核也许将使用 vim。其它大多数 Linux/UNIX 编辑器不是基于 X 的就是极其粗糙的。51Testing软件测试网"exi siW

j I j3vg-E9d2qy0sshqrc05@ydcrh05

(@;WP|B!Wn051Testing软件测试网 R)w6w*?*Z ]b G/eM4A U

sshusr_name@pc_name

:Wsgm$xV Z0

ZD1Z[Q8X&r+k0 

!s6]#hOb@T3W+Q6d;w0

!M@A's:wW$?1]2@0 

K;~#nu Pmh+Yzt T0

TAG:

 

评分:0

我来说两句

Open Toolbar