学习目标:
了解LDAP服务器的相关知识。学会配置Mirapoint Directory目录服务器。
1 LDAP基础
LDAP的英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。现在LDAP技术不仅发展得很快而且也是激动人心的。在企业范围内实现LDAP可以让运行在几乎所有计算机平台上的所有的应用程序从 LDAP目录中获取信息。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。通过把 LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至连主要的数据源都可以放在任何地方。
1.1 LDAP的优势
如果需要开发一种提供公共信息查询的系统一般的设计方法可能是采用基于WEB的数据库设计方式,即前端使用浏览器而后端使用WEB服务器加上关系数据库。后端在Windows的典型实现可能是Windows NT + IIS + Acess数据库或者是SQL服务器,IIS和数据库之间通过ASP技术使用ODBC进行连接,达到通过填写表单查询数据的功能;
后端在Linux系统的典型实现可能是Linux+ Apache + postgresql,Apache 和数据库之间通过PHP3提供的函数进行连接。使用上述方法的缺点是后端关系数据库的引入导致系统整体的性能降低和系统的管理比较繁琐,因为需要不断的进行数据类型的验证和事务的完整性的确认;并且前端用户对数据的控制不够灵活,用户权限的设置一般只能是设置在表一级而不是设置在记录一级。
目录服务的推出主要是解决上述数据库中存在的问题。目录与关系数据库相似,是指具有描述性的基于属性的记录集合,但它的数据类型主要是字符型,为了检索的需要添加了BIN (二进制数据)、CIS(忽略大小写)、CES(大小写敏感)、TEL(电话型)等语法(Syntax),而不是关系数据库提供的整数、浮点数、日期、货币等类型,同样也不提供象关系数据库中普遍包含的大量的函数,它主要面向数据的查询服务(查询和修改操作比一般是大于10:1),不提供事务的回滚(rollback)机制,它的数据修改使用简单的锁定机制实现All-or-Nothing,它的目标是快速响应和大容量查询并且提供多目录服务器的信息复制功能。
现在该说说LDAP目录到底有些什么优势了。现在LDAP的流行是很多因数共同作用的结果。可能LDAP最大的优势是:可以在任何计算机平台上,用很容易获得的而且数目不断增加的LDAP的客户端程序访问LDAP目录。而且也很容易定制应用程序为它加上LDAP的支持。
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 145 of 170
LDAP协议是跨平台的和标准的协议,因此应用程序就不用为LDAP目录放在什么样的服务器上操心了。实际上,LDAP得到了业界的广泛认可,因为它是Internet的标准。产商都很愿意在产品中加入对LDAP的支持,因为他们根本不用考虑另一端(客户端或服务端)是怎么样的。LDAP服务器可以是任何一个开发源代码或商用的LDAP目录服务器(或者还可能是具有LDAP界面的关系型数据库),因为可以用同样的协议、客户端连接软件包和查询命令与LDAP服务器进行交互。与LDAP不同的是,如果软件产商想在软件产品中集成对DBMS的支持,那么通常都要对每一个数据库服务器单独定制。不象很多商用的关系型数据库,你不必为LDAP的每一个客户端连接或许可协议付费 大多数的LDAP服务器安装起来很简单,也容易维护和优化。
LDAP服务器可以用“推”或“拉”的方法复制部分或全部数据,例如:可以把数据“推”到远程的办公室,以增加数据的安全性。复制技术是内置在LDAP服务器中的而且很容易配置。如果要在DBMS中使用相同的复制功能,数据库产商就会要你支付额外的费用,而且也很难管理。
LDAP允许你根据需要使用ACL(一般都称为ACL或者访问控制列表)控制对数据读和写的权限。例如,设备管理员可以有权改变员工的工作地点和办公室号码,但是不允许改变记录中其它的域。ACL可以根据谁访问数据、访问什么数据、数据存在什么地方以及其它对数据进行访问控制。因为这些都是由LDAP目录服务器完成的,所以不用担心在客户端的应用程序上是否要进行安全检查。
LDAP(Lightweight Directory Acess Protocol)是目录服务在TCP/IP上的实现(RFC 1777 V2版和RFC 2251 V3版)。它是对X500的目录协议的移植,但是简化了实现方法,所以称为轻量级的目录服务。在LDAP中目录是按照树型结构组织,目录由条目(Entry)组成,条目相当于关系数据库中表的记录;条目是具有区别名DN(DistinguishedName)的属性(Attribute)集合,DN相当于关系数据库表中的关键字(PrimaryKey);属性由类型(Type)和多个值(Values)组成,相当于关系数据库中的域(Field)由域名和数据类型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。LDAP协议集还规定了DN的命名方法、存取控制方法、搜索格式、复制方法、URL格式、开发接口等。LDAP对于这样存储这样的信息最为有用,也就是数据需要从不同的地点读取,但是不需要经常更新。
例如,这些信息存储在LDAP目录中是十分有效的: z 公司员工的电话号码簿和组织结构图 z 客户的联系信息
z 计算机管理需要的信息,包括NIS映射、email假名,等等 z 软件包的配置信息 z 公用证书和安全密匙
1.2 安全和访问控制
LDAP提供很复杂的不同层次的访问控制或者ACL。因这些访问可以在服务器端控制,这比用客户端的软件保证数据的安全可安全多了。用LDAP的ACL,可以完成:
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 146 of 170
z 给予用户改变他们自己的电话号码和家庭地址的权限,但是限制他们对其它数据(如,
职务名称,经理的登录名,等等)只有“只读”权限。
z 给予“HR-admins\"组中的所有人权限以改变下面这些用户的信息:经理、工作名称、
员工号、部门名称和部门号。但是对其它域没有写权限。
z 禁止任何人查询LDAP服务器上的用户口令,但是可以允许用户改变他或她自己的口
令。
z 给予经理访问他们上级的家庭电话的只读权限,但是禁止其他人有这个权限。
z 给予“host-admins\"组中的任何人创建、删除和编辑所有保存在LDAP服务器中的与
计算机主机有关的信息
z 通过Web,允许“foobar-sales\"组中的成员有选择地给予或禁止他们自己读取一部分
客户联系数据的读权限。这将允许他们把客户联系信息下载到本地的笔记本电脑或个人数字助理(PDA)上。(如果销售人员的软件都支持LDAP,这将非常有用)
z 通过Web,允许组的所有者删除或添加他们拥有的组的成员。例如:可以允许销售经
理给予或禁止销售人员改变Web页的权限。也可以允许邮件假名(mail aliase)的所有者不经过IT技术人员就直接从邮件假名中删除或添加用户。“公用”的邮件列表应该允许用户从邮件假名中添加或删除自己(但是只能是自己)。也可以对IP地址或主机名加以限制。例如,某些域只允许用户IP地址以192.168.200.*开头的有读的权限,或者用户反向查找DNS得到的主机名必须为*.foobar.com。
1.3 LDAP目录树的结构
LDAP目录以树状的层次结构来存储数据。如果你对自顶向下的DNS树或UNIX文件的目录树比较熟悉,也就很容易掌握LDAP目录树这个概念了。就象DNS的主机名那样,LDAP目录记录的标识名(Distinguished Name,简称DN)是用来读取单个记录,以及回溯到树的顶部。后面会做详细地介绍。
为什么要用层次结构来组织数据呢?原因是多方面的。下面是可能遇到的一些情况: z 如果你想把所有的美国客户的联系信息都“推”到位于到西雅图办公室(负责营销)的
LDAP服务器上,但是你不想把公司的资产管理信息“推”到那里。 z 你可能想根据目录树的结构给予不同的员工组不同的权限。在下面的例子里,资产管理
组对“asset-mgmt\"部分有完全的访问权限,但是不能访问其它地方。 把LDAP存储和复制功能结合起来,可以定制目录树的结构以降低对WAN带宽的要求。位于西雅图的营销办公室需要每分钟更新的美国销售状况的信息,但是欧洲的销售情况就只要每小时更新一次就行了。
1.4 基准DN
LDAP目录树的最顶部就是根,也就是所谓的“基准DN\"。基准DN通常使用下面列出的三种格式之一。假定我在名为FooBar的电子商务公司工作,这家公司在Internet上的名字是foobar.com。
o=\"FooBar, Inc.\(以X.500格式表示的基准DN)
在这个例子中,o=FooBar, Inc. 表示组织名,在这里就是公司名的同义词。c=US 表
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 147 of 170
示公司的总部在美国。以前,一般都用这种方式来表示基准DN。但是事物总是在不断变化的,现在所有的公司都已经(或计划)上Internet上。随着 Internet的全球化,在基准DN中使用国家代码很容易让人产生混淆。现在,X.500格式发展成下面列出的两种格式。
o=foobar.com(用公司的Internet地址表示的基准DN)
这种格式很直观,用公司的域名作为基准DN。这也是现在最常用的格式。
dc=foobar, dc=com(用DNS域名的不同部分组成的基准DN)
就象上面那一种格式,这种格式也是以DNS域名为基础的,但是上面那种格式不改变域名(也就更易读),而这种格式把域名: foobar.com分成两部分 dc=foobar, dc=com。在理论上,这种格式可能会更灵活一点,但是对于最终用户来说也更难记忆一点。考虑一下foobar.com这个例子。当 foobar.com和gizmo.com合并之后,可以简单的把“dc=com\"当作基准DN。把新的记录放到已经存在的dc=gizmo, dc=com目录下,这样就简化了很多工作(当然,如果foobar.com和wocket.edu合并,这个方法就不能用了)。如果LDAP服务器是新安装的,我建议你使用这种格式。再请注意一下,如果你打算使用活动目录(Actrive Directory),Microsoft已经限制你必须使用这种格式。
1.5 在目录树中怎么组织数据
在UNIX文件系统中,最顶层是根目录(root)。在根目录的下面有很多的文件和目录。象上面介绍的那样,LDAP目录也是用同样的方法组织起来的。
在根目录下,要把数据从逻辑上区分开。因为历史上(X.500)的原因,大多数LDAP目录用OU从逻辑上把数据分开来。OU表示 “Organization Unit\",在X.500协议中是用来表示公司内部的机构:销售部、财务部,等等。现在LDAP还保留ou=这样的命名规则,但是扩展了分类的范围,可以分类为:ou=people, ou=groups, ou=devices,等等。更低一级的OU有时用来做更细的归类。例如:LDAP目录树(不包括单独的记录)可能会是这样的: dc=foobar, dc=com ou=customers ou=asia ou=europe ou=usa
ou=employees ou=rooms ou=groups
ou=assets-mgmt ou=nisgroups ou=recipes
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 148 of 170
1.6 单独的LDAP记录
DN是LDAP记录项的名字。在LDAP目录中的所有记录项都有一个唯一的“Distinguished Name\",也就是DN。每一个LDAP记录项的DN是由两个部分组成的:相对DN(RDN)和记录在LDAP目录中的位置。
RDN是DN中与目录树的结构无关的部分。在LDAP目录中存储的记录项都要有一个名字,这个名字通常存在cn(Common Name)这个属性里。因为几乎所有的东西都有一个名字,在LDAP中存储的对象都用它们的cn值作为RDN的基础。如果我把最喜欢的吃燕麦粥食谱存为一个记录,我就会用cn=Oatmeal Deluxe作为记录项的RDN。 我的LDAP目录的基准DN是dc=foobar,dc=com 我把自己的食谱作为LDAP的记录项存在ou=recipes 我的LDAP记录项的RDN设为cn=Oatmeal Deluxe
上面这些构成了燕麦粥食谱的LDAP记录的完整DN。记住,DN的读法和DNS主机名类似。下面就是完整的DN:
cn=Oatmeal Deluxe,ou=recipes,dc=foobar,dc=com
举一个实际的例子来说明DN:
现在为公司的员工设置一个DN。可以用基于cn或uid(User ID),作为典型的用户帐号。例如,FooBar的员工Fran Smith(登录名:fsmith)的DN可以为下面两种格式:
uid=fsmith,ou=employees,dc=foobar,dc=com(基于登录名)
LDAP(以及X.500)用uid表示“User ID\",不要把它和UNIX的uid号混淆了。大多数公司都会给每一个员工唯一的登录名,因此用这个办法可以很好地保存员工的信息。你不用担心以后还会有一个叫Fran Smith的加入公司,如果Fran改变了她的名字(结婚?离婚?或宗教原因?),也用不着改变LDAP记录项的DN。
cn=Fran Smith,ou=employees,dc=foobar,dc=com(基于姓名)
可以看到这种格式使用了Common Name(CN)。可以把Common Name当成一个人的全名。这种格式有一个很明显的缺点就是:如果名字改变了,LDAP的记录就要从一个DN转移到另一个DN。但是,我们应该尽可能地避免改变一个记录项的DN。
1.7 定制目录的对象类型
你可以用LDAP存储各种类型的数据对象,只要这些对象可以用属性来表示,下面这些是可以在LDAP中存储的一些信息:
z 员工信息:员工的姓名、登录名、口令、员工号、他的经理的登录名,邮件服务器,等
等。
z 物品跟踪信息:计算机名、IP地址、标签、型号、所在位置,等等。
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 149 of 170
z 客户联系列表:客户的公司名、主要联系人的电话、传真和电子邮件,等等。 z 会议厅信息:会议厅的名字、位置、可以坐多少人、电话号码、是否有投影机。 z 食谱信息:菜的名字、配料、烹调方法以及准备方法。
因为LDAP目录可以定制成存储任何文本或二进制数据,到底存什么要由你自己决定。LDAP目录用对象类型(object classes)的概念来定义运行哪一类的对象使用什么属性。在几乎所有的LDAP服务器中,你都要根据自己的需要扩展基本的LDAP目录的功能,创建新的对象类型或者扩展现存的对象类型。
LDAP目录以一系列“属性对”的形式来存储记录项,每一个记录项包括属性类型和属性值(这与关系型数据库用行和列来存取数据有根本的不同)。下面是我存在LDAP目录中的一部分食谱记录:
dn: cn=Oatmeal Deluxe, ou=recipes, dc=foobar, dc=com cn: Instant Oatmeal Deluxe recipeCuisine: breakfast
recipeIngredient: 1 packet instant oatmeal recipeIngredient: 1 cup water recipeIngredient: 1 pinch salt
recipeIngredient: 1 tsp brown sugar recipeIngredient: 1/4 apple, any type
请注意上面每一种配料都作为属性recipeIngredient值。LDAP目录被设计成象上面那样为一个属性保存多个值的,而不是在每一个属性的后面用逗号把一系列值分开。
因为用这样的方式存储数据,所以数据库就有很大的灵活性,不必为加入一些新的数据就重新创建表和索引。更重要的是,LDAP目录不必花费内存或硬盘空间处理“空”域,也就是说,实际上不使用可选择的域也不会花费你任何资源。
1.8 范例
让我们看看下面这个例子。我们用Foobar, Inc.的员工Fran Smith的LDAP记录。这个记录项的格式是LDIF,用来导入和导出LDAP目录的记录项。 dn: uid=fsmith, ou=employees, dc=foobar, dc=com objectclass: person
objectclass: organizationalPerson objectclass: inetOrgPerson objectclass: foobarPerson uid: fsmith
givenname: Fran sn: Smith
cn: Fran Smith cn: Frances Smith
telephonenumber: 510-555-1234 roomnumber: 122G o: Foobar, Inc.
mailRoutingAddress: fsmith@foobar.commailhost: mail.foobar.com userpassword: 3x1231v76T89N
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 150 of 170
uidnumber: 1234 gidnumber: 1200
homedirectory: /home/fsmith loginshell: /usr/local/bin/bash
属性的值在保存的时候是保留大小写的,但是在默认情况下搜索的时候是不区分大小写的。某些特殊的属性(例如,password)在搜索的时候需要区分大小写。
让我们一点一点地分析上面的记录项。
dn: uid=fsmith, ou=employees, dc=foobar, dc=com
这是Fran的LDAP记录项的完整DN,包括在目录树中的完整路径。LDAP(和X.500)使用uid(User ID),不要把它和UNIX的uid号混淆了。
objectclass: person
objectclass: organizationalPerson objectclass: inetOrgPerson objectclass: foobarPerson
可以为任何一个对象根据需要分配多个对象类型。person对象类型要求cn(common name)和sn(surname)这两个域不能为空。persion对象类型允许有其它的可选域,包括givenname、 telephonenumber,等等。organizational Person给person加入更多的可选域,inetOrgPerson又加入更多的可选域(包括电子邮件信息)。最后,foobarPerson是为 Foobar定制的对象类型,加入了很多定制的属性。
uid: fsmith
givenname: Fran sn: Smith
cn: Fran Smith cn: Frances Smith
telephonenumber: 510-555-1234 roomnumber: 122G o: Foobar, Inc.
以前说过了,uid表示User ID。当看到uid的时候,就在脑袋里想一想“login\"。
请注意CN有多个值。就象上面介绍的,LDAP允许某些属性有多个值。为什么允许有多个值呢?假定你在用公司的LDAP服务器查找Fran 的电话号码。你可能只知道她的名字叫Fran,但是对人力资源处的人来说她的正式名字叫做Frances。因为保存了她的两个名字,所以用任何一个名字检索都可以找到Fran的电话号码、电子邮件和办公房间号,等等。
mailRoutingAddress: fsmith@foobar.commailhost: mail.foobar.com
就象现在大多数的公司都上网了,Foobar用Sendmail发送邮件和处理外部邮件路由
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 151 of 170
信息。Foobar把所有用户的邮件信息都存在LDAP中。最新版本的Sendmail支持这项功能。
Userpassword: 3x1231v76T89N uidnumber: 1234 gidnumber: 1200
gecos: Frances Smith
homedirectory: /home/fsmith loginshell: /usr/local/bin/bash
注意,Foobar的系统管理员把所有用户的口令映射信息也都存在LDAP中。FoobarPerson类型的对象具有这种能力。再注意一下,用户口令是用UNIX的口令加密格式存储的。UNIX的uid在这里为uidnumber。提醒你一下,关于如何在LDAP中保存NIS信息,有完整的一份RFC。在以后的文章中我会谈一谈NIS的集成。
1.9 LDAP复制
LDAP服务器可以使用基于“推”或者“拉”的技术,用简单或基于安全证书的安全验证,复制一部分或者所有的数据。
例如,Foobar有一个“公用的”LDAP服务器,地址为ldap.foobar.com,端口为389。Netscape Communicator的电子邮件查询功能、UNIX的“ph\"命令要用到这个服务器,用户也可以在任何地方查询这个服务器上的员工和客户联系信息。公司的主LDAP服务器运行在相同的计算机上,不过端口号是1389。
你可能即不想让员工查询资产管理或食谱的信息,又不想让信息技术人员看到整个公司的LDAP目录。为了解决这个问题,Foobar有选择地把子目录树从主LDAP服务器复制到“公用”LDAP服务器上,不复制需要隐藏的信息。为了保持数据始终是最新的,主目录服务器被设置成即时“推”同步。这些种方法主要是为了方便,而不是安全,因为如果有权限的用户想查询所有的数据,可以用另一个LDAP端口。
假定Foobar通过从奥克兰到欧洲的低带宽数据的连接用LDAP管理客户联系信息。可以建立从ldap.foobar.com:1389到munich-ldap.foobar.com:389的数据复制,象下面这样:
periodic pull: ou=asia,ou=customers,o=sendmail.com periodic pull: ou=us,ou=customers,o=sendmail.com
immediate push: ou=europe,ou=customers,o=sendmail.com
“拉”连接每15分钟同步一次,在上面假定的情况下足够了。“推”连接保证任何欧洲的联系信息发生了变化就立即被“推”到Munich。
用上面的复制模式,用户为了访问数据需要连接到哪一台服务器呢?在Munich的用户可以简单地连接到本地服务器。如果他们改变了数据,本地的LDAP服务器就会把这些变化传到主LDAP服务器。然后,主LDAP服务器把这些变化“推”回本地的“公用”LDAP服务器保持数据的同步。这对本地的用户有很大的好处,因为所有的查询(大多数是读)都在本
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 152 of 170
地的服务器上进行,速度非常快。当需要改变信息的时候,最终用户不需要重新配置客户端的软件,因为LDAP目录服务器为他们完成了所有的数据交换工作。
2 Mirapoint LDAP服务器配置(Directory) 2.1 LDAP服务器搭建
由于LDAP服务器可以由多种软件搭建在任何的操作系统平台上,种类繁多。因此,在本教材中我们仅以Mirapoint LDAP服务器为例介绍LDAP服务器的搭建方式。 1) 创建LDAP库
dir adddb test //创建LDAP库test;
dir adddbsuffix test o=test //创建LDAP库test的根为o=test; 2) 创建检索
dir addindex test miloginid eq
//创建LDAP库test的索引为miloginid; 3) 设置LDAP库管理员及密码
dir setdboption test rootdn “uid=administrator,o=test” //设定LDAP库test的管理员DN为uid=administrator,o=test; dir setdboption test rootpw 1234 //设定LDAP库test的管理员密码为1234; 4) 启用WEB管理界面管理数据 conf enable ldapgui
//将LDAP管理集成到WEB管理界面;
conf enable ldapall
//启用LDAP管理自动回复、例外、自动转发、用户密码、WEBMAIL属性等信息。
2.2 LDAP服务器数据导入
从第一节的介绍我们已经大致了解LDAP的数据格式,本节将给大家介绍Mirapoint LDAP服务器的数据结构及导入过程。
dir importldif o=test c //将数据导入基准o=test中;
#############LDIF样本########### dn: o=test
objectclass: Organization o: test
dn: ou=domains,o=test
objectclass: OrganizationalUnit ou: domains
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 153 of 170
dn: miDomainName=primary,ou=domains,o=test objectclass: miDomain midomainname: primary
dn: miloginid=testuser,miDomainName=primary, ou=domains, o=test miloginid: testuser
objectclass: mirapointUser objectclass: mirapointMailUser mailhost: mail.mirapoint.com.cn sn: testuser
mail: testuser@mirapoint.com.cn
micosdn: cn=cos_sample, miDomainName=primary, ou=cos, o=test
dn: miDomainName=test.mirapoint.com.cn, ou=domains, o=test objectclass: miDomain
midomainname: test.mirapoint.com.cn
dn: mail=@test.mirapoint.com.cn, miDomainName=test.mirapoint.com.cn, ou=domain
s, o=test
cn: domain entry
objectclass: mirapointUser objectclass: mirapointMailUser mail: @test.mirapoint.com.cn mailhost: mail.mirapoint.com.cn
micosdn: cn=cos_sample, miDomainName=primary, ou=cos, o=test
dn: ou=cos,o=test
objectclass: OrganizationalUnit ou: cos
dn: miDomainName=primary,ou=cos,o=test objectclass: miDomain midomainname: primary
dn: cn=cos_sample,miDomainName=primary,ou=cos,o=test miservice: msgexpiration miservice: quota miservice: antispam miservice: enterpriseui miservice: pop miservice: imap miservice: antivirus
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 154 of 170
miservice: filter miservice: webmail miservice: forward miservice: calendar miservice: autoreply
objectclass: miClassOfService
cn: Junkmail_Manager_default_cos
mimailexpirepolicy: INBOX.Junk Mail 7 I
#############LDIF样本###########
3 Mirapoint LDAP复制(Replicate) 3.1 LDAP辅服务器配置
Mirapoint作为LDAP辅服务器时,首先需要按照上一节中介绍的方法创建和主服务器完全一致的LDAP库、INDEX索引以及其他相关配置信息。此外还需要运行下列命令: Dir AddReplica RA1 \"mirapoint\" o=test //RA1为当前配置的LDAP复制工程名称;mirapoint为复制目标系统,可以为mirapoint或iplanet;o=test为复制节点,即从什么节点开始复制。
Dir AddRepHost RA1 ldap://mail.mirapoint.com //RA1为当前配置的LDAP复制工程名称;ldap://mail.mirapoint.com为目标LDAP服务器地址。
Dir SetRepOption RA1 Master ldap://ldap.mirapoint.com:389 //该命令用来设定LDAP复制的主服务器地址;
Dir SetRepOption RA1 BindDN uid=administrator,o=test //该命令用来设定LDAP复制的管理员DN; Dir SetRepOption RA1 BindPW 1234 //该命令用来设定LDAP复制的管理员密码;
Dir SetRepOption RA1 Exclude userPassword
//该命令设定在LDAP复制的过程中不更新的属性,上面的范例里面说在LDAP复制过程中不更新userPassword属性;
Dir SetRepOption RA1 Schedule \"0,15,30,45 0-16 * * 1-5\"
//该命令设定LDAP复制的重复策略即计划任务为周一至周五的0点至16点,每15分钟同步一次。双引号内的5个参数依次为:分钟,小时,日,月,星期几;
Dir SetRepOption RA1 Trigger userPassword
//该命令设定了当什么属性变化时立刻进行LDAP复制工作。上面的范例表明当userPassword属性变化时立刻进行同步。
Dir Replicate RA1 ldap://mail.mirapoint.com.cn incremental
//该命令为手工运行的LDAP复制功能。其中incremental表明仅同步变化的部分,full为全部同步。
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 155 of 170
3.2 LDAP主服务器配置
如果主服务器为Mirapoint服务器,则LDAP主服务器配置与辅服务器配置大致相同;如果辅服务器为iplanet服务器,则需要在配置文件当中增加条目,允许辅服务器进行同步动作。
4 LDAP服务器访问控制(ACL)
LDAP服务器访问控制主要用于拒绝外部非授权访问控制,增强LDAP服务器的数据安全。
命令格式: Dir AddACL dbname aclname what //
z dbname为LDAP库名称;
z aclname为管理员自定的访问控制表名称; z what部分可以为下面的一些参数: *
(attr=attributeList)
(dn[.style]=regularExpression) subtree,children
//其中style可以为regex,base,one,
(filter=LDAPfilter)
Dir AddAclEntry dbname aclname entryname who level control //
z 此处的dbname和aclname和上面介绍的一致; z entryname为管理员可以自定的条目名称; z who可以为:
(* | anonymous | users | self | [(dn[.style]=regex)] [(dnattr=attrname)]
[(group[/objectclass[/attrname]][.substyle]=regex)] [(domain[.substyle]=regex)] [(sockurl[.substyle]=regex)]
[(peername[.substyle]=regex)] [(sockname[.substyle]=regex)] ) 其中style可以为regex ,exact ,base , one ,subtree ,children z level可以为:
none,auth,compare,search,read,selfwrite,write z control可以为: \"\"(空),stop,continue,break.
下面我们给大家一个真实的LDAP ACL设置范例。下面的命令为LDAP库test定制了访问控制规则test_acl,test_acl中限定了: z 仅允许管理员和用户修改用户自身的信息; z 仅允许用户搜索主域的其他用户信息;
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 156 of 170
z 允许全部用户进行身份认证 z 禁止其余未授权的访问
dir addacl test test_acl (dn.subtree=miDomainName=primary,ou=domains,o=test) dir addaclentry test test_acl test_self \"self\" write \"\"
dir addaclentry test test_acl test_admin \"dn=uid=administrator,o=test\" write \"\"
dir addaclentry test test_acl test_search \"dn.subtree=miDomainName=primary,ou=domains,o=test\" read \"\" dir addaclentry test test_acl test_auth \"*\" auth \"\" dir addaclentry test test_acl test_none \"*\" none \"\"
定制了该ACL后,主域中的所有用户可以通过LDAP查询查询到全部主域中的用户信息(地址簿),而其他邮件域(如刚才导入LDAP的test.mirapoint.com.cn)无法查询到主域的任何用户信息。
5 上机实验
1) 通过命令行的方式,新建一个数据库test,设置为o=test
2) 将符合Mirapoint默认目录结构的LDIF导入,建立基本的目录结构 3) 设置LDAP管理员为uid=administrator,o=test,密码为1111 4) 为miloginid,mail建立索引
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 157 of 170
第一九章 LDAP端集成
1 Mirapoint LDAP客户端配置
登陆WEB管理界面,点击“首页”-“系统”-“路由”进入Mirapoint邮件路由设置界面。在此,管理员可以设定保存用户信息的LDAP服务器地址,配置LDAP用户查询及邮件组查询条件等信息。
图14.1
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 158 of 170
图14.2
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 159 of 170
图14.3
LDAP路由的设置难点在于查询过滤器及对应属性的一一对应。下面我们将常见主流LDAP厂商的查询过滤器、属性设置逐一列举:
1.1 Mirapoint LDAP
常用BASEDN命名方式: o=test
常用BINDDN命名方式: uid=administrator,o=test 查询过滤器:
(|(mail=$(login))(mailLocalAddress=$(login))(miloginid=$(login))) 对应属性:
Published name attribute: mail Mail host attribute: mailhost
Routing address attribute: mailroutingaddress Full name attribute: cn
Login id attribute: miloginid
Folder Quota attribute: mimailquota
1.2 AD
常用BASEDN命名方式: DC=test,DC=com
常用BINDDN命名方式:
CN=Administrator,CN=Users,DC=test,DC=com 查询过滤器:
(|(mail=$(login))(proxyAddresses=smtp:$(login))(sAMAccountName=$(login)))
对应属性:
Published name attribute: mail
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 160 of 170
Mail host attribute: mailhost
Routing address attribute: ;没有对应属性 Full name attribute: cn
Login id attribute: sAMAccountName Folder Quota attribute: ;没有对应属性
需要额外定义的属性——mailhost(邮件主机映射)
图14.4
1.3 iPlanet LDAP
常用BASEDN命名方式:
o=test.com
常用BINDDN命名方式:
uid=test,ou=people,o=test.com
查询过滤器:
(|(mail=$(login))(uid=$(login))) 对应属性:
Published name attribute: mail Mail host attribute: mailhost ;不一定存在mailhost,需要管理员选择其他属性代替
Routing address attribute: ;没有固定对应属性,需要管理员按照实际情况选择 Full name attribute: cn Login id attribute: uid
Folder Quota attribute: ;没有固定对应属性,需要管理员按照实际情况选择
1.4 OpenLdap
LDAP服务器为OpenLdap时,具体Mirapoint客户端配置可参照iPlanet配置方法。
2 LDAP路由
Mirapoint邮件路由功能是Mirapoint的特色功能,不仅支持基于邮件域、IP地址的路由;而且还支持基于用户的路由(LDAP路由)。管理员可以利用LDAP路由功能将每个
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 161 of 170
用户的邮件路由至正确的IP地址。
Mirapoint LDAP路由的核心在于LDAP服务器中的MailHost属性。该属性仅在Mirapoint LDAP服务器中有定义,用来保存用户邮箱所在服务器的IP地址。如果使用其他第三方标准LDAP服务器(如AD、iPlanet、OpenLdap),管理员需要重新指定一个属性保存用户邮箱所在邮件服务器的IP地址(常用属性如l、lt、phone等均可)。
除了MailHost属性外,管理员还需要手工指定SMTP引擎使用LDAP路由的工作模式。使用WEB管理界面时系统会自动配置SMTP工作模式为LDAP路由;仅在使用命令行模式对Mirapoint进行操作时才需要管理员手工指定SMTP工作模式。
图形界面的LDAP路由配置方法祥见本章第一节Mirapoint LDAP客户端配置。下面我们以命令行模式为例进行LDAP路由配置: ldap add 10.10.244.16 增加LDAP服务器IP地址
ldap setquery user:publishedname o=test (|(mail=$(login))(miloginid=$(login))) mail \"\"
//指定publishedname属性在LDAP服务器中对应的属性为mail,查询的基准为o=test,查询过滤器为(|(mail=$(login))(miloginid=$(login)));
ldap setquery user:mailhost \"\" \"\" mailhost \"\"
//指定mailhost属性在LDAP服务器中的对应属性为mailhost,查询基准和查询过滤器与publishedname属性中定义的一致;
ldap setquery user:fullname \"\" \"\" cn \"\"
//指定fullname属性在LDAP服务器中的对应属性为cn,查询基准和查询过滤器与publishedname属性中定义的一致;
ldap setquery user:loginid \"\" \"\" miloginid \"\"
//指定loginid属性在LDAP服务器中的对应属性为miloginid,查询基准和查询过滤器与publishedname属性中定义的一致;
ldap setquery user:quota \"\" \"\" mimailquota \"\"
//指定quota属性在LDAP服务器中的对应属性为mimailquota,查询基准和查询过滤器与publishedname属性中定义的一致;
ldap addaccess o=test uid=administrator,o=test 1234 pass
//定义LDAP查询基准为o=test时的BINDDN为“uid=administrator,o=test”,查询密码为1234(pass说明密码以明文模式输入); smtp set ldaprouting on
//设定SMTP引擎的路由方式为LDAP路由。
3 LDAP代理
基于LDAP代理是Mirapoint的特色功能,根据LDAP服务器中的MailHost属性将用户的访问请求中转至特定的邮件服务器处理,邮件路由的配置方法祥见LDAP路由中所描述。该功能的引入使得Mirapoint设备可以部署在网络边缘,作为邮件网络的外围安全设备(SSL转换)、邮件访问统一入口,确保整个邮件网络的数据安全。Mirapoint代理功能包括POP代理、IMAP代理以及WEBMAIL代理,下面我们将重点描述LDAP代理功能的设置。
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 162 of 170
3.1 POP/IMAP代理
修改POP/IMAP工作模式的方式有两种——基于WEB的管理界面和命令行模式。开启POP/IMAP代理功能后,如果在LDAP能够正确的查询到用户的MailHost属性,无需其他设置,用户访问Mirapoint设备时将会被Mirapoint路由至MailHost属性指定的后台邮件服务器。
基于WEB的管理界面
登陆WEB管理界面,点击“首页”-“系统”-“服务”-“POP”(IMAP),即可进入POP/IMAP的配置页面,直接选择POP/IMAP的工作模式后再点击“修改”即可完成模式的转换。
图14.5 命令行模式 命令格式:
pop set mode ldapproxy ;参数可以为ldapproxy或者normal imap set mode ldapproxy ;同上
3.2 WEBMAIL代理
3.2.1 LDAP重定向
Mirapoint LDAP重定向类似HTTP重定向功能。当用户发出访问请求时,如果采用LDAP重定向模式,则会采用LDAP信息进行HTTP重定向,将用户重定向至另外的WEB服务器。
3.2.2 LDAP 代理
Mirapoint WEBMAIL LDAP代理功能配置方法请参照3.1 POP/IMAP代理所述方式进行设定。
基于WEB的管理界面
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 163 of 170
登陆WEB管理界面,点击“首页”-“系统”-“服务”-“HTTP”-“模式”,即可进入HTTP服务的配置页面,直接选择HTTP的工作模式后再点击“修改”即可完成模式的转换。 命令行模式 命令格式:
http set mode ldapproxy ;参数可以为ldapproxy/normal/ldapredirect
4 LDAP用户认证和自动创建
上面的内容介绍了如何在Mirapoint系统中设置LDAP客户端、LDAP路由、LDAP代理等方法,本节我们将向大家介绍Mirapoint与LDAP服务器协同工作配置中的最后一步——用户认证和自动创建功能的设置。
这两个功能无法通过WEB管理界面进行管理,仅能够通过命令行模式进行配置,相关命令如下:
auth set default plaintext:ldap ;设定当前Mirapoint系统的默认认证方式为LDAP认证
ldap set autoprovision on ;开启Mirapoint系统的用户邮箱根据LDAP自动创建功能
5 COS服务分级管理
Mirapoint提供了服务分级管理(COS)功能,极大的方便了各个企业、ISP对用户的细分。使得管理员可以针对用户的工种、职位的不同享有不同的邮件服务、邮箱空间以及过滤策略等功能。
该功能可以通过登陆WEB管理界面,点击“首页”-“服务级别”进行设定,但是首次初始化必须通过命令行模式进行。下面我们着重介绍COS的初始化过程:
dir importldif o=test c
//为基准o=test导入LDIF文件,输入该命令后系统将进入等待输入状态,直到接收到“.”结束编辑;
#############LDIF样本##############
dn: ou=cos,o=test
objectclass: OrganizationalUnit ou: cos
dn: miDomainName=primary,ou=cos,o=test objectclass: miDomain midomainname: primary .
#############LDIF样本############## cos enable antispam ;//将防垃圾引擎列入可分配服务 cos enable antivirus ;//将防病毒引擎列入可分配服务 cos enable autoreply ;//将自动回复列入可分配服务 cos enable calendar ;//将个人日程管理列入可分配服务 cos enable filter ;//将内容过滤列入可分配服务
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 164 of 170
cos enable forward cos enable getmail cos enable groupcalendar cos enable imap cos enable imodemail cos enable msgexpiration cos enable msgundelete cos enable pop cos enable quota cos enable ssl cos enable wapcalendar cos enable wapmail cos enable webmail ;//将自动转发列入可分配服务
;//将外部邮件代收功能列入可分配服务 ;//将集团日程管理列入可分配服务 ;//将IMAP服务列入可分配服务 ;//将imodemail功能列入可分配服务 ;//将邮件自动过期列入可分配服务 ;//将邮件反删除列入可分配服务 ;//将POP服务列入可分配服务 ;//将邮箱空间限制列入可分配服务 ;//将SSL加密列入可分配服务
;//将WAP日程管理列入可分配服务 ;//将WAPMAIL功能列入可分配服务 ;//将WEBMAIL功能列入可分配服务
6 LDAP群组
在定义了LDAP群组查询,开启了LDAP路由功能后,管理员可以将群组功能移至LDAP服务器中存储。LDAP群组具有很多本地群组无法提供的功能,如发送者权限限制等。
在管理员运行conf enable ldapgui将LDAP管理集成到WEB管理界面后,管理界面中的“分发列表”功能自动将新增的群组保存在LDAP中。但是,如果管理员要对已添加的群组进行权限的设定,仅能够通过命令行模式或者LDAP客户端软件(如LDAP Administrator等)修改LDAP数据。
下面列举一个LDAP群组的LDIF样本,管理员可以自行通过命令行(dir importldif o=test c)或LDAP客户端软件添加LDAP群组验证该功能。
####################LDIF样本###################### dn: mail=test_dl,miDomainName=primary,ou=domains,o=test objectClass: mailGroup mail: test_dl@test.com cn: test_dl
mgrpRFC822MailMember: user1@test.com mgrpRFC822MailMember: user2@test.com mgrpRFC822MailMember: user3@test.com mgrpRFC822MailMember: user4@test.com mgrpRFC822MailMember: user5@test.com
mgrpallowedbroadcaster: mailto:user1@test.com
####################LDIF样本######################
上面范例中,邮件组的邮件地址为test_dl@test.com;其中包含5个成员user1~user5;该邮件组仅允许邮件地址user1@test.com向该邮件组发送邮件,其他的用户如果向该邮件组发送邮件则会收到用户不存在的退信。
7 LDAP地址簿(URL)
Mirapoint提供全局地址簿功能——URL功能。通过URL功能,管理员可以方便的为
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 165 of 170
整个邮件域定制本地或非本地的LDAP地址簿。该功能仅能够通过命令行模式进行添加,具体命令格式如下:
url add addrbook:test \"ADDRESSBOOK\"
\"ldap://localhost/o=test?cn,sn,mail,miloginid?sub?(&(mail=*@test.com)(cn=*$(cn))(mail=*$(mail)))\" \"\" //其中:
addrbook:test
定制Mirapoint后台地址簿名称为test; ADDRESSBOOOK
为用户登陆到WEBMAIL后查看到的地址簿名称
\"ldap://localhost/o=test?cn,sn,mail,miloginid?sub?(&(mail=*@test.com)(cn=*$(cn))(mail=*$(mail)))\"
定义了LDAP地址簿查询主机、查询条件等信息。
一般情况下,管理员仅需修改其中的localhost以及*@test.com为实际的地址信息即可。
图14.6
8 上机实验
利用已经建成的LDAP数据,配置客户端连接LDAP服务器。实现如下功能: 1) 用户认证采用LDAP认证
2) 能够实现LDAP用户自动创建功能
3) 能够通过Web界面实现基本的LDAP集成管理 4) 能够实现LDAP群组功能
5) 能够通过WebMail查询全局通讯录
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 166 of 170
第二〇章 故障诊断和处理
学习目的:
掌握常用的故障诊断方法,学好一些常见故障的检查和处理方法
1 Diag命令诊断网络连通性
常用命令: diag ping host packetcount ;//ping对方主机 diag traceroute host ;//检查对方主机的路由路径 diag tcptraceroute host portnumber ;//检查对方主机特定端口的连通性 diag netstat pattern ;//检查Mirapoint设备网络连接信息
范例:
diag ping host packetcount ;//host为主机名称,packetcount为ping的次数 rd.mirapoint.com.cn> diag ping rd.mirapoint.com.cn 1 \"PING 10.10.244.16: 56 data bytes\"
\"Received 64 bytes from 10.10.244.16: seq=0 ttl=255 time=0.05 ms\" \"Statistics for 10.10.244.16:\" \"Packets: 1 transmitted, 1 received, 0 (0%) lost\"
\"Round trip time: min=0.05 ms, max= 0.05 ms, ave= 0.05 ms\" OK Completed
diag traceroute host ;//host为主机名称
rd.mirapoint.com.cn> diag traceroute smtp.126.com
\"traceroute to 202.108.5.143, 30 hops max, 40 byte packets\" \" 1 10.10.244.2 0.23 ms 0.16 ms 0.11 ms\" \" 2 203.81.23.33 0.59 ms 0.72 ms 0.74 ms\" \" 3 * * *\" \" 4 203.81.16.13 0.84 ms 0.80 ms 0.73 ms\" \" 5 203.86.64.89 1.12 ms 0.97 ms 1.23 ms\" \" 6 211.144.11.61 1.36 ms 1.59 ms 1.36 ms\" \" 7 202.96.13.133 1.62 ms 1.46 ms 1.49 ms\" \" 8 202.106.192.157 1.61 ms 1.47 ms 1.48 ms\" \" 9 61.148.4.214 2.12 ms 1.59 ms 1.48 ms\" \"10 210.74.176.194 1.62 ms 1.59 ms 1.73 ms\" \"11 202.108.5.143 1.50 ms 1.71 ms 1.48 ms\" OK Completed
diag tcptraceroute host portnumber ;//portnumber为端口号
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 167 of 170
rd.mirapoint.com.cn> diag tcptraceroute smtp.126.com 25
\" Tracing the path to smtp.126.com (202.108.5.143) on TCP port 25, 30 hops max\" \" 1 10.10.244.2 0.256 ms 0.181 ms 0.216 ms\" \" 2 203.81.23.33 0.470 ms 0.466 ms 0.482 ms\" \" 3 * * *\" \" 4 203.81.16.13 0.892 ms 0.933 ms 0.816 ms\" \" 5 203.86.64.89 1.168 ms 1.105 ms 0.976 ms\" \" 6 211.144.11.61 1.819 ms 1.305 ms 1.471 ms\" \" 7 202.96.13.133 2.147 ms 1.643 ms 1.307 ms\" \" 8 202.106.192.157 1.483 ms 1.469 ms 1.484 ms\" \" 9 61.148.4.214 1.653 ms 1.467 ms 1.643 ms\" \" 10 210.74.176.194 1.827 ms 1.627 ms 1.980 ms\" \" 11 202.108.5.143 [open] 1.815 ms 1.787 ms 2.305 ms\" OK Completed
注意:tcptraceroute结果会显示对方特定端口号的连通性,返回结果为[open]/ [close]。
diag netstat pattern
其中pattern部分为通配符。例如\"*.25*\"代表着显示全部关于SMTP通信的连接;\"*10.0.0.128*\"代表着显示全部关于IP地址10.0.0.128的连接信息。\"*\"代表着显示全部TCP连接信息。
rd.mirapoint.com.cn> diag netstat *
tcp 0 0 10.10.244.16.23 10.10.244.2.36531 ESTABLISHED tcp 0 0 *.443 *.* LISTEN tcp 0 0 *.995 *.* LISTEN tcp 0 0 *.993 *.* LISTEN tcp 0 0 *.10243 *.* LISTEN tcp 0 0 *.2255 *.* LISTEN tcp 0 0 *.25 *.* LISTEN tcp 0 0 *.22 *.* LISTEN tcp 0 0 *.10149 *.* LISTEN tcp 0 0 *.10148 *.* LISTEN tcp 0 0 *.110 *.* LISTEN tcp 0 0 *.143 *.* LISTEN tcp 0 0 *.111 *.* LISTEN tcp 0 0 *.389 *.* LISTEN tcp 0 0 *.80 *.* LISTEN tcp 0 0 *.113 *.* LISTEN tcp 0 0 *.10144 *.* LISTEN tcp 0 0 *.10143 *.* LISTEN tcp 0 0 *.23 *.* LISTEN
tcp 0 0 127.0.0.1.53 *.* LISTEN udp 0 0 *.161 *.* UDP udp 0 0 *.10153 *.* UDP udp 0 0 *.111 *.* UDP
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 168 of 170
udp 0 0 *.1024 *.* UDP udp 0 0 127.0.0.1.53 *.* UDP udp 0 0 127.0.0.1.123 *.* UDP udp 0 0 10.10.244.16.123 *.* UDP udp 0 0 *.123 *.* UDP OK Completed
rd.mirapoint.com.cn> diag netstat *.25* tcp 0 0 *.25 *.* LISTEN OK Completed
2 DNS命令诊断域名解析
DNS是邮件的根基,可以说没有DNS解析,邮件系统就无法正常工作。虽然管理员在配置邮件服务器过程中都有配置DNS服务器地址,但是在实际应用当中,经常会遇到由于DNS服务器故障或网络中断引起的邮件投递延时、邮件发送失败等情形。Mirapoint在MOS系统中专门针对DNS提供了相关的查询命令,协助管理员检查DNS服务器是否工作正常,如果工作异常,则可以直接替换故障的DNS服务器。 dns list ;//列表Mirapoint设备内正在使用的DNS服务器 dns lookup name options ;//查询目标主机的DNS解析情况
rd.mirapoint.com.cn> dns list 10.10.244.2 OK Completed
rd.mirapoint.com.cn> dns lookup mail.mirapoint.com.cn type=a A 219.133.170.254 OK Completed
rd.mirapoint.com.cn> dns lookup 203.81.23.42 type=ptr PTR 203-81-23-42.net-infinity.net OK Completed
rd.mirapoint.com.cn> dns lookup mirapoint.com.cn type=mx MX 20 mail1.mirapoint.com.cn MX 10 mail.mirapoint.com.cn OK Completed
3 Netif检查网络配置
使用Netif命令通常是为了检查Mirapoint设备与上联交换机之间的网络连接状态是否正常。在大多数情况下,如果Mirapoint设备投递邮件延时非常严重,大量邮件以“未处理”原因堆积在邮件队列中,同时DNS服务器、网络网关等设备均工作正常,我们就需要确认是否是由于Mirapoint设备与上联交换机之间出现了兼容性问题。 Netif Bindings ;//检查全部Mirapoint网口的信息 rd.mirapoint.com.cn> netif bindings
port0 10.10.244.16/24 00:07:e9:32:32:e9 AUTO:AUTO(100:FULL) 100
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 169 of 170
port1 unassigned/0 00:07:e9:32:32:ea AUTO:AUTO(no-carrier) 1000 OK Completed
注意:Mirapoint设备两块网卡默认均以全双工模式工作,如果在实际运用当中出现了半双工模式,必须要确认是否交换机仅支持半双工模式。如果交换机确认也为全双工模式,则Mirapoint设备与交换机之间出现了兼容问题。在这种情况下,必须更换网络交换机方可彻底解决该问题。
4 为Mirapoint售后工程师提供协助
当我们遇到问题单凭自身能力无法解决时,我们必须学会将问题发送至
support@mirapoint.com寻求帮助,但是在得到帮助之前,我们必须要准备一些Mirapoint设备信息,以便于Mirapoint售后工程师能够快速的对故障原因进行诊断。需要的信息有:故障/问题描述、设备信息、故障设备的第三层日志Dump。其中第三层日志的Dump方式祥见下面说明。 设备信息获取方法:
model get chassis ;//获取产品型号 version ;//获取当前版本信息 update list ;//获取当前系统全部升级包、补丁列表 license list ;//获取当前系统许可列表 license hostid ;//获取当前系统Mirapoint主机ID,也可在设备外壳上找到 model get serial ;//获取当前系统的序列号,也可在设备外壳上找到
日志Dump获取方法:
打开浏览器,根据实际域名信息按照下面地址进入Mirapoint诊断页面:
http://mirapointsystem/cgi-bin/diag.cgi
使用管理员用户名、密码登陆系统后,选择第二项”Collect Diagnostic Data”。
根据工程师的要求,选择不同级别的日志。Level 1最小,越往后越大。在系统出现的故障越多,日志越大。一般来说,Level 3日志有几十兆到上百兆。因此下载日志时必须清楚网络环境是否适合传递如此大的日志。
择提供方式可以选择FTP或者邮件和下载到本地。
图23.1
Release 3.8 Mirapoint, Inc. http://www.mirapoint.com Page 170 of 170
因篇幅问题不能全部显示,请点此查看更多更全内容