Назад | Перейти на главную страницу

OpenLDAP как прокси

Во-первых, обратите внимание, что у меня есть опыт работы с Linux, но по какой-то причине проверка подлинности прокси OpenLDAP меня очень смущает, и поэтому я надеюсь, что кто-то сможет просто ответить на мои вопросы, чтобы помочь мне лучше понять это. Я следовал этому руководству, чтобы настроить прокси для аутентификации Active Directory (https://wiki.samba.org/index.php/OpenLDAP_as_proxy_to_AD).

Некоторые примечания:

Следуя руководству, вот файлы, которые я изменил.

Мой файл slapd.conf (/etc/ldap/slapd.conf):

### Schema includes ####

include                 /etc/ldap/schema/core.schema
include                 /etc/ldap/schema/cosine.schema
include                 /etc/ldap/schema/inetorgperson.schema
include                 /etc/ldap/schema/misc.schema
include                 /etc/ldap/schema/nis.schema

## Module paths ##############################################################

modulepath              /usr/lib/ldap
moduleload              back_ldap
moduleload              rwm

# Main settings ###############################################################

pidfile                 /var/run/slapd/slapd.pid
argsfile                /var/run/slapd/slapd.args

### Database definition (Proxy to AD) #########################################

database                ldap
readonly                yes
protocol-version        3
rebind-as-user          yes
uri                     "ldap://10.41.22.100:389"
suffix                  "dc=OneGeo,dc=local"
overlay                 rwm
rwm-map                 attribute       uid     sAMAccountName
#rwm-map                 attribute       mail    proxyAddresses

### Logging ###################################################################

logfile                 /var/log/slapd/slapd.log
loglevel   0

В моем Server 2012 AD я создал пользователя по запросу, и это его DN:

CN=nslcd connect,CN=Users,DC=OneGeo,DC=local

Вот что я вложил в core.schema (/etc/ldap/schema/core.schema):

####sAMAccountName AttributeType####

attributetype ( 1.2.840.113556.1.4.221
NAME 'sAMAccountName'
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
SINGLE-VALUE )

Вот что я поместил в файл nslcd.conf (/etc/nslcd.conf):

# Mappings for Active Directory

pagesize 1000
referrals off

# Passwd

filter passwd (&(objectClass=posixAccount)(!(objectClass=computer))(uidNumber=*))

map    passwd homeDirectory     UnixHomeDirectory
map    passwd gecos             displayName
map    passwd gidNumber         primaryGroupID


# Shadow

filter shadow (&(objectClass=posixAccount)(!(objectClass=computer))(uidNumber=*))
map    shadow shadowLastChange  pwdLastSet

##new
filter passwd (uid=*)

# Groups

#filter group (&(objectClass=posixGroup)(gidNumber=*))
filter group  (&(objectClass=group)(gidNumber=*))
#map    group gid       member

# Local account for nsclcd

uid nslcd
##gid ldap
gid nslcd

# Where is the LDAP

uri ldap://10.41.22.100:389
base dc=OneGeo,dc=local

# Connect-Account

binddn  CN=nslcd\connect,CN=Users,DC=OneGeo,DC=local
bindpw n3m3s1s
ssl no

В последнем шаге этого руководства упоминается файл pam_ldap.conf, но я не могу найти его на сервере OpenLDAP. Вот несколько вопросов, которые у меня есть (возможно, появятся и другие):

  1. Где находится файл pam_ldap.conf и должен ли он находиться на сервере OpenLDAP или на клиенте?
  2. После того, как все это настроено правильно, как мне полностью протестировать его, чтобы убедиться, что аутентификация происходит на уровне AD? Я действительно запутался в этой части!

Спасибо!