Цель: поднять адресную книгу на 400 контактов, для почтовых клиентов
Инструменты: FreeBSD 8,1, OpenLDAP 2.4.23, phpLDAPadmin, LDAPAdmin 1,1
Решение:
0 Обновление системы
Если FreeBSD свежеустановленная, то необходимо обновить дерево портов следующим образом:
2 Настройка OpenLDAP сервера
Копирование стандартного файла настроек:
Создание корня
#ee /usr/local/etc/openldap/kvarta.local.ldif
5 Способы администрирования
5.1 phpLDAPadmin
Установка подразумевает что Apache (в примере Apache 2,2), php и php-extencions установлены верно:
логин: cn=root,dc=kvarta,dc=local
пароль: пароль для которого создавался хэш
5.2 LDAP Admin
Это Windows клиент для подключения к LDAP (OpenLDAP/Windows AD).
После запуска необходимо выбрать Start- >Connect- >New Connection
5.3 Apache Directory Studio
LDAP- >New Connection…
Указывается только IP адрес, зтаем «Далее»
После этих действий ничего настраивать больше не нужно.
6 Настройка клиентов
6.1 Thunderbird
Инструменты- >Адресная книга (Ctrl+Shift+B)- >Файл- >Создать- >Каталог LDAP…
6.2 Microsoft Outlook 2010
Файл- >Настройка учетных записей- >Адресные книги- >Создать…- >Слежба каталогов Интернета (LDAP)- >Имя сервера (указать IP OpenLDAP сервера)- >Другие настройки- >Поиск
Инструменты: FreeBSD 8,1, OpenLDAP 2.4.23, phpLDAPadmin, LDAPAdmin 1,1
Решение:
0 Обновление системы
Если FreeBSD свежеустановленная, то необходимо обновить дерево портов следующим образом:
#portsnap fetch extract
Если обновление уже проводилось, то достаточно выполнить:#portsnap fetch update
1 Установка OpenLDAP сервера#cd /usr/ports/net/openldap24-server
#make config
#make install clean
Добавление в автозагрузку:#make config
#make install clean
#ee /etc/rc.conf
#slapd_enable=»YES»
#slapd_flags='-h «ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0/»'
#slapd_sockets=»/var/run/openldap/ldapi»
При этом OpenLDAP будет слушать все сетевые интерфейсы.#slapd_enable=»YES»
#slapd_flags='-h «ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0/»'
#slapd_sockets=»/var/run/openldap/ldapi»
2 Настройка OpenLDAP сервера
#/usr/local/sbin/slappasswd —s ПАРОЛЬ
В выводе будет {SSHA}ХЭШ_ПАРОЛЯКопирование стандартного файла настроек:
#cp /usr/local/etc/openldap/slapd.conf.default /usr/local/etc/openldap/slapd.conf
#ee /usr/local/etc/openldap/slapd.conf
#Указание прав доступа для папки, как рекомендовано:
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/misc.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/openldap.schema
# Define global ACLs to disable default read access.
# Do not enable referrals until AFTER you have a working directory
# service AND an understanding of referrals.
#referral ldap://root.openldap.org
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
# Load dynamic backend modules:
modulepath /usr/local/libexec/openldap
moduleload back_bdb
# moduleload back_hdb
# moduleload back_ldap
# Sample security restrictions
# Require integrity protection (prevent hijacking)
# Require 112-bit (3DES or better) encryption for updates
# Require 63-bit encryption for simple bind
# security ssf=1 update_ssf=112 simple_bind=64
# Sample access control policy:
# Root DSE: allow anyone to read it
# Subschema (sub)entry DSE: allow anyone to read it
# Other DSEs:
# Allow self write access
# Allow authenticated users read access
# Allow anonymous users to authenticate
# Directives needed to implement policy:
# access to dn.base=“» by * read
# access to dn.base=»cn=Subschema» by * read
access to * by * read
access to attrs=userPassword
by self write
by anonymous auth
by * none
# access to *
# by self write
# by users read
# by anonymous auth
#
# if no access controls are present, the default policy
# allows anyone and everyone to read anything but restricts
# updates to rootdn. (e.g., «access to * by * read»)
#
# rootdn can always read and write EVERYTHING!
#######################################################################
# BDB database definitions
#######################################################################
database bdb
suffix «dc=kvarta,dc=local»
rootdn «cn=root,dc=kvarta,dc=local»
# Cleartext passwords, especially for the rootdn, should
# be avoid. See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw {SSHA}ХЭШ_ПАРОЛЯ
# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory /var/db/openldap-data
# Indices to maintain
index objectClass eq
index cn eq
#chmod 0700 /var/db/openldap-data
Копирование стандартной базы:cp /usr/local/etc/openldap/DB_CONFIG.example /var/db/openldap-data/DB_CONFIG
Запуск:#/usr/local/etc/rc.d/slapd start
Проверка:#ps —ax | grep slap
1392 ?? Is 0:00,03 /usr/local/libexec/slapd —h ldapi://%2fvar%2frun%2fop
21953 2 S+ 0:00,00 grep slap
#netstat —nap tcp | grep 389
tcp4 0 0 *.389 *.* LISTEN
3 Конфигурация OpenLDAP сервера1392 ?? Is 0:00,03 /usr/local/libexec/slapd —h ldapi://%2fvar%2frun%2fop
21953 2 S+ 0:00,00 grep slap
#netstat —nap tcp | grep 389
tcp4 0 0 *.389 *.* LISTEN
Создание корня
#ee /usr/local/etc/openldap/kvarta.local.ldif
dn: dc=kvarta,dc=localДобавление корня:
objectClass: top
objectClass: dcObject
objectClass: organization
dc: kvarta
o: altecon
dn: ou=addressbook,dc=kvarta,dc=local
objectClass: top
objectClass: organizationalUnit
ou: addressbook
#/usr/local/bin/ldapadd —x —h localhost —f /usr/local/etc/openldap/kvarta.local.ldif —D «cn=root,dc=kvarta,dc=local» -W
Потребует ввода пароля root (хэш которого сгенерирован)adding new entry «dc=kvarta,dc=local»
adding new entry «ou=addressbook,dc=kvarta,dc=local»
4 Проверка на возможные ошибки в работе OpenLDAP сервераadding new entry «ou=addressbook,dc=kvarta,dc=local»
#ee /etc/syslog.conf
Добавить в конец файла:!slapdСоздание файла лога:
*.* /var/log/ldap.log
#touch /var/log/ldap.log
#chmod 600 /var/log/ldap.log
Применение изменений:#chmod 600 /var/log/ldap.log
#/etc/rc.d/syslogd reload
После проверки на ошибки подобное логирование стоит отключать, разрастается быстро.5 Способы администрирования
5.1 phpLDAPadmin
Установка подразумевает что Apache (в примере Apache 2,2), php и php-extencions установлены верно:
#cd /usr/ports/net/phpldapadmin
#make install clean
#ee /usr/local/etc/apache22/Includes/phpldapadmin.conf
#make install clean
#ee /usr/local/etc/apache22/Includes/phpldapadmin.conf
Alias /phpldapadmin/ "/usr/local/www/phpldapadmin/htdocs/»
< Directory "/usr/local/www/phpldapadmin/htdocs» >
Allow from all
< /Directory >
#apachectl graceful
После этих действий по адресу http://IP_сервера/phpldapadmin/ будет доступна админ панельлогин: cn=root,dc=kvarta,dc=local
пароль: пароль для которого создавался хэш
5.2 LDAP Admin
Это Windows клиент для подключения к LDAP (OpenLDAP/Windows AD).
После запуска необходимо выбрать Start- >Connect- >New Connection
5.3 Apache Directory Studio
LDAP- >New Connection…
Указывается только IP адрес, зтаем «Далее»
После этих действий ничего настраивать больше не нужно.
6 Настройка клиентов
6.1 Thunderbird
Инструменты- >Адресная книга (Ctrl+Shift+B)- >Файл- >Создать- >Каталог LDAP…
6.2 Microsoft Outlook 2010
Файл- >Настройка учетных записей- >Адресные книги- >Создать…- >Слежба каталогов Интернета (LDAP)- >Имя сервера (указать IP OpenLDAP сервера)- >Другие настройки- >Поиск
Отличненько, только как настроить чтобы в веб интерфейсе список адресов отображался русскими символами, а то просто отображает пустое поле, и в логах не видит русских букв, а просто отображает "п╟п╢п╣п╤п╢п╟ пM-^Zп╟яM-"
ОтветитьУдалить