Версия для печати
Архив документации на OpenNet.ru /
Раздел "Cisco маршрутизаторы и коммутаторы"
(Многостраничная версия)
Настройка Cisco CallManager в связке с OpenLDAP
авторы: Андрей Морозов, Александр Дейтер
дата последнего исправления: 25.08.2004
Эта статья посвящена настройке совместной работы Cisco CallManager и
OpenLDAP. Такая связка позволяет пользователю администрировать свои
VoIP устройства, зарегистрированные на Cisco CallManager, искать и
звонить по телефонам, заведённым в службе каталогов и избавляет
администратора Cisco CallManager вести параллельную базу пользователей.
Принятые сокращения
- CCM - Cisco CallManager
Принятые обозначения
- Команды shell: $ ls -l
- Директивы конфигурационных файлов: index objectClass eq
Программные пакеты
Программные пакеты, которые
будут задействованы в процессе
настройки:
- OpenLDAP, доступный в коллекции портов FreeBSD (net/openldap22-server).
Рабочая версия 2.2.6.
- Cisco CallManager. Рабочая версия 3.3.4.
Конфигурация OpenLDAP
1. Необходимо добавить описание схемы CCM в
конфигурационный файл сервера slapd.conf:
include
/usr/local/etc/openldap/schema/cisco.schema
2. Добавить необходимые права доступа:
access to
dn.base=""
by * read
access to
attr=entry,objectClass
by dn="uid=ccm,ou=It,dc=komi,dc=mts,dc=ru" write
by * read
access to
attr=cn,givenName,sn,mail,description,uid
by * read
access to
attr=ciscoatUserProfileString,ciscoatGUID,ciscoatUserProfile
by dn="uid=ccm,ou=It,dc=komi,dc=mts,dc=ru" write
by self write
by * read
access to
dn.subtree="ou=Cisco,dc=komi,dc=mts,dc=ru"
by dn="uid=ccm,ou=It,dc=komi,dc=mts,dc=ru" write
by self write
by * read
access to
attr=userPassword
by self write
by anonymous auth
by * none
3. Для ускорения работы можно добавить индексы:
index
objectClass
eq
index
ou
eq
index
uid,uidNumber,gidNumber,memberUid eq
index
cn,mail,surname,givenname
eq,subinitial
4. Создать персонаж CCM:
dn:
uid=ccm,ou=It,dc=komi,dc=mts,dc=ru
objectClass:
top
objectClass:
simpleSecurityObject
objectClass:
account
userPassword:
CcmUserPassword
uid: ccm
Конфигурация
Cisco CallManager
Предполагается что Вы уже приобрели и установили CCM. Для его настройки
необходимо проделать следующие действия :
1. Обязательно ознакомиться с документом "Installing
the Cisco Customer Directory Configuration Plugin for Cisco CallManager
Release 3.3".
2. Из пункта выбрать Application -> Install PlugIn:
3. В списе доступных расширений выбрать "Cisco Customer Directory
Configuration PlugIn":
4. Выбрать пункт "Configure Netscape Directory Server":
5. Выбрать тип установки "Custom", выбрать все компоненты:
6. Заполнить соответствующие поля:
После нажатия кнопки Next CCM обращается к LDAP серверу, где создает
двух пользователей CCMAdministrator и CCMUser и системные профили
конфигурации CCM. После всех этих манипуляций следует перезагрузка.
После перезагрузки всё работает и всё бы хорошо, но не всё хорошо, а
именно: LDAP атрибут, при помощи которого CCM ищет и аутенфицирует
пользователя. При установке "Cisco Customer Directory Configuration
PlugIn" значение этого атрибута по умолчанию: mail. Менять
его не следует, т.к. в этом случае не будут созданы служебные
пользователи: CCMAdministrator и CCMUser. Если в дальнейшем Вам
захочеться использовать другой атрибут для аутенфикации пользователя,
скажем, uid
, тогда придётся перенастроить CCM.
Для этого необходимо поправить в System Profile
значение атрибута ciscoCCNatUserSearchAttr
с mail
на uid:
dn: cn=System
Profile,ou=systemProfile,ou=CCN,ou=Cisco,dc=komi,dc=mts,dc=ru
cn: System
Profile
objectClass:
top
objectClass:
ciscoCCNocSystemProfile
objectClass:
ciscoTop
ciscoCCNatCurrentReplicationID:
100
ciscoCCNatMaxSearchResults:
500
ciscoCCNatDeviceBase:
ou=devices, ou=CCN
ciscoCCNatProfileBase:
ou=profiles, ou=CCN
ciscoCCNatIAQFlag:
false
ciscoCCNatCTIUseEnabledDefaultValue:
false
ciscoCCNatAAInstalled:
false
ciscoCCNatSoftPhoneInstalled:
true
ciscoCCNatASRInstalled:
false
ciscoCCNatHotellingInstalled:
true
ciscoCCNatPINLength:
5
ciscoCCNatPasswordLength:
5
ciscoCCNatChunkSize:
250
ciscoCCNatNamingAttribute:
cn
ciscoCCNatUserObjectClass:
inetOrgPerson
ciscoCCNatUserBase:
dc=komi,dc=mts,dc=ru
ciscoCCNatUserCreationBase:
ou=Cisco,dc=komi,dc=mts,dc=ru
ciscoCCNatUserSearchAttr:
uid
Результат
1. http://callmanager/ccmAdmin/main.asp
-> User -> Global Directory позволит администратору искать и
модифицировать пользователей в дереве каталогов, связывать с ними VoIP
устройства:
2. http://callmanager/ccmuser/options.asp
позволит пользователю редактировать свой профиль, например,
переадресацию, правила быстрого набора и личную адресную книгу. Кроме
того, пользователь может сменить себе пароль и PIN (персональный
идентификационный номер, который используется для доступа к сервисам
IP-телефона Cisco):
3. На VoIP устройствах (например, Cisco IP Phone7940)
появляется возможность искать собеседников и их телефонные номера
в корпоративном дереве каталогов:
Замеченные проблемы
1. CCM не работает с UTF-8 encoded атрибутами сервера каталогов:
Using non-ISO-Latin 1 characters greater than 127 with DC Directory,
Netscape Directory, or Active Directory can cause directory database
errors. Cisco CallManager Release 3.3 supports all ISO-Latin1
(ISO-8859-1) characters and all non-ISO-Latin 1 characters in the range
0-127 with any directory.
Cisco CallManager only supports ISO-Latin 1 (ASCII) characters and
non-ISO-Latin1 characters in the range 0-127 in the fields and in all
user accounts and passwords that are needed to access these windows. If
a user enters data that is not in the allowed character range, A dialog
box displays and states that the user must enter data by using only
ISO-Latin1 characters and non-ISO-Latin1 characters in the range 0-127.
Из-за чего при просмотре/редактировании свойств пользователя мы можем
наблюдать символы ??? вместо
русских букв:
Кроме того, это ограничение не позволяет искать в глобальной адресной
книге,
используя русские имена и фамилии:
Как вариант, значения атрибутов
surName и givenName можно хранить в латинице:
dn: cn=Alex
Deiter,ou=People,dc=komi,dc=mts,dc=ru
objectClass:
top
objectClass:
posixAccount
objectClass:
inetOrgPerson
objectClass:
person
objectClass:
organizationalPerson
cn: Alex Deiter
uid: login
mail:
login@komi.mts.ru
sn:
Deiter
givenName:
Alex
...