Насмотревшись на свою корпоротивную сеть, захотелось мне и дома сделать что-то подобное, чтобы работая с любого домашнего компьютера я мог сохранять в своем домашнем каталоге все файлы и вообще даже при поломке компьютера сохранить все данные в целостности, а так же спокойно получать доступ к файлам и загружать их из сети удаленно.
Итак, дано:
Ноутбук;
Персональный компьютер;
NAS с RAID1;
Домашний сервер с установленным Debian wheezy;
Цель:
Настроить ldap с переносимыми профилями пользователей, организовать сервер свой «облачный» сервер.
Что будем использовать:
OpenLDAP;
Owncloud;
NFS.
В первую очередь я настроил OpenLDAP руководствуясь статьёй с портала Pro LDAP, я полностью следовал руководству, единственное, это установка владельца директории, вместо:
# mkdir -p /domain/netlogon /domain/profiles
# chown -Rf root:root /domain/netlogon /domain/profiles /domain/home
# chmod 1777 /domain/profiles
Я сделал:
# mkdir -p /domain/netlogon /domain/profiles
# chown -Rf root:root /domain/netlogon /domain/profiles
# chown -Rf www-data:www-data /domain/home
# chmod 1777 /domain/profiles
Это нужно для того, чтобы в будущем owncloud подучил доступ к каталогу с пользователями.
Ставим
apt-get install autofs-ldap ldap-utils
В /etc/ldap/slapd.conf добавляем следующие строки
include /etc/ldap/schema/autofs.schema
Перезапускаем LDAP
/etc/init.d/slapd restart
Далее правим LDAP, я использовал phpldapadmin
Добавляем в нашу базу следующее:
ou: admin
objectClass: top
objectClass: organizationalUnitou: automount
objectClass: top
objectClass: organizationalUnitou: auto.master
objectClass: top
objectClass: automountMapcn: /domain/home
objectClass: top
objectClass: automount
automountInformation: ldap:ou=auto.home,ou=automount,ou=admin,dc=example,dc=com —timeout=60 —ghostou: auto.home
objectClass: top
objectClass: automountMapcn: user
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 server_ip:/domain/home/user
С сервером все.
После установки OpenLDAP, я настроил возможность авторизации пользователей в LDAP на компьютерах
apt-get install libnss-ldap libpam-ldap nscd autofs-ldap
Далее отвечаем на вопросы:
LDAP сервер URI: Указываем здесь адрес сервера, лучше указать IP
Имя базы для поиска: dc=example,dc=com
LDAP версия: 3
Аккаунт администратора LDAP: cn=manager,dc=example,dc=net
Пароль администратора LDAP:
А nscd — кэширующий сервер DNS
После установки открываем
/etc/ldap/ldap.conf
И парвим:
BASE dc=example,dc=com
URI ldap://ldaps1.example.com/
Затем приводим /etc/nsswitch.conf к следующему виду:
passwd: compat ldap
group: compat ldap
shadow: compat ldap
automount: files ldap
Остальное оставляем без изменений;
Редактируем /etc/default/autofs меняем:
Где autofs получить карту
MASTER_MAP_NAME="ldap://server_ip/ou=auto.master,ou=automount,ou=admin,dc=example,dc=com"
включаем логи
LOGGING="verbose"
Где находится наш сервер
LDAP_URI="ldap://server_ip"
Где искать
SEARCH_BASE="ou=automount,ou=admin,dc=example,dc=com"
MAP_OBJECT_CLASS="automountMap"
ENTRY_OBJECT_CLASS="automount"
MAP_ATTRIBUTE="ou"
ENTRY_ATTRIBUTE="cn"
VALUE_ATTRIBUTE="automountInformation"
Перезапускаем autofs
/etc/init.d/autofs restart
Из консоли пробуем залогинится нашим пользователем парралельно смотрим в syslog
tail -F /var/log/syslog
в следующей части я напишу об установке Owncloud и связке его с LDAP
Ссылки
http://pro-ldap.ru/art/vereschagin/20110617/
https://help.ubuntu.com/community/AutofsLDAP
http://www.rjsystems.nl/en/2100-d6-openldap-client.php
http://samba-doc.ru/smbldap/smbldap.html#udpol
Спасибо огромное за отличную статью, мне очень помогли ваши рекомендации.