8
Feb
2016
3

Интеграция OTRS с Active Directory

Данное руководство предназначено для тех, у кого есть желание самостоятельно настроить интеграцию OTRS с Active Directory. В этом руководстве мы будем рассматривать тот случай, когда у вас уже есть сервер, и на него уже произведена установка OTRS.

Подробно о том, как установить OTRS на Ubuntu Server, вы можете прочитать в моем руководстве «Установка OTRS на Ubuntu Server». Узнать о том, как настроить OTRS, вы можете прочитав мое руководство «Настройка OTRS». Также в моем руководстве «Установка Active Directory Domain Services на Windows Server 2012 R2» вы можете прочитать о том, как установить Active Directory Domain Services на Windows Server 2012.

Первым делом необходимо создать учетные записи в Active Directory для администратора OTRS и специалиста OTRS по технической поддержке пользователей. Также необходимо создать пользователя OTRS, который будет обращаться за технической поддержкой к специалисту OTRS.

Обратите внимание, логин и пароль учетной записи администратора OTRS в Active Directory должен совпадать с логином и паролем учетной записи администратора в OTRS.

В данном примере в качестве учетной записи администратора OTRS будет использоваться учетная запись “Admin OTRS” с логином “root”.

Переходим на контроллер домена и запускаем Active Directory Users and Computers.

Нажимаем правой кнопкой мыши по организационной единице “Users”. Далее выбираем “New”, затем “User”.

integratsiya-otrs-s-active-directory-1

Указываем имя, фамилию и логин для нового администратора OTRS.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-2

Далее необходимо указать пароль для нового администратора OTRS.

Снимаем галочку с пункта “User must change password at next logon”.

Ставим галочку на пункте “Password never expires”.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-3

Нажимаем кнопку “Finish”.

integratsiya-otrs-s-active-directory-4

Теперь необходимо создать учетную запись для специалиста по технической поддержке пользователей.

В данном примере в качестве учетной записи специалиста будет использоваться учетная запись “Alexander Pushkin” с логином “apushkin”.

Нажимаем правой кнопкой мыши по организационной единице “Users”. Далее выбираем “New”, затем “User”.

integratsiya-otrs-s-active-directory-5

Указываем имя, фамилию и логин для нового специалиста OTRS.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-6

Далее необходимо указать пароль для нового специалиста OTRS.

Снимаем галочку с пункта “User must change password at next logon”.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-7

Нажимаем кнопку “Finish”.

integratsiya-otrs-s-active-directory-8

Теперь необходимо указать адрес электронной почты для нового специалиста OTRS. Присутствие электронного адреса в учетных записях Active Directory является обязательным условием для интеграции OTRS с Active Directory.

Находим новую учетную запись специалиста OTRS и нажимаем по нему правой кнопкой мыши.

Далее выбираем “Properties”.

integratsiya-otrs-s-active-directory-9

В поле “E-mail” указываем электронный адрес для специалиста OTRS.

Нажимаем на кнопку “OK”.

integratsiya-otrs-s-active-directory-10

Теперь необходимо создать группу безопасности в Active Directory. Участники этой группы будут обладать возможностью авторизоваться в OTRS в роли специалистов OTRS или администраторов OTRS. Обратите внимание, пользователи OTRS, которые будут обращаться за технической поддержкой не должны быть участниками этой группы.

В данном примере будет использоваться название группы “OTRSagents”.

Нажимаем правой кнопкой мыши по организационной единице “Users”. Далее выбираем “New”, затем “Group”.

integratsiya-otrs-s-active-directory-11

Далее необходимо указать имя для новой группы OTRS.

В разделе “Group scope” выбираем “Global”.

В разделе “Group type” выбираем “Security”.

Нажимаем на кнопку “OK”.

integratsiya-otrs-s-active-directory-12

Теперь необходимо добавить в группу ранее созданную учетную запись администратора OTRS и специалиста OTRS.

Находим новую группу и нажимаем по ней правой кнопкой мыши.

Далее выбираем “Properties”.

integratsiya-otrs-s-active-directory-13

В свойствах группы переходим на вкладку “Members”.

Нажимаем на кнопку “Add”.

integratsiya-otrs-s-active-directory-14

Указываем логины ранее созданных в Active Directory пользователей и нажимаем на кнопку “Check Names”.

Нажимаем на кнопку “OK”.

integratsiya-otrs-s-active-directory-15

Нажимаем на кнопку “OK”.

integratsiya-otrs-s-active-directory-16

Теперь необходимо создать учетную запись для пользователя, который будет обращаться за поддержкой.

В данном примере в качестве учетной записи пользователя, который будет обращаться за поддержкой, будет использоваться учетная запись “Tatyana Larina” с логином “tlarina”.

Нажимаем правой кнопкой мыши по организационной единице “Users”. Далее выбираем “New”, затем “User”.

integratsiya-otrs-s-active-directory-17

Указываем имя, фамилию и логин для нового пользователя OTRS.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-18

Далее необходимо указать пароль для нового пользователя OTRS.

Снимаем галочку с пункта “User must change password at next logon”.

Нажимаем на кнопку “Next”.

integratsiya-otrs-s-active-directory-19

Нажимаем кнопку “Finish”.

integratsiya-otrs-s-active-directory-20

Теперь необходимо указать адрес электронной почты для нового пользователя OTRS. Присутствие электронного адреса в учетных записях Active Directory является обязательным условием для интеграции OTRS с Active Directory.

Находим новую учетную запись пользователя OTRS и нажимаем по нему правой кнопкой мыши.

Далее выбираем “Properties”.

integratsiya-otrs-s-active-directory-21

В поле “E-mail” указываем электронный адрес для пользователя OTRS.

Нажимаем кнопку “OK”.

integratsiya-otrs-s-active-directory-22

Теперь необходимо с рабочей станции перейти по ссылке http://10.77.2.31/otrs/index.pl, где 10.77.2.31 – IP-адрес моего сервера. Соответственно вам необходимо указать IP-адрес вашего сервера OTRS.

Подробно о том, как установить Ubuntu Server 15.10, вы можете прочитать в моем руководстве «Установка Ubuntu Server 15.10». Узнать о том, как установить OTRS на Ubuntu Server, вы можете прочитав мое руководство «Установка OTRS на Ubuntu Server».

Для авторизации, вам нужно воспользоваться стандартным логином – root@localhost и паролем, который был выдан после установки OTRS.

Нажимаем на кнопку “Login”.

integratsiya-otrs-s-active-directory-23

После успешной авторизации в OTRS перейдите на вкладку “Admin”.

integratsiya-otrs-s-active-directory-24

На вкладке “Admin” находим раздел “Agent Management”.

Нажимаем на кнопку “Agents”.

integratsiya-otrs-s-active-directory-25

Выбираем учетную запись root@localhost.

integratsiya-otrs-s-active-directory-26

Обратите внимание, логин и пароль учетной записи администратора OTRS в Active Directory должен совпадать с логином и паролем учетной записи администратора в OTRS.

Меняем логин “root@localhost” на “root”, в соответствии с тем логином, который вы указали для учетной записи администратора OTRS в Active Directory. В поле “Пароль” необходимо указать пароль, который вы указали для учетной записи администратора OTRS в Active Directory. Затем в поле “Email” укажите адрес электронной почты администратора OTRS.

Нажимаем кнопку “Submit”.

integratsiya-otrs-s-active-directory-27

Вернувшись в раздел “Управление агентами” можно увидеть измененную учетную запись администратора OTRS.

integratsiya-otrs-s-active-directory-28

Теперь необходимо отредактировать файл “Config.pm” на сервере OTRS.

Для этого необходимо подключиться к серверу OTRS по протоколу SSH.

В данном руководстве для подключения к серверу по SSH будет использоваться программа PuTTY.

Подробнее о том, как установить PuTTY вы можете прочитать в моем руководстве «Подключение к серверу по SSH при помощи PuTTY»

Запускаем PuTTY и в поле “Host Name (or IP address)” указываем IP-адрес сервера и нажимаем на кнопку “Open”.

integratsiya-otrs-s-active-directory-29

Далее необходимо подтвердить доверие серверу, к которому мы подключаемся.

Нажимаем на кнопку “Yes”.

integratsiya-otrs-s-active-directory-30

Далее необходимо авторизоваться на сервере.

integratsiya-otrs-s-active-directory-31

Получим полноценные права.

Выполняем команду «sudo su» и вводим пароль.

integratsiya-otrs-s-active-directory-32

Выполняем команду «nano /opt/otrs/Kernel/Config.pm».

integratsiya-otrs-s-active-directory-33

Обратите внимание, в данном руководстве настройка производится для домена vmkh.org. Для авторизации в домене используется учетная запись администратора OTRS, ранее созданная в Active Directory. Пароль для учетной записи администратора OTRS – “R111111r”.

Присутствие электронного адреса в учетных записях Active Directory является обязательным условием для интеграции OTRS с Active Directory.

Учетные записи специалистов OTRS должны быть участниками группы “OTRSagents”, которая была создана ранее в Active Directory.

Учетные записи пользователей OTRS, которые будут обращаться за поддержкой, должны находиться в контейнере “Users”.

IP-адрес контроллера домена – 10.77.2.10.

Загрузить файл с конфигурацией можно перейдя по ссылке.

Находим строку “Insert your own config settings” и под ней вставляем приведенную ниже конфигурацию.

$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '10.77.2.10';
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=vmkh,dc=org';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::GroupDN'} = 'cn=OTRSagents,cn=Users,dc=vmkh,dc=org';
$Self->{'AuthModule::LDAP::AccessAttr'} = 'member';
$Self->{'AuthModule::LDAP::UserAttr'} = 'DN';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'root@vmkh.org';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'R111111r';
$Self->{'AuthModule::LDAP::AlwaysFilter'} = '';
$Self->{'AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
sscope => 'sub'
};

$Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
$Self->{'AuthSyncModule::LDAP::Host'} = '10.77.2.10';
$Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=vmkh, dc=org';
$Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'root@vmkh.org';
$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'R111111r';
$Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {

DB -> LDAP

UserFirstname => 'givenName',
UserLastname => 'sn',
UserEmail => 'mail',
};

$Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
'users', 'basic_admin',
];

$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = '10.77.2.10';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=vmkh,dc=org';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'root@vmkh.org';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'R111111r';
$Self->{CustomerUser} = {
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
Host => '10.77.2.10',
BaseDN => 'DC=vmkh,DC=org',
SSCOPE => 'sub',
UserDN =>'root@vmkh.org',
UserPw => 'R111111r',
AlwaysFilter => '(&(samAccountType=805306368)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))',
SourceCharset => 'utf-8',
DestCharset => 'utf-8',
},

CustomerKey => 'sAMAccountName',
CustomerID => 'mail',
CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 10000,
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
Map => [

note: Login, Email and CustomerID needed!

#[ 'UserSalutation', 'Title', 'title', 1, 0, 'var' ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var' ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var' ],
[ 'UserLogin', 'Login', 'sAMAccountName', 1, 1, 'var' ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var' ],
[ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
#[ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
#[ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
],
};

integratsiya-otrs-s-active-directory-34

integratsiya-otrs-s-active-directory-35

integratsiya-otrs-s-active-directory-36

Для того чтобы сохранить изменения в файле “Config.pm” нажимаем “Ctrl+X”.

Теперь необходимо подтвердить сохранение изменений.

Нажимаем на кнопку “y”.

integratsiya-otrs-s-active-directory-37

Нажимаем на кнопку “Enter”.

integratsiya-otrs-s-active-directory-38

Теперь с рабочей станции переходим по ссылке http://10.77.2.31/otrs/index.pl, где 10.77.2.31 – IP-адрес моего сервера. Соответственно вам необходимо указать IP-адрес вашего сервера OTRS.

Указываем логин и пароль администратора OTRS, ранее созданного в Active Directory.

Нажимаем на кнопку “Login”.

integratsiya-otrs-s-active-directory-39

После успешной авторизации вы увидите главную страницу OTRS.

integratsiya-otrs-s-active-directory-40

Теперь с рабочей станции переходим по ссылке http://10.77.2.31/otrs/index.pl, где 10.77.2.31 – IP-адрес моего сервера. Соответственно вам необходимо указать IP-адрес вашего сервера OTRS.

Указываем логин и пароль специалиста OTRS, ранее созданного в Active Directory, который будет оказывать техническую поддержку.

Нажимаем на кнопку “Login”.

integratsiya-otrs-s-active-directory-41

После успешной авторизации вы увидите главную страницу, на которой в дальнейшем будут видны заявки с разными статусами. Настройка системы под конкретные задачи будут подробно рассматриваться в руководстве «Настройка OTRS».

integratsiya-otrs-s-active-directory-42

Теперь с рабочей станции переходим по ссылке http://10.77.2.31/otrs/customer.pl, где 10.77.2.31 – IP-адрес моего сервера. Соответственно вам необходимо указать IP-адрес вашего сервера OTRS.

Указываем логин и пароль пользователя OTRS, ранее созданного в Active Directory, который будет обращаться за поддержкой.

Нажимаем на кнопку “Login”.

integratsiya-otrs-s-active-directory-43

После успешной авторизации вы увидите главную страницу личного кабинета пользователя OTRS.

integratsiya-otrs-s-active-directory-44

Настройка интеграции OTRS с Active Directory успешно завершена

5 Responses

  1. Алексей

    Здравствуйте!
    У меня небольшой вопрос. Я хочу использовать в качестве CustomerID поле ‘description’ вместо ‘mail’.
    Нужно ли при этом что-то менять в коде кроме CustomerID => ‘description’ и [ ‘UserCustomerID’, ‘CustomerID’, ‘description’, 0, 1, ‘var’ ]?
    И что произойдет, если у какого-то из пользователей это поле в AD не заполнено?

  2. Fedor

    Добрый день!
    Спасибо за статью! Я воспользовался этими настройками и действительно все пользователи otrs берутся из AD. Однако есть несколько вопросов:
    1. как теперь авторизоваться учетной записью созданной в otrs, если ее нет в АД? создавать сторонних пользователей в АД – не вариант. т.е. нужно как-то указать в скрипте необходимость совместной авторизации – LDAP и внутренней.
    2. если пользователь создавал заявки, работал какое-то время, а потом, например, уволился и его учетка удаляется из АД, останутся ли заявки этого пользователя в отрс?

  3. Алексей

    Добрый день, спасибо за статью. У меня вопрос . Как прописать, чтобы OTRS искала Учетные записи пользователей OTRS не только в папке users, а и в других директориях или группах например domain users?

  4. imlalexandr

    Добрый день, все сделанно по статье но при входе в OTRS выдает “Аутентификация успешна, однако ни одной записи для клиента не обнаружено в используемой/ых базе клиентов. Обратитесь к вашему администратору. ”
    при этом если вручную создать то авторизацию домена проходит
    а вот в customers.pl заходят все без ручного создания …в чем может быть проблема …оч похоже что по какой то причине не создаются агенты

  5. Сафаров Эльдар

    Добрый день, подскажите, если нету возможности использовать уз root, а скажем я хочу использоваться уз blahblah, какие права и куда и где стоит выдать данной уз на сервере где установлен OTRS?

Leave a Reply to Алексей Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.