Citadel群件服务器

作者:Jon Watson

现在是时候考虑将昂贵、维护成本高的Windows系统迁移到更简洁、更强大的Linux系统了。差距分析已经完成,会议已经召开,演示文稿已经完成,现在是行动的时候了。虽然安装和配置Linux服务器后端可能具有挑战性,但我们都知道用户不会关心这些。他们想要的是不间断的功能,以便他们可以继续完成工作。虽然将用户从Microsoft Office等应用程序迁移到OpenOffice.org通常是一项直观的任务,但让你夜不能寐的800磅重的大猩猩是电子邮件和群件。你将如何为大众提供和管理类似Microsoft Outlook的功能?用一个词来说,Citadel。

自由和开源软件世界中被低估的奇迹之一是Citadel群件服务器 (www.citadel.org)。Citadel由一位开发人员控制,于1987年诞生,是现有Citadel-CP/M应用程序的UNIX版本。近20年后,现代Citadel拥有成熟群件服务器的所有功能。Citadel可以执行的奇迹之一是以很少的麻烦甚至更低的成本提供Microsoft Exchange的所有最常用功能。

许多现代组织开始意识到,他们的IT预算很大程度上受Microsoft的许可费和硬件要求控制。虽然组织可以为其中一些成本做好准备,但许多组织正在忧虑地看待Vista。虽然Vista的硬件要求并非高得离谱,但许多组织仍然需要升级其硬件才能运行它。而且,迟早他们会运行它。硬件升级周期是一些组织永无止境的痛苦之源,因为不仅服务器和服务器软件需要定期升级,而且无数的工作站也需要关注。

根据您组织的大小,您的Microsoft Exchange服务器可能是机房中最强大的服务器,而找到Exchange的合适替代品通常是一个难题。Citadel是一种群件解决方案,它不仅允许组织避免升级软件,而且还可以在功耗显著降低的机器上运行,从而在未来几年内打破硬件升级周期。

如何获取

在将其移动到生产环境之前,始终最好在测试服务器上安装和测试所有内容。更换邮件服务器当然也不例外,您应该使Citadel测试尽可能远离您的生产系统。但是,使用连接到互联网的服务器获取和配置Citadel要容易几个数量级,因为您可以利用简易安装过程。

截至撰写本文时,Citadel的最新版本是6.84。我强烈建议访问Citadel网站,以获取服务器的最新版本和安装说明的最新版本。我们的测试环境包括在VMware Player 1.0.2中运行的带有2.6内核的Debian Sarge。出于某些原因,我们选择了Web服务器安装选项,但几乎任何安装类别都应该有效,因为Citadel会安装它所需的一切。过去,我们已经在Debian Sarge服务器上安装并运行了Citadel,在这两种情况下,安装都是完美的。

安装

我在这里介绍简易安装方法不仅因为它很简单,而且它对资源的要求也不高,因此很可能任何人都可以使用它。简易安装方法几乎唯一的要求是工作正常且最好是快速的互联网连接。

简易安装方法要求目标平台上存在工具链或构建环境。此外,还需要curl(或wget)。如果您想支持与服务器的SSL连接,还需要libssl-dev。在Debian系统上,使用以下命令安装或验证您的构建环境

apt-get install build-essential curl libssl-dev

在安装之前,值得注意的是,Citadel被设计为在您的服务器上运行的黑盒系统。黑盒的一部分意味着Citadel根据自己的用户数据库而不是您的系统用户数据库(通常是/etc/passwd)验证登录。如果您希望Citadel根据您的系统用户数据库进行身份验证,则必须在运行Citadel安装之前将IS_AUTOLOGIN变量导出到环境,如下所示

export IS_AUTOLOGIN=yes

现在环境已设置好,是时候使用以下命令启动简易安装了

curl http://easyinstall.citadel.org/install | sh

或者,如果您更喜欢使用wget

wget -q -O - http://easyinstall.citadel.org/install | sh

Citadel下载、解压缩并开始安装过程。您需要注意安装过程,因为Citadel会询问所有正确的问题,但您不需要任何神秘的配置日志来回答它们。

Citadel很谦虚,尽管它带来了很多功能,但它并不假定您想要任何这些功能。Citadel会询问您是否要使用其内置的POP、SMTP或IMAP服务器,还是保留您自己的任何服务器并使其运行。

此外,还有一个名为WebCit的Web界面,用户可以在出差或远离本地电子邮件和个人信息管理器客户端时使用它来获取他们的所有电子邮件、日历和联系信息。如果您选择安装WebCit,Citadel不会假定您希望它在端口80上运行。因此,可以在非标准端口上运行WebCit,并保持您在端口80上的任何现有网站不受干扰。

对于好奇的人,Citadel安装在/usr/local/citadel中,如果选择安装WebCit,则安装在/usr/local/webcit中。支持库可以在/usr/local/ctdlsupport中找到。

卸载

卸载通过简易安装方法安装的Citadel实例很容易

  1. 删除上面提到的三个目录(/usr/local/webcit、usr/local/citadel和/usr/local/ctdlsupport)。

  2. 从inittab文件中删除Citadel和WebCit条目(通常为/etc/inittab)。

  3. 键入命令init q以重启init。

完成。

初始配置

我们使用WebCit Web界面来配置和使用我们的Citadel服务器,但在漂亮的GUI下跳动着文本模式BBS的心脏。实际上,Citadel系统的几乎所有配置和大部分日常使用都可以通过文本模式Citadel客户端(类似于过去的BBS场景)来完成。可悲的是,这种通信方法在很大程度上已经失去了大多数现代用户的青睐,因此我们仅专注于WebCit来完成工作。

话虽如此,我们仍然需要出于其他原因登录到我们的Linux服务器,因此我们必须更改Citadel的日志记录方式。默认情况下,Citadel记录到控制台,这需要重定向到其他地方才能完成任何工作。有很多不同的方法可以做到这一点,但由于Linux提供了一个可配置的syslog守护程序,因此编辑/etc/syslog.conf文件(在Debian上)并将local4设备指向日志文件或其他不碍事的地方似乎是合乎逻辑的。

第一个登录到新的Citadel Web界面的人将成为管理员级别的用户。要创建管理员帐户,请将您的Web浏览器指向您在安装期间告诉WebCit侦听的主机和端口,输入用户名和密码,然后按“新建用户”按钮(图1)。如果您在登录后看到菜单左下角的“管理”按钮(图2),您就会知道您已成为管理员。

The Citadel Groupware Server

图1. 登录界面

The Citadel Groupware Server

图2. 大厅,以管理员身份登录时

要进入站点范围的配置,请单击“管理”按钮,您将被带入一个组织良好且完整的设置菜单。主要类别位于页面顶部,单击每个类别都会调出该特定区域的设置。如前所述,Citadel在WebCit界面下也是一个文本模式BBS,并且某些配置选项使这一点非常明显。

虽然对所有配置项进行充分研究超出了本文的范围,但最重要的设置位于“网络”和“目录”(如果您使用LDAP)下。在“网络”选项卡下,您可以启用和禁用服务并修改它们运行的端口。在“目录”选项卡下,您可以指定您的LDAP设置。如果您不使用LDAP,您可能可以保持这两个屏幕不变,因为“网络”默认设置要么非常合理,要么会反映您的安装选择(图3)。

The Citadel Groupware Server

图3. 网络服务设置

您可能需要快速访问“访问”选项卡,并确保它反映了您希望新用户如何注册。可能,对于企业服务器,管理员将创建所有帐户,并且可以关闭用户驱动的帐户创建。

在让用户访问WebCit界面之前的某个时候,您可能需要稍微自定义站点。当您浏览默认的WebCit安装时,您可能会注意到站点上的默认文本横幅,其中包含其位置的路径。一个很好的例子是主WebCit登录页面上的“欢迎来到我的系统”横幅(图1)。/usr/local/citadel/messages中存在各种文本文件,可以根据您的需要进行定制。

设置电子邮件

首先,在将您的邮件记录指向新的Citadel服务器之前,您必须告诉它要接受哪些域的电子邮件。我更喜欢Citadel处理此问题的方式,而不是在配置文件中乱搞。要指定您有兴趣处理电子邮件的域,请单击“高级”菜单选项,然后单击“域名和Internet电子邮件配置”链接。

在结果页面中,在“本地主机别名”字段中输入您要接受邮件的第一个域。单击“添加”按钮,然后根据您的需要继续输入更多域(图4)。

The Citadel Groupware Server

图4. Internet配置

“本地主机别名”字段是唯一必须填写的设置,但您可能还希望在此屏幕中集成一些更高级的功能。您可以指定要映射到全局地址列表(GAL)的域,指示智能主机地址(如果您的服务器未直接发送邮件),或指向SpamAssassin或实时黑名单(RBL)主机以在传递传入邮件之前对其进行清理。

就这样。您现在可以从您的Citadel安装中发送和接收电子邮件了。

设置客户端

没有任何技术原因必须设置本地客户端。WebCit通过Web界面公开了所有最常用的群件功能,用户可以立即开始使用它来组织他们的生活。但是,本地客户端确实带来了一些优势,许多用户不会对Web界面感到满意。因此,我们继续前进。

根据用户的需求,各种Linux客户端可以替代Microsoft Outlook。经过多次设置,我们发现KDE的Kontact是最容易备份到Citadel服务器的个人信息管理器,所以这就是我们在这里使用的。

Kontact是KDE项目的多合一个人信息管理器。从某种意义上说,Kontact只是提供了一个统一的界面来访问KMail、KOrganizer、KAddressbook以及一些注释和新闻组件。

KMail

设置KMail是一个相当直观的过程。如果您以前设置过邮件客户端,您将能够毫无问题地设置KMail。只要您至少设置了一个Citadel服务器的IMAP或POP服务器,您就可以将KMail设置为使用其中任何一个。只需插入您的Citadel服务器的URL或IP,您的帐户凭据即可完成(图5)。

The Citadel Groupware Server

图5. 为Citadel设置KMail

KOrganizer

设置Kontact的日历功能有点深入。我们发现GroupDAV协议是最容易和最强大的设置,所以这就是我们在这里做的。

您需要知道的少数事情之一是如何构建您的GroupDAV URL。很简单,您的GroupDAV URL是您的Citadel服务器的URL(包括非标准HTTP端口,如果您告诉Citadel在端口80以外的端口上侦听),并在其后附加/groupdav。在我的例子中,我的GroupDAV URL是http://192.168.38.128/groupdav。

要启用KCalendar的群件功能,请单击左侧窗格中的“日历”图标。在中间窗格的底部是一个标记为“日历”的部分。右键单击该窗格中的任意位置,然后选择“添加”。在结果窗口中,选择“GroupDAV服务器”选项。如果您没有看到“GroupDAV服务器”选项,则很可能您没有安装kdepim-kresources软件包。安装它,重新启动Kontact,您应该就可以开始了。

资源配置窗口打开。在“名称”字段中输入对您有意义的名称,并在“URL”字段中输入您的特殊GroupDAV URL。您的用户和密码凭据与您首次登录Citadel时设置的凭据相同。单击“更新文件夹列表”按钮,底部“文件夹选择”窗格应填充“日历”和“任务”单选按钮(图6)。

The Citadel Groupware Server

图6. 为Citadel设置KOrganizer (Kontact) 日历。

似乎单击“日历”和“任务”项目旁边的复选框将启用这些项目,但系统有点错误。在许多情况下,会出现两个“日历”和“任务”实例,如图6所示。此外,要启用“日历”或“任务”项目,唯一有效的方法是右键单击每个项目并从上下文菜单中选择“启用”。

启用“日历”后,您可以在Kontact或WebCit中输入项目,并且项目会在检查邮件或发生其他服务器联系时同步(图7)。

The Citadel Groupware Server

图7. 运行中的Kontact

联系人

设置Kontact的联系人(快速说五遍)与设置KCalendar非常相似。单击左侧窗格中的“联系人”图标。在中间列的底部是一个标记为“地址簿”的窗格。右键单击技巧在这里不起作用,因此请单击“添加”按钮。选择相同的“GroupDAV服务器”选项,并填写您为KCalendar设置填写的所有相同数据。单击“刷新文件夹列表”按钮,使用右键单击启用技巧,您就可以开始了(图8)。

The Citadel Groupware Server

图8. Kontact中的GroupDAV设置

与KCalendar一样,一旦您设置了GroupDAV连接器,您现在就可以从KDE或WebCit管理您的联系人数据(图9)。

The Citadel Groupware Server

图9. Citadel和Kontact访问相同的数据

一旦设置了KCalendar,“任务”和“日记”就只是简单的工作。它们不需要任何自己的设置。

许多其他客户端在不同程度上支持GroupDAV协议。这些客户端中的任何一个都可以代替Kontact使用,尽管可能功能较少。有关客户端的完整列表及其GroupDAV支持状态,请访问GroupDAV站点 (www.groupdav.org/implementations.html)。

GroupDAV不是唯一可以与Citadel一起使用的技术。WebDAV和Webcal可以与客户端(例如Mozilla Sunbird和Evolution)一起使用,以共享日历和安排事件。Microsoft Outlook连接器也在开发中,但目前,Outlook只能用于访问POP/IMAP电子邮件和IMAP文件夹。随着时间的推移,越来越多支持GroupDAV和WebDAV的客户端出现。Citadel FAQ包含一个维护的客户端列表以及如何配置它们。

虽然有一些群件项目正在进行中,可以与Microsoft Exchange一较高下,但我们发现Citadel简直是最容易安装和维护的。Citadel安装最困难的部分是等待所有组件下载完成。Citadel正在积极开发中,到本文发表时,可能会有新版本发布。首席开发人员Art Cancro可以在UNCENSORED! BBS论坛 (uncensored.citadel.org) 的Citadel支持中找到,以及其他Citadel开发人员和经验丰富的用户。

Jon Watson (www.jonwatson.ca) 是一位加拿大GNU/Linux爱好者,他定期为Linux社区撰写文章。当不写作、写博客和播客关于自由和开源软件时,经常可以在他的办公室里找到Jon,他在那里磨练他的Linux+认证,但这除了他自己之外没有人印象深刻。

加载Disqus评论