OpenLDAP como Proxy

1

Primeiro, observe que tenho experiência com Linux, mas por algum motivo, a autenticação do proxy OpenLDAP me deixa muito confusa e, portanto, espero que alguém possa simplesmente responder às minhas perguntas para me ajudar a entender melhor. Eu estava seguindo este tutorial para configurar um proxy para uma autenticação do Active Directory ( link ).

Algumas notas:

  • O IP do servidor OpenLDAP é 10.41.22.103

  • O IP do servidor do Windows AD é 10.41.22.100

  • A conta de administrador do OpenLDAP é cn = admin, dc = exemplo, dc = com

Após o tutorial, aqui estão os arquivos que eu modifiquei.

Meu arquivo 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

No meu Server 2012 AD, criei um usuário conforme solicitado e este é seu DN:

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

Aqui está o que eu coloco no 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 )

Aqui está o que eu coloquei no arquivo 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

A última etapa desse tutorial menciona o arquivo pam_ldap.conf, mas não consigo encontrá-lo no servidor OpenLDAP. Aqui estão algumas perguntas que tenho (mais provavelmente virão):

  1. Onde está o arquivo pam_ldap.conf e ele deve estar no servidor do OpenLDAP ou em um cliente?
  2. Depois que tudo isso estiver configurado corretamente, como posso testá-lo totalmente para garantir que a autenticação esteja acontecendo no nível do AD? Estou muito confuso sobre essa parte!

Obrigado!

  • cristão
por Christian Palacios 23.06.2017 / 18:30

0 respostas