Linux 在课堂中的应用:在教育环境中使用 Linux 和开源软件的经验

作者:Joseph Ruffolo

Mountainland 应用技术学院 (MATC) 是犹他州应用技术学院 (UCAT) 系统中的几个校区之一。我们的部门为高中生和成人学生教授信息技术课程。我们提供个人技术课程、短期强化培训 (STIT) 课程、定制课程以及以应用技术副学士学位或信息技术完成证书结束的教育课程。我们目前有两个卫星站点,并且有可能在 2005-2006 学年增加两个站点。

在过去几年之前,我们的课堂一直完全依赖微软操作系统。不幸的是,当您给予学生足够的权限来处理他们的课程材料和实验时,尽管您尽最大努力使用防火墙和病毒扫描器,间谍软件和病毒仍然会被引入。这些问题通过网络浏览、软盘和 USB 拇指驱动器等方式进入网络。

我们不断发展的 Linux 用途

从 2001-2002 学年开始,Mountainland 应用技术学院开始在 Orem MATC 校区提供 Linux 课程。在接下来的几年中,我们的 Linux 课程注册人数和课程设置持续增长,与 Linux 在家庭和企业中的日益普及相匹配。再加上个人 Linux 发行版的评估,教授这些课程是一个令人信服的经验,表明 Linux 是 IT 部门基础设施和在我们的课堂机器上托管课件的可行操作系统。

在 2000-2001 学年开始时,各个教室服务器都运行 Microsoft Windows 2000 或 Novell Netware。我们开始在各个教室中使用一种名为 Freesco 的基于 Linux 的防火墙/路由器产品,以帮助应对日益增长的恶意软件和 Windows 的安全不足问题。

在 2001-2002 学年期间,Windows 2000 系统继续作为主要的教室服务器。直到那时,我们仍然没有主要的部门服务器。我们启动了一个以 Linux 作为辅助服务器的系统,并开始努力将 Linux 集成到 Microsoft Active Directory 中,但遇到了很大的困难,并且几乎没有成功。我们尝试使用 Microsoft Services for Unix、winbind (Samba 2.2.x) 和 pam_smb,但我们仍然无法使事情顺利运行,并暂时放弃了将 Linux 身份验证与 Windows Active Directory 集成的尝试。在这个学年,我们还教授了第一个 CompTIA Linux+ 认证课程。

在 2002-2003 学年期间,我们用运行 Mandrake 9.1 的 Linux 系统替换了教室 Windows 2000 服务器。当我们改变了关于在后端服务器上使用什么的范例时,我们有了一种顿悟,可以这么说。我们发现,与使用 Windows 和 Active Directory 作为后端相比,使用 Linux 作为后端使得集成不同的操作系统(如 Microsoft 和 Linux)变得容易得多。

在学年的后半段,各种 Linux 发行版,如 Red Hat 9 beta 和 Mandrake 9.1,在桌面上进行了 beta 测试。NIS 用于 Linux 客户端的用户身份验证,而 Samba 作为域控制器,用于 Windows 中的用户身份验证。虽然这种设置有效,但处理同一用户帐户的多个密码令人沮丧,我们开始寻找更好的解决方案。在这个学年,我们还教授了第一个版本的 Linux 服务器管理课程,使用了我们到目前为止从经验中学到的知识。

桌面和服务器软件

服务器软件配置

操作系统发行版:Fedora Core 2

电子邮件

  • MTA:Postfix

  • LDA/MDA:procmail + Dovecot IMAP

  • MUA:Squirrelmail

  • 过滤:SpamAssassin + ClamAV

用户数据库:OpenLDAP

用户管理:phpLDAPAdmin

软件包管理/更新:APT、APT4RPM、Synaptic 和 YUM(用于存储库镜像)

Web 服务:Apache

文件服务:Samba + NFS

桌面软件配置

操作系统发行版:Fedora Core 3

桌面环境:KDE 3.3 和 GNOME 2.6

办公套件:OpenOffice.org 1.1.x(我们正在测试 CrossOver Office 和 Microsoft Office XP 作为备用选项。)

Web 浏览器:Firefox

软件包管理:APT + Synaptic

2003-2004 学年是 Linux 技术、其他开源软件以及我们对它们的使用理解和能力赶上其承诺潜力的时期。主要的 IT 教室服务器从 Netware 和 Windows 2000 迁移到运行 Linux 的单个部门服务器,在这种情况下是 Mandrake 9.1。我们开始使用 OpenLDAP 作为用户身份验证的中央存储库。LDAP 用作 Samba 的后端数据库,我们使用 pam_ldap 模块进行 Linux 客户端身份验证。我们开始在桌面上使用 Linux——最初是 Red Hat 9、Fedora Core 1 或 SuSE 9——作为与 Windows XP Pro 双启动配置中的默认选项。当时,我们的大多数学生选择了 Windows 选项,只有少数勇敢的人尝试了 Linux。

我们还保留了 Windows,因为一些课件软件包要么需要 Microsoft 产品,包括 Windows 操作系统、Internet Explorer 或 Media Player,要么可用于 Linux 的浏览器与 Microsoft Internet Explorer 的兼容性不足以使用某些网站。考虑到所有因素,我们对 Linux 在桌面上的稳定性感到满意。我们尤其对虚拟消除了病毒、间谍软件和过度好奇的学生的问题印象深刻,这些问题困扰着桌面 Windows 系统。

2004-2005 学年已被证明是持续和显着改进的一年。我们将主要的信息技术部门服务器升级到 Fedora Core 2,以获得 Linux 2.6 内核的优势。我们还开始为信息技术部门的学生提供使用 Postfix、Dovecot 和 Squirrelmail 的电子邮件,过滤由 SpamAssassin 和 ClamAV 提供。在 Microsoft 兼容性方面,我们升级到 Samba 3,它提供了与 OpenLDAP 更好的集成,并为我们寻求真正的单点登录解决方案创造了新的机会。

我们现在拥有一个环境,我们的用户可以使用相同的用户名和密码登录到 Linux 或 Windows XP Pro。Linux 客户端使用 pam_ldap 进行身份验证,用户的主目录存储在服务器上,通过 NFS 共享,并在登录时使用 autofs 动态挂载。Windows 客户端加入由 Samba 控制的域,允许用户使用与登录 Linux 客户端时相同的帐户信息、用户名和密码进行身份验证。服务器上与 Linux 一起使用的主目录通过自动驱动器映射在 Windows 中可用。Windows 用户的漫游用户配置文件也存储在他们服务器上的主目录中。

为了在单点登录领域更进一步,用户还使用相同的帐户信息来访问他们的电子邮件。我们提供了基于 Web 的电子邮件访问,电子邮件也存储在他们服务器上的主目录中,通过 Squirrelmail。标准 POP3 或 IMAP 访问由 Dovecot 提供。

Fedora Core 2 或 Fedora Core 3 是主要的桌面操作系统,具体取决于实验室。Windows XP Pro 也可用作某些实验室中的双启动选项,但我们强烈鼓励我们的学生使用 Linux。我们发现,在大多数情况下,我们的学生在切换到使用 Linux 作为他们的主要桌面操作系统时几乎没有困难。在许多情况下,他们比 Windows 更喜欢它,因为 KDE 和 GNOME 具有根据用户个人口味进行定制的功能。

为了支持重新映像之间的软件更新和补丁,我们在我们的主要 IT 部门服务器上设置了一个集中的软件/软件包存储库,该存储库镜像了 Web 上可用的更新。远程站点的实验室服务器然后从主服务器镜像更新的副本。然后,每个实验室中的各个 Linux 客户端被安排使用 apt4rpm 从各自的实验室服务器拉取更新。这种方法可以更好地利用带宽,特别是对于通过 T1 连接的站点,以及受控的软件和补丁集。

我们在主校区开发的 robust 基础设施摆脱了许多与 Microsoft Windows 相关的问题。Samba 已取代 Windows 成为那些需要运行 Windows 的桌面的域控制器。最新版本的 OpenLDAP 已被证明是 robust 的,Samba、Apache、Postfix 和 PAM 充分利用了它的功能。请参阅图 1 以查看完整的 MATC 基础设施。

Linux in the Classroom: an Experience with Linux and Open-Source Software in an Educational Environment

图 1. MATC 基础设施

远程校区的 Linux 使用

MATC 主校区位于犹他州 Orem,我们在犹他州 American Fork 有一个二级校区,距离主校区约 10 英里,通过 T1 线路连接到主校区。我们还在犹他州 Park City 有一个实验室,距离约 50 英里,我们通过与 Park City 学区合作共享该实验室。

在 2003-2004 学年期间,American Fork 校区的 IT 教室配置了一个运行基于 Linux 的防火墙的系统和一个单独的基于 Fedora Core 2 的服务器。该服务器托管 Linux 发行版 ISO 映像、预先制作的 VMware 和 VirtualPC 映像以及与学生正在上的课程相关的文件。它还为学生的工作提供了一些存储空间。工作站运行 Windows XP Pro,所有学生都使用工作站本地的单个用户名和密码登录。

最近,在 2004-2005 学年期间,American Fork 服务器已升级到 Fedora Core 3,其中包含最新版本的 Samba、OpenLDAP 和其他软件。该服务器现在提供 DNS 和 DHCP 服务,存储在该站点参加 IT 课程的学生的主目录,并充当该实验室中 Windows 客户端的备份域控制器。所有与课程相关的数据每天都从我们在 Orem 校区的主服务器使用 rsync 进行同步。防火墙提供过滤和 NAT 伪装,并处理该实验室中工作站的所有 Internet 流量。Linux 客户端使用 NFS 挂载存储在服务器上的主目录。Orem 的主要 IT 部门服务器为所有用户提供用户身份验证。

所有 LDAP 请求,无论是 Linux 客户端还是 Samba 服务器代表 Windows 客户端生成的,都通过 OpenSSL 隧道传输以提供安全性。虽然将所有身份验证 funneling 回我们的主校区不是理想的解决方案,但事实证明它非常无故障且高度可靠。我们不得不求助于这种方法,因为我们尝试使用 slapd 在 Orem 校区和 American Fork 校区之间同步 LDAP 服务器经常因我们无法控制的情况而中断,例如高流量和线路不可靠。我必须插一句,我们只为我们的部门提供计算机服务,而不是整个学校。这些中断的结果是 LDAP 目录在这些服务器之间不同步。

Park City 的共享实验室位于 Park City 学习中心。作为 Park City 学区 (PCSD) 网络的成员,PC 和网络被严格锁定,并由能力很强的 PCSD IT 人员管理。在与学区 IT 人员的讨论中,我们回顾了 2003-2004 学年期间影响我们教授 IT 课程能力的一些安全问题。我们共同决定了一项计划,包括一个基于 Linux 的服务器,该服务器将提供网络地址转换 (NAT)、DHCP 和路由,以及托管 Linux 发行版 ISO 映像、预先制作的 VMware 映像以及与学生注册课程相关的文件,以及我们学生的一些存储空间。十七台实验室 PC 被映像为双启动到 Windows XP 或 Fedora Core 2。PCSD IT 人员在 Harold Hanson 的出色帮助下,提供了一个 VLAN,该 VLAN 隔离了 Linux 服务器,但允许我们快速更改连接,以便 Windows XP 用户仍然可以验证到 PCSD Novell 网络。这使我们能够在我们的学生在实验室时为他们提供身份验证和其他服务,同时不干扰 PCSD IT 人员维护其学生网络的能力。

Park City 实验室的设置与 American Fork 实验室的设置类似。实验室服务器提供文件、打印、名称和地址服务,以及 Linux 客户端的软件和补丁更新镜像。我们在 Orem 校区的主服务器仍然使用 SSL 来保护传输,提供所有用户身份验证。请参阅图 2 以查看我们的远程校区基础设施模板。

Linux in the Classroom: an Experience with Linux and Open-Source Software in an Educational Environment

图 2. 在每个远程校区,一台 Linux 文件服务器为本地客户端提供对大型文件的快速访问,而 Linux 防火墙也充当 DHCP 服务器。

结论

在过去的几年中,我们开发了一个围绕 Linux 和开源软件的系统,该系统使我们能够为学生提供计算服务,以增强他们的学习体验,其方式既易于维护又易于扩展和复制。实施、维护和更新它的成本也非常低廉。对于教育领域的人来说,考虑到大多数中学和高等教育机构可用的有限财政资源,成本极其重要。毫无疑问,随着 Linux 和开源软件越来越被认可和可用,越来越多的学校和企业将朝着与我们相似的方向发展。这是我们如此努力地提供 Linux 和开源软件培训的主要原因之一。我们所有的 Linux 课程都受到我们自身经验的影响,并包括对我们开发和改进的大部分(如果不是全部)技术的指导。

我们与 Linux 和开源软件的旅程远未结束。我们继续改进和探索新的领域,以更好地满足我们当前和未来的需求。我们正在努力和计划未来的事情包括

  • 测试新的群件解决方案,例如 eGroupWare 和 OpenGroupWare。

  • 使用 CodeWeavers CrossOver Office 等产品测试 Windows 应用程序与 Linux 的集成。

  • 测试和实施新的 Linux 发行版,例如 Fedora Core 3 和未来版本的 Fedora。

  • 增加 OpenLDAP 作为中央用户和服务信息数据库的使用。

  • 使用 OpenLDAP 的新功能,包括 LDAP 同步复制。

  • 完善来自我们镜像 apt 存储库的软件更新。

  • 实施其他集中式管理技术。

  • 创建、修订和部署实验室和远程校区站点的硬件和软件模板。

Joseph Ruffolo (jruffolo@it.mountainlandatc.org) 是 Mountainland 应用技术学院的教员。他拥有 23 年的 IT 职业生涯,在软件开发、项目管理和系统/软件架构方面拥有专业知识。他目前教授 A+、网络和 Linux 课程。当他不工作时,他的爱好包括木工、营救被忽视或虐待的动物以及玩 魔兽世界

Ron Terry (rterry@it.mountainlandatc.org) 目前担任犹他州 Orem Mountainland 应用技术学院信息技术系主任,他还教授 Microsoft、Linux 和网络课程。在不教学时,Ron 经营一家咨询公司,专门从事 Linux 的实施和支持。他还出差为企业和其他组织提供 Linux 培训。当他不与计算机打交道时(根据他的妻子说,这种情况很少发生),他的爱好包括露营、木工和音乐。

加载 Disqus 评论