ZCS 开源版管理员指南.docx
- 文档编号:29860461
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:23
- 大小:26.51KB
ZCS 开源版管理员指南.docx
《ZCS 开源版管理员指南.docx》由会员分享,可在线阅读,更多相关《ZCS 开源版管理员指南.docx(23页珍藏版)》请在冰豆网上搜索。
ZCS开源版管理员指南
ZCS开源版管理员指南
Linux&Email2011-02-1016:
35:
57阅读34评论0字号:
大中小订阅
本文转载于“Zimbra中文社区”(c)2009
版本:
1.0
ZCS开源版管理员指南2
“Zimbra中文社区”(c)2009
目录......................................................3
目标读者....................................................3
可参考的文档................................................3
被推荐的第三方组件的支持.................................3
支持与联系信息..............................................4
第二章产品概览..............................................5
核心功能....................................................5
Zimbra组件.................................................6
系统架构....................................................7
Zimbra软件包...............................................8
典型的多服务器安装样例......................................10
第三章邮箱服务器(ZimbraMailboxServer)...................12
进站邮件的路由..............................................12
磁盘结构....................................................12
邮件存储....................................................12
数据存储....................................................13
索引存储....................................................13
日志........................................................14
第四章目录服务..............................................15
目录服务概览................................................15
LDAP层次..................................................16
Zimbra模式定义.............................................16
账户验证....................................................17
内部验证机制................................................17
外部LDAP或活动目录验证机制................................17
定制验证-zimbraCustomAuth..................................18
Kerberos5验证机制..........................................19
ZCS对象....................................................19
公司目录/全局地址列表(GAL,GlobalAddressList)...........22
刷新LDAP缓存...............................................23
第一章介绍
ZCS是一个功能丰富的消息和协作解决方案,包括对电子邮件、通讯录、日历、任务、文档
创作等。
目标读者
本指南是面向那些负责安装、维护、支持ZCS部署的系统管理员的。
本指南的读者应该具有如下一些知识和技巧:
?
熟悉相关联的技术和标准,如RHEL操作系统、SUSE操作系统以及开源的一些基本概
念
?
电子邮件系统管理的实际经验
可参考的文档
下列文件可供参考:
被推荐的第三方组件的支持
只要有可能,Zimbra公司会使用已经存在的行业标准和开源实现,特别是在备份管理、用户
认证、系统平台、数据库管理等方面。
但是,Zimbra只能支持一些特定的实现,这些实现包名称说明
InstallationGuide
安装指南
针对单服务器及多服务器安装的指南,包括对系统需求及
服务器配置的描述。
AdministratorGuide
管理员指南
本文档。
提供了易于理解的产品概览、架构、服务器功能、
管理任务、配置选项和监控工具的信息。
ReleaseNote
发布说明
描述当前发布版本的新特性、升级步骤等。
括在ZCS的架构概览文档中。
本文档也许偶尔会引用一些其它的工具,但必须声明这些并不
表示Zimbra会完全支持。
支持与联系信息
略
第二章产品概览
本章内容将描述Zimbra应用程序的架构、集成点和信息流。
ZCS被设计成为一个端到端的可伸缩的、高可信的邮件解决方案。
这个消息架构基于行业内
熟知的开源技术和标准而构建,由一个服务器应用和客户端界面构成。
架构包括如下一些优点:
?
开源组件的集成。
Linux,Jetty,Postfix,MySQL,OpenLDAP
?
使用行业内的标准、开放协议。
SMTP、LMTP、SOAP、XML、IMA、POP等。
?
时髦的技术设计。
Java、JavaScript瘦客户端、DHTML
?
水平的伸缩性。
由于每个邮箱服务器都包括它自己的数据存储、消息存储、邮箱账号,
所以你在扩充系统时可以豪不担心。
要支持更多的账号,只需添加更多的服务器。
RHEL
的集群套件、SYMANTEC的VeritasClusterServer等可以使用。
?
基于浏览器的客户端。
ZimbraWebClient使用户可以通过浏览器享受所有ZCS的功能。
?
管理控制台。
管理控制台用于管理账号和服务器。
核心功能
ZCS是一个创新的消息和协作应用系统,提供了如下一些解决方案:
?
电子邮件
?
群组日历
?
通讯录
?
任务管理
?
基于Web的文档管理和创作
ZCS的核心功能包括:
?
邮件投递和存储
?
邮件的索引
?
邮箱服务器的日志
?
IMAP和POP支持
?
目录服务
?
防垃圾邮件保护
?
防病毒保护
管理员可以通过基于浏览器的管理控制台方便地管理域名、服务器、账号,包括:
?
管理服务类型(COS,ClassofService)
?
添加账号和域名
?
针对每个账号或服务类型设置一些限制
?
创建和编辑分发列表
?
导入MicrosoftExchange用户账号
?
为一个域名设置虚拟主机
?
管理服务器
?
查看和管理服务器的状态
?
控制使用情况
Zimbra提供两个基于浏览器的客户端(ZWC,ZimbraWebClient),即采用Ajax技术的高级
ZWC和使用标准HTML技术的标准ZWC。
ZWC的特征包括:
?
编写、阅读、回复、转发以及其它一些标准的电子邮件操作
?
按照对话查看邮件
?
给邮件加上标签
?
执行高级搜索
?
保存搜索结果
?
使用日历安排日程
?
共享日历、邮件夹、通讯录
?
创建通讯录并共享
?
设置邮箱的使用喜好,包括定义邮件过滤选项
?
使用ZCS文档来创建、组织和共享Web文档
?
使用任务功能来创建待办事项列表,并管理任务
Zimbra组件
Zimbra架构中包括对使用标准协议的开源项目的整合。
包括在Zimbra中的第三方的软件如
下表列示,并且会在安装过程中被安装。
所有的这些组件都已经经过测试和配置,可以和
Zimbra工作得很好。
名称描述
JettyZimbra的软件运行时需要的Web服务器
系统架构
下图显示了ZCS的架构设计,包括捆绑的开源软件及其它推荐使用的第三方软件。
Postfix一个开源的邮件传输代理(MTA)
OpenLDAP一个开源的目录服务软件,提供用户的验证服务
MySQL数据库软件
Lucene开源的全文检索和搜索引擎
ClamAV防病毒软件
SpamAssassin反垃圾邮件过滤器
Amavisd-new在MTA和内容过滤器之间提供接口
James/Sieve用于建立电子邮件的过滤规则
Zimbra软件包
ZCS包括如下应用程序包:
?
ZimbraCore
包括核心的类库、实用工具、监控工具和基本的配置文件
?
ZimbraLDAP
ZCS使用开源的OpenLDAP作为目录服务,实现用户身份验证功能。
每个账号都有一个唯一
的邮箱ID作为账号的主要身份编号。
ZCS中使用的OpenLDAP已经经过定制。
?
ZimbraMTA
Postfix是一个开源的MTA程序,通过SMTP协议接收邮件,并通过LMTP协议将邮件传递
到合适的Zimbra邮箱服务器中。
ZimbraMTA包中还包括防病毒软件和反垃圾邮件软件。
?
ZimbraStore(邮箱服务器)
包括了邮箱服务器需要的各个组件,包括Jetty,一个开源的Servlet容器。
在ZCS中,邮箱
服务器被称作mailboxd。
每个账号只能在一个邮箱服务器中存在;每个账号都会对应一个邮箱,其中包括所有的邮件
和附件。
邮箱服务器中包括如下组件:
?
数据存储
是一个MySQL数据库,内部的邮箱ID与用户账号相关联。
数据存储将邮箱ID与用户
的OpenDLAP账号进行映射。
数据存储包括每个用户的标签定义、邮件夹、日程安排、
联系人,同时也包括每封邮件的状态、所在邮件夹等。
?
消息存储
消息存储是用来存放邮件及附件的。
消息以MIME格式存放。
有多个收件人的邮件,在
消息存储中只存放一份。
?
索引存储
索引和搜索技术由Lucene提供。
索引文件基于单个邮箱。
每个服务器都有单独的数据存储、邮件存储和索引存储。
当新邮件到达时,服务器会安排一个新的线程来对邮件做索引。
?
Zimbr-SNMP
非必须安装。
如果你决定使用它来做监控,建议在每种服务器(邮箱服务器、LDAP、MTA)
上都安装。
Zimbra使用swatch查看syslog输出生成SNMP信号。
?
ZimbraLogger
可选择性地安装于一台邮箱服务器上。
这个组件用于syslog的聚合和报表。
如果未安装,则无法在管理控制台中看到服务器的统计信息。
?
ZimbraSpell
可选择性安装。
它是一个开源的拼写检查工具,用在ZWC中。
如果此包安装了,Zimbra-apache也会被安装。
?
ZimbraProxy
可选择性安装。
使用代理服务器可以将同一个域名的邮箱分散到不同的服务器上。
?
ZimbraMemcached
Memcached是一个与代理相关的包,当代理包被安装时,它也会被安装。
运行代理服务器的必须使用Memcached,多台代理可使用同一台Memcached服务器。
典型的多服务器安装样例
实际的配置取决于多种因素,如邮箱的数量、容量限制规则、性能需求、已有的网络结构、IT的策略、安装方法论、垃圾邮件过滤需求等等。
下图显示了一个典型的配置(包括进站的流量和用户连接)。
上图描述:
1.进站的互联网邮件到达防火墙和负载均衡设备,然后到达边界MTA作垃圾邮件过滤。
2.经过过滤的邮件到达第二个负载均衡设备。
3.一个来自外部的用户连接也到达第二个负载均衡设备。
4.进站的互联网邮件到达任何一个MTA并进行防病毒和反垃圾邮件过滤。
5.MTA从LDAP复制服务器上取到收件人的信息。
6.在得到收件人的信息后,MTA服务器将邮件发送到指定的邮箱服务器中。
7.内部最终用户的连接直接到后台服务器。
8.Zimbra服务器的备份可被处理到一个挂载的硬盘上。
第三章邮箱服务器(ZimbraMailboxServer)
邮箱服务器是一个专用服务器,管理所有的邮箱内容,包括邮件、联系人、日程安排、文档、
附件等。
邮件接收自MTA服务器,经过所有创建的过滤器后到达邮箱服务器。
邮件会被索
引。
每个邮箱服务器只能看到它自己管理的存储卷。
邮箱服务器无法知晓、读取或写入到其它邮
箱服务器。
在单服务器环境中,所有的服务都在一台服务器中,在安装过程中磁盘被划分为多个分区以
满足服务的需要。
进站邮件的路由
MTA服务器通过SMTP协议接收邮件并把每封邮件通过LMTP协议投递到合适的邮箱服务
器中。
每当邮件到达时,ZCS服务器会启动一个新的线程来完成索引。
磁盘结构
邮箱服务器包括如下卷:
?
消息存储,位于/opt/zimbra/store
?
数据存储,位于/opt/zimbra/db下的MySQL数据库
?
索引存储,位于/opt/zimbra/index
?
日志文件,位于/opt/zimbra/log
邮件存储
邮件存储是用来存放邮件的,包括邮件的正文和附件。
邮件以MIME格式存放。
邮件存储位于每台服务器的/opt/zimbra/store目录下,每个邮箱都有一个以ZCS内部ID命
名的专用目录。
备注:
邮箱内部ID是服务器唯一的,不是系统唯一的。
单副本存放
单副本存放技术允许有多个收件人的邮箱在系统中只存放一份。
在UNIX系统中,每个用户
的邮箱目录都包括一个到真实文件的硬连接(hardlink)。
数据存储
ZCS的数据存储是一个MySQL数据库,包含了与邮件相关的元信息,如标签、会话、或在
文件系统中的指针。
每个账号(邮箱)只存在于一台服务器上。
每台服务器有它自己独立的数据存储,包括它所
管理的所有邮箱。
数据存储包括:
?
邮箱-账号的映射。
在ZCS中,主要的标识是邮箱的内部ID,无论是用户名还是账号。
邮箱内部ID在一台服务器中是唯一的。
数据存储将邮箱内部ID映射到用户的OpenLDAP
账号。
?
每个用户的标签定义、邮件夹、联系人、日程安排、任务、邮件过滤器等
?
关于每封邮件的信息,包括是否被阅读、与哪个标签相关联等。
索引存储
索引和搜索技术由ApacheLucene提供。
邮件在进入系统的时候被自动索引。
每个邮箱都有
一个对应的索引文件。
管理员或用户无法管理或配置索引进程。
图3:
分词索引过程
索引过程如下:
1.MTA将进站的邮件投递到邮箱服务器中
2.邮箱服务器分析邮件,包括邮件头、正文及所有可读的附件如PDF或DOC,进行分词索引。
3.邮箱服务器将分词索引传递给Lucene来创建索引文件
备注:
分词索引是一种按单词进行索引的方法。
一些常见的形式,如电话号码、电邮地址、
域名等分词如上图所示。
日志
ZCS部署由很多个第三方的组件构成。
每个组件都可能产生它自己的日志。
一些ZCS日志信息会生成SNMPTrap,你可以用SNMP监控工具来捕获。
详见监控ZCS服务器。
第四章目录服务
Zimbra目录服务是一个运行着包括Zimbra的模式定义(Schema)的OpenLDAP版本。
本章将描述目录服务如何被用于用户认证和账号配置及管理。
备注:
Zimbra支持与微软活动目录的集成。
请与Zimbra的支持人员联系以获得针对某个特
定目录的实现场景。
LDAP服务器在安装ZCS的被指定。
每台服务器都有一个属于它自己的条目,其中包含与操
作有关的参数属性。
另外,还有一个全局的配置对象,当其它服务器未设置相关属性的时候
会使用它的默认值。
这些属性当中的一部分可以通过管理控制台进行修改,其余的可以通过命令行工具来修改。
目录服务概览
LDAP目录服务通常用来存放得到网络使用许可的用户或设备信息。
在Zimbra的LDAP使用OpenLDAP来存放数据。
图4显示了Zimbra系统中的目录服务与其它服务通讯的流量。
MTA和邮箱服务器从目录服务中读取、写入数据。
边界的MTA不与目录服务连接,它使用DNS服务器中的MX记录来决定向何处投递邮件。
位于每个LDAP核心的一个使用模式定义进行组织的数据库。
模式定义确定了存放在数据库
中的对象类型以及它们的属性类型。
每个LDAP目录条目由一系列的属性构成,具有一个全局唯一的辨别名(DN)。
一个条目所允许的属性是由这个条目所关联的对象类所决定的。
对象类决定了一个条目所引用的对象类型和存储的数据。
条目的对象类决定了条目的结构,
也就是一个结构性对象,它是无法被改变的。
LDAP层次
LDAP目录以层次化的树形结构进行组织。
在ZCS系统中,这个树形结构基于互联网域名进
行组织。
LDAP条目通常包括诸如用户账号、组织或服务器等。
图5显示了ZCS的LDAP层次化结构。
每个条目都与特定的对象类关联。
请参见ZCS的LDAP模式定义,来了解ZCS使用的完整的辅助对象类。
Zimbra模式定义
每个LDAP实现都一个模式定义来定义它的域名结构、账号属性及其它的数据结构。
ZCS包
括了一个经过定制的LDAP模式定义,它扩展了OpenLDAP自带的能用模式定义。
ZCS服务
器、管理控制台、命令行工具以及其它管理工具都依赖于这些模式定义。
ZCS模式定义中建立的属性和对象类都以“zimbra”为前缀,如对象类zimbraMailRecipient有一个名zimbraAttachmentsBlocked的属性。
ZCS的模式定义被认为是一个基线的模式定义。
随ZCS一直分发的OpenLDAP安装工具会
自动安装如下几个模式定义:
?
core.schema
?
cosine.schema
?
inetorgperson.schema
?
zimbra.schema
注意:
你不能修改ZCS自带的模式定义。
账户验证
本节描述了账户验证的机制,包括:
?
内部
?
外部LDAP
?
外部活动目录
内部验证方法假设OpenLDAP目录服务器上运行着ZCS模式定义。
外部LDAP和外部活动目录尝试连接指定的LDAP服务器,使用提供的用户名和密码。
这个
方法可以用在这样的一个电子邮件环境中:
活动目录用于验证、ZCS-LDAP用于其它所有的
与ZCS相关活动。
这样的话,要求用户信息同时存在于OpenLDAP和活动目录中。
验证方法的设置是基于域名的,由zimbraAuthMech属性决定。
如果这个属性未被设置,默认使用内部验证。
内部验证机制
用OpenLDAP存放账户信息时,userPassword属性的值以SSHA算法进行摘要。
这个信息并不用于连接目录服务器,而是用来比较目录服务器中的信息。
外部LDAP或活动目录验证机制
与内部验证机制不同,外部验证方法使用提供的用户名和密码连接远程的目录服务器。
如果
连接成功,则表示密码有效,连接也会被关闭。
两个额外的域相关的属性用来确定使用外部验证的细节:
zimbraAuthLdapURL和
zimbraAuthLdapBindDn。
zimbraAuthLdapURL属性和SSL
该属性包含外部目录服务器或活动目录服务器的URL,格式如下:
ldap:
//ldapserver:
port/
其中ldapserver是外部目录服务器的IP地址或主机名,port是端口号码。
你也可以使用全指定主机名来代替端口号码,如:
ldap:
//server1:
389
ldap:
//
如果使用SSL连接,则应用ldaps代替ldap,且SSL证书必须被配置为可信证书。
zimbraAuthLdapBindDn属性
该属性是一个格式化的字符串,用于指定连接活动目录服务器的用户名。
定制验证-zimbraCustomAuth
除了内部验证和外部验证外,你还可以使得定制验证机制。
定制验证机制使你可以使用其它
类型的身份库。
当AuthRequest请求发起的时候,ZCS会为根据当前域名来执行后台的验证。
如果使用外部验证机制,ZCS会调用注册的定制验证处理器来验证用户信息。
要设置定制验证机制,需要为域名配置定制验证机制并注册定制验证处理器。
为域名配置定制验证机制
为一个域名配置定制验证机制,需要设置该域名的LDAP属性zimbraAuthMech的值为
custom:
{注册的定制验证机制处理名}。
比如:
zmprovmodifydomain{domain|id}zimbraAuthMechcustom:
sample.
其中“sample”为一个已经注册的定制验证处理器的名称。
注册定制验证处理器
要注册一个定制验证处理器,需要在扩展类的init方法中调用ZimbraCustomAuth.register方
法。
类名:
com.zimbra.cs.account.ldap.zimbraCustomAuth
方法:
publicsynchronizedstaticvoidregister[StringhndlName,zimbraCustomAuthhandler]
备注:
定义
?
hndlName是在ZCS的验证体系中注册的验证处理器名称。
?
Handler是一个被调用来进行验证处理的对象。
这个对象必须是ZimbraCustomAuth的子
类。
例子:
publicclassSampleExtensionCustomAuthimplementsZimbraExtension{
publicvoidinit()throwsServiceException{
ZimbraCustomAuth.register("sample",newSampleCustomAuth());
}
...
}
定制验证是如何工作的
当接受到一个AuthRequest请求时,如果当前域名被配置为使用定制验证机制,ZCS验证框
架会调用ZimbraCustomAuth实例中的相应方法。
用户账户对象(包括用户名、密码)被作为ZimbraCustomAuth.authenticate()的参数进行验证。
用户账户对象的所有属性都可以提取。
Kerberos5验证机制
Kerboros5验证机制通过外部的Kerberos服务器来
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ZCS 开源版管理员指南 开源版 管理员 指南