NoNaMe :: Установка Gosa для управления Ldap каталога и Samb

После настройки связки LDAP+SAMBA мне нужно было как-то админить все это дело. Можно конечно выполнять администрирование в консоли, но иногда это делать легче через веб интервейс, тем более если администратор будет не один, и другие админы либо не имеют доступа к консоли, либо не имеют соответствующей квалификации.

Далее рассмотрим установку одной из систем управления. Я использовал для этого GOsa
эта статья идет как продолжение предыдущей статьи где, мы рассматривали установку Samba Domain Controller с LDAP (OpenLDAP)

----------------------<cut>----------------------

небольшое описание:

Скрипты GOsA предназначены для удобного администрирования каталога на основе Open LDAP?. Данный проект позволяет наглядно визуализировать объекты, находящиеся в LDAP-каталоге. Причем отображение объектов происходит только в том случае, если в их описании присутствует какой либо из специальных классов, зарегистрированных в схеме gosa. Такой подход не позволяет использовать какие либо другие проекты, работающие с LDAP-каталогом, без существенной их модификации. Соответственно, если планируется использовать базу LDAP только для администрирования пользовательских аккаунтов в локальной сети и для интеграции с Samba, то лучшей админки просто не найти. Если же в дальнейшем планируется использовать какие либо еще приложения, например, Open Xchange, то использование Gosa – неприемлемо.

Ставим из репов следующие пакеты:

sudo apt-get install gosa gosa-schema

Правда, тут есть минус, при установке из репов тянет за собой кучу ненужных пакетов типа exim4 и других (я особо разбираться не стал).

В файле /etc/ldap/slapd.conf
подключаем следующие схемы:

include         /etc/ldap/schema/gosystem.schema
include         /etc/ldap/schema/gofon.schema
include         /etc/ldap/schema/goto.schema
include         /etc/ldap/schema/gofax.schema
include         /etc/ldap/schema/goserver.schema
include         /etc/ldap/schema/gosa+samba3.schema

потом перезапускаем slapd:

sudo /etc/init.d/slapd restart

После чего в браузере набираем http://gosahost/gosa где http://gosahost/ это адрес где вы установили gosa
Следуем инструкциям установщика,

В процессе установки на шаге «Проверка установки» где происходит базовая проверка версии PHP и требуемых расширений. Инсталлятор может вывести ошибки и предупреждения и предложит их исправить, у меня ругнулось на:

Проверка поддержки kadm5
Пропустил предупреждение.

Проверка поддержки SNMP
Установил модуль php5-snmp

apt-get install php5-snmp

Проверка поддержки Cups
Тоже пропустил, так как принтерами не планирую пользоваться

Дальше исправил ошибку

memory_limit >= 32

Ошибка
Найдите 'memory_limit' в вашем php.ini и установите в 32M или более.
GOsa НЕ запустится без исправления

И предупреждение:

Найти 'expose_php' в вашем php.ini и установить его в 'Off'.
GOsa запустится без исправления

После этого рестартуем апач

/etc/init.d/apache2 restart

Продолжаем установку. На шаге «Настройки GOSA 1/3»

Изменяем параметры в пунктах:

Атрибут DN пользователей
На uid

Поддерево хранения пользователей с

ou=people

на

ou=Users

Поддерево хранения групп c

ou=groups

на
ou=Groups

также ставим галочку на пункте (если необходимо)
Ограничения пароля

Остальное оставляем по умолчанию

На шаге «Настроки GOsa 2/3»
Изменяем:
Контейнер рабочей станции

На

ou=Computers

на шаге «Проверка LDAP» исправляем показанные предупреждения и ошибки,

после этого скачиваем конфиг, переписываем его в /etc/gosa и даем нужные права.

После установки приходится немного допилить конфиг GOsa под себя.

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

Находим в gosa.conf

Следующее

<plugin acl="default" class="posixAccount" icon="posix.png" path="plugins/personal/posix" />

Меняем на это:

<plugin acl="default" class="posixAccount" icon="posix.png" path="plugins/personal/posix" postcreate="/usr/bin/sudo /etc/gosa/createaccount.sh %uid %homeDirectory" />

Далее создаем файл:

/etc/gosa/createaccount.sh

В нем прописываем следующее:

#!/bin/sh

/bin/mkdir -m 700 $2

/bin/chown -R $1 $2

сохраняем и изменяем его права:

chmod 750 /etc/gosa/createaccount.sh

Далее нужно разрешить Apache создание каталогов и т.д.
Изменяем /etc/sudoers добавив туда следующие строки:

www-data ALL=(ALL) NOPASSWD: /etc/gosa/createmail.sh, /etc/gosa/createaccount.sh

Теперь при добавлении пользователя создается его домашняя папка

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

В поле «Домашний каталог» вводим следующее(где %uid это переменная подставляющая имя пользователя):

/home/samba/profiles/%uid

В файл

Добавляем строку /etc/gosa/shells

/bin/false

Чтобы при создании пользователя можно было выбрать /etc/gosa/ в качестве шелла пользователя.

Далее, если не планируется пользоваться такими функциями как управление факсами и Телефонными макросами нужно отключить их в файле:

/etc/gosa/gosa.conf

Закомментировав соответствующие плагины в секциях "My account", "Administration", "Addons" подобным образом:

<!--
            <plugin acl="default" class="gofaxAccount" icon="fax.png"
                path="plugins/gofax/faxaccount" />
-->

Ссылки:
https://oss.gonicus.de/labs/gosa/
https://oss.gonicus.de/labs/gosa/wiki/FAQ
http://www.freesource.info/wiki/AndrewShan/gosa?show_files=1

Источник: http://nnm.ru/blogs/nickneo/ustanovka_gosa_dlya_upravleniya_ldap_kataloga_i_samba/

Яндекс.Метрика Rambler's Top100

© 2000–2012 NoNaMe