政府中的 Linux:在小型办公室网络中设置 Linux 桌面
在我们的 上一专栏 中,我们说我们将解释如何使用 Samba 3、Linux 和 Windows XP 设置小型办公室网络。我们承诺强调工作组环境而不是大型域。在本文中,我们将演示 Linux 如何适应桌面基础设施,而无需考虑是否存在其他操作系统。
此外,在我们组建小型办公室之前,我们希望扩展我们的要求,允许 Windows 98 计算机加入我们的工作组,因为该操作系统仍然是全球个人桌面计算机中很大且重要的组成部分。幸运的是,我们有一个解决方案,允许它们与来自雷德蒙德的最新桌面操作系统一起工作。
小型办公室、家庭办公室 (SOHO) 网络占据了 PC 市场的绝大部分,并且具有许多共同的特点。例如,小型网络将用户安全留给每台机器,而不是提供服务器身份验证。
小型办公室(也称为工作组)的成员使用对等网络。个人用户无需提供用户名和密码即可与他人共享他们的打印机和文件。如果一台机器执行诸如财务会计和记录保存之类的功能,则可以通过实施更强的机器级安全策略将其与其他用户隔离。
如果您有一个小型办公室网络并使用 Linux,而您的家人或办公室团队中的其他人使用 Mac 或 Windows,您很快就会发现您的系统有资源可以顺利地融入整个网络;您的机器甚至提供了其他系统所缺乏的服务。即使是一个简单的 Linux 桌面也比顶级的微软和苹果操作系统提供更多的网络应用。
Samba 是一个开源网络系统,它提供了允许 Linux 和其他 UNIX 变体(例如苹果的 Mac OS X)与 Windows 操作系统协同工作的粘合剂。 Samba 实现了所谓的微软网络堆栈,这是一组协议和信息,它们在网络上广播,让一些人想起南加州的交通高峰期。
如果您想在小型办公室网络环境中专门使用 Linux,您有很多简单直接的选项来创建共享文件夹和打印机。这些选项起源于互联网,它们提供互联网安全模型,并包括不同的打印机协议,例如 LPRng 和 CUPS。您可以提供文件传输协议或使用 SSH 来允许访问共享文件。您还可以共享诸如 CD-ROM 和调制解调器之类的设备。 Linux 提供了简单直接的解决方案,因为 GNU/Linux 开发者从一开始就实现了互联网和 POSIX 标准。
当无处不在的 Windows 成为网络环境中的一个考虑因素时,您会遇到许多挑战。首先,Win32 网络实现了 TCP/IP 互联网标准的奇怪形式。除了使用 TCP/IP 寻址和路由方案之外,微软还提供了许多封闭和专有的方式来识别网络上的计算机。大多数微软协议仍然未公开且未记录。这些包括诸如建立本地和主浏览器、浏览器选举请求、域和工作组注册以及网络上发生的数十种其他活动。网络流量占用了大量的带宽,仅仅是为了让用户可以在网上邻居中看到其他计算机;查找诸如打印机之类的资源;并获得访问互联网的权限。即使对于勇敢的人来说,理解微软网络堆栈也是一个主要的学习曲线。
很少有人愿意说微软以拥有出色的安全模型而闻名。在 Windows 基础设施中,复杂性成为当务之急。除了其网络协议和标准的复杂性之外,微软还在版本之间更改其网络语法——这是一种内置的过时性。例如,雷德蒙德在推出 Windows 2000 Professional 以及后来的 XP 时,对其操作系统通信方式进行了重大更改。由于计算机制造商“团伙”仅出厂最新的 Windows 版本,因此较旧但功能性产品(例如 NT Workstation 和 Windows 98)变得过时。您以前功能性的工作站已经让位于需要 512MB 快速内存、大硬盘和最快处理器而不是小硬盘、适度内存和处理器的计算机。
鉴于这些障碍,Linux 桌面实际上可以在小型办公室/家庭办公室环境中发挥重要作用。让我们看看如何做到这一点。
图 1 描绘了一个典型的家庭网络,这种网络约占个人计算机市场的 40%。今天的家庭网络使用宽带互联网连接,例如电缆调制解调器、DSL 或高速卫星上行链路。在其他情况下,连接可能只是使用拨号调制解调器。
为了保护内部网络,许多人选择使用互联网设备,例如 BEFSR41 Linksys 宽带路由器。这有助于保护家庭网络免受外部入侵,但不幸的是,它不能阻止间谍软件从您的微软系统发送信息。尽管如此,在有据可查的微软安全模型的限制范围内,您应该认为防火墙是必不可少的。

图 1. 混合桌面环境
回到图 1,我们有四台计算机和一台打印机。在这种情况下,我们有一台 Windows XP 笔记本电脑、两台 Windows 98 桌面计算机和一台 Linux 桌面计算机。我们希望从我们的 Linux 机器共享打印机,并允许每台计算机访问共享目录并连接到互联网。
两台 Windows 98 计算机可以相互共享打印机和文件。 Linux 机器可以与 Windows 98 和 XP 系统执行相同的操作。在图 2 中,您可以看到运行 Xandros 文件管理器的 Linux 桌面如何查看整个网络,包括 Windows 98 计算机和 XP 桌面。在每个微软系统中,您都可以浏览网络并在网上邻居中看到 Linux 桌面。 Linux 桌面看起来与其他 Windows 计算机相同。
再次参考图 2,我们突出显示了名为 Dallas 的节点上的共享文档文件夹,这是一个 Windows XP 系统。您还可以看到一个名为 xp_network_setup.sxw 的文字处理器文件,该文件以原生的 OpenOffice.org Writer 格式保存。
设置此网络有多困难?除了标准的布线、以太网连接以及防火墙和调制解调器的安装之外,系统基本上是自行安装的。两台 Windows 98 机器都遵循标准设置程序。安装后,系统使用 DHCP 获取其 IP 地址、DNS 服务器和路由到 Linksys 宽带路由器。 Linksys 路由器提供了使用 C 类地址 192.168.1.xxx 的私有互联网地址方案。一旦它们建立并可以连接到互联网,我们右键单击网上邻居,选择属性并将动态地址更改为静态地址。
然后,我们使用了一种称为简单文件共享的方法,并调用了网络设置向导。当我们按照向导完成操作后,XP 询问我们是否要在其他计算机上启用共享,指的是其他 Windows 机器。通过回答“是”,我们创建了一个软盘,并在 Windows 98 上安装了 XP 协议。此过程将旧系统升级到较新的协议。突然,XP 和 Windows 98 机器开始通信。微软提供的程序称为 netsetup.exe。
然后,我们安装了 Xandros 3.0 豪华版,并启用了 Windows 网络,如图 3 所示。
请注意,我们能够通过使用对话窗口配置 Windows 网络。 Xandros Linux 桌面允许我们指定文件和打印机共享、命名计算机、定义工作组并启用共享级安全,我们在 Windows 计算机上将其用于家庭网络。
其他 Linux 发行版没有 Xandros 提供的简单配置脚本,但它们很快将从一个名为 LAN-d 的新项目中获得。一旦 LAN-d 可用,所有 Linux 发行版都将像 Xandros 一样易于配置。目前,Samba 需要从命令行界面进行手动配置。
如果您使用其他 Linux 发行版,例如 Fedora,则存在 JonR(来自英国威尔特郡)编写的出色的 HOWTO,名为“SAMBA - 面向 XP 客户端的匿名 FC2 服务器”。此 HOWTO 提供了一个很好的例子,说明了开源社区成员在互联网上免费贡献的文档类型。当您参考 JonR 的工作时,请记住,运行 Samba 的 Linux 桌面也可以称为服务器。这就是在小型网络中放置 Linux 桌面的一个优点——它提供了其他操作系统中不可用的许多服务。
最后,您还可以找到另一篇由 John Terpstra 撰写的优秀文章 “Samba-3:一个简单的匿名读写服务器”,其中提供了一个在慈善管理办公室中使用 Samba 的案例研究。本文摘自 《Samba-3 示例:成功部署的实践练习》 一书,系统管理员可以使用该书为小型和大型网络中的各种用途配置 Samba。
Tom Adelstein 与他的妻子 Yvonne 住在德克萨斯州达拉斯市,并在纽约市 Hiser+Adelstein 担任 Linux 和开源软件顾问。他是 《探索 JDS Linux 桌面》 一书的合著者,也是一本即将出版的关于 Linux 系统管理的书的作者,该书将由 O'Reilly and Associates 出版。自 1999 年初以来,Tom 一直在撰写关于 Linux 的文章和书籍。