Я установил slapd в Ubuntu 12.04 и настроил его следующим образом в /etc/ldap/slapd.conf:
modulepath /usr/lib/ldap
moduleload back_sock.la
database sock
socketpath /tmp/slapd.sock
Однако, если я запускаю slapd с service slapd restart
, slapd запускается но в / tmp нет файла сокета. Что мне не хватает?
Обновление: Вывод netstat -nlp | grep slapd
:
tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 860/slapd
tcp6 0 0 :::389 :::* LISTEN 860/slapd
unix 2 [ ACC ] STREAM LISTENING 8303 860/slapd /var/run/slapd/ldapi
Цель back_sock
- подключиться к другому сокету, который уже существует. Это задокументировано на справочной странице slapd-sock(5)
. Это, конечно, не создает никакого сокета.
Если вы просматриваете свои журналы, вы увидите ошибки только при попытке выполнить какое-либо действие, потому что серверная часть sock открывает сокет каждый раз, когда ему необходимо выполнить какое-либо действие, и закрывает его впоследствии. Вы увидите запись could not open socket
в своих журналах, если сокет не может быть открыт для каждого действия.
Если вы вместо этого пытаетесь заставить slapd прослушивать сокет, вам нужно изменить /etc/default/slapd
и настроить / добавить URL-адрес slapi: // (помните, что вам нужно кодировать слеш как% 2f, см. [ 114] для более подробной информации).