[Date Prev][Date Next] [Chronological] [Thread] [Top]

ITS#5396



 Hi Pierangelo, I guess I have to explain a little bit more about the configuration I am working with. 

I didn't send the whole config file, there are two URIs defined in it with correspondig rewrite rules so the rewrite engine is needed, although I have to check the rewrite capabilities of back-meta.

I have used the single-conn directive but I have faced the same problem, every connection gets stuck in the CLOSE_WAIT state in the metadirectory server but is closed in the remote LDAP servers.

I guess you are rigth and is only a configuration issue but, why every socket remains open, in CLOSE_WAIT state, even when there is no more connections to the server? I have reproduced the issue in a test enviroment and the sockets are freed only when the slapd server is stopped.

The whole config file follows:

#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
### Fichero de schema basico de OpenLDAP.
include         /opt/openldap-2.4.8/etc/openldap/schema/core.schema
### Definiciones incluidas con OpenLDAP. Es importante usar el orden dado ya
### que hay atributos definidos en un schema que se usan en los siguientes.
include         /opt/openldap-2.4.8/etc/openldap/schema/cosine.schema
include         /opt/openldap-2.4.8/etc/openldap/schema/inetorgperson.schema
### Definicion de atributos de Active Directory.
include         /opt/openldap-2.4.8/etc/openldap/schema/AD.schema
### Definicion incluida con OpenLDAP para usar LDAP como servicio NIS.
include         /opt/openldap-2.4.8/etc/openldap/schema/nis.schema
### Definicion de atributos y objetos de Grupo GMV.
include         /opt/openldap-2.4.8/etc/openldap/schema/local.schema
### Definicion de atributos y objetos de samba.
include         /opt/openldap-2.4.8/etc/openldap/schema/samba.schema

# Define global ACLs to disable default read access.

pidfile         /opt/openldap-2.4.8/var/run/slapd.pid
argsfile        /opt/openldap-2.4.8/var/run/slapd.args

## TTL para tirar una conexion inactiva (1 minuto).
idletimeout 60
## Caractersiticas adicionales.
allow bind_anon_cred

#######################################################################
#
# Definicion de una base de datos Metadirectorio para consultas a AD.
#
#######################################################################
backend         meta
database        meta

## Sufijo del arbol mostrado por el metadirectorio y usuario
## administrador del mismo(superusuario de ldap).
suffix          "dc=gmv,dc=es"
rootdn          "cn=diradmin,dc=gmv,dc=es"
## Password del superusuario, pasar a texto cifrado con slappasswd.
rootpw          secret

##############################################
### Opciones comunes a todo el metadirectorio.
##############################################
#########################################
#### Directivas comunes de configuracion.
## TTL para tirar una conexion, aunque no este inactiva (6 minutos).
conn-ttl 120
## Version del protocolo LDAP a utilizar.
protocol-version 3
## Accion ante un referral.
chase-referrals no
#####################################################################
### Definicion del LDAP remoto para las consultas de informacion de
### usuario y grupos UNIX desde maquinas que son clientes LDAP.
#####################################################################
## Definicion de los servidores target remotos a consultar.
## Se consultara el primer servidor remoto que responda.
## Defino una lista de dcs que pueden responder para el contexto de
## nombre dc=gmv,dc=es. Primer target con sus parametros de configuracion.
uri "ldap://gmvdc1.gmv.es/DC=gmv,DC=es"; "ldap://gmvdc2.gmv.es/";
## Habilitamos el sistema de reescritura para las consultas.
rewriteEngine on
overlay rwm
## Pseudoroot DN.
idassert-bind bindmethod=simple binddn="CN=proxymetadir,OU=SISTEMAS,OU=Usuarios,DC=gmv,DC=es" credentials="****" mode=none
###################################################################
###################################################################
# Definicion de las reglas de reescritura a utilizar para los DCs.
###################################################################
###################################################################
## Reglas de reescritura para buscar informacion en los DCs.
## Primero se cambia el sufijo del arbol para buscar grupos.
rwm-suffixmassage "ou=group,dc=gmv,dc=es" "OU=Proyectos,OU=Grupos,DC=gmv,DC=es"
## Ahora se modifica para buscar las cuentas de usuario.
rwm-suffixmassage "ou=people,dc=gmv,dc=es" "OU=Usuarios,DC=gmv,DC=es"
## Regla de reescritura para el DN de los grupos.
## Teoricamente solo deberia aplicarse a los resultados devueltos
## a los clientes del servidor.
rwm-rewriteContext searchEntryDN
rwm-rewriteRule "(.+)?_prj,ou=Group,dc=gmv,dc=es" "$1,ou=Group,dc=gmv,dc=es"
## Ahora vienen las reglas de reescritura de los atributos y las
## clases de objeto de cuentas de usuario y grupo UNIX.
rwm-map objectClass posixAccount user
rwm-map objectClass shadowAccount person
rwm-map objectClass posixGroup group
##
## Definicion de atributos a mapear con MS SFU 3.0.
##
rwm-map attribute gecos msSFU30Gecos
rwm-map attribute homeDirectory msSFU30HomeDirectory
rwm-map attribute uidNumber msSFU30UidNumber
rwm-map attribute loginShell msSFU30LoginShell
rwm-map attribute gidNumber msSFU30GidNumber
rwm-map attribute memberUid msSFU30MemberUid
rwm-map attribute ShadowFlag msSFU30ShadowFlag
rwm-map attribute ShadowExpire msSFU30ShadowExpire
rwm-map attribute ShadowInactive msSFU30ShadowInactive
rwm-map attribute ShadowMax msSFU30ShadowMax
rwm-map attribute ShadowWarning msSFU30ShadowWarning
rwm-map attribute ShadowLastChange msSFU30ShadowLastChange
rwm-map attribute ShadowMin msSFU30ShadowMin
### Como hay dos atributos iguales para los usuarios y para
### los grupos haremos esta distincion entre unos y otros
### para realizar el mapeo entre los dos.
## Los grupos se identifican por cn.
rwm-map attribute cn msSFU30Name
## Los usuarios se identifican por uid.
rwm-map attribute uid sAMAccountName
## El resto de atributos no los quiero para nada asi que me los
## cargo con los siguientes mapeos.
rwm-map attribute DSCOREPROPAGATIONDATA
rwm-map attribute SHOWINADDRESSBOOK
rwm-map attribute MSEXCHHOMESERVERNAME
rwm-map attribute MSEXCHALOBJECTVERSION
rwm-map attribute MSEXCHMAILBOXSECURITYDESCRIPTOR
rwm-map attribute MSEXCHUSERACCOUNTCONTROL
rwm-map attribute MSEXCHMAILBOXGUID
rwm-map attribute PROXYADDRESSES
rwm-map attribute MEMBEROF
rwm-map attribute HOMEMTA
rwm-map attribute HOMEMDB
rwm-map attribute USERACCOUNTCONTROL
rwm-map attribute manager
rwm-map attribute LEGACYEXCHANGEDN
rwm-map attribute BADPWDCOUNT
rwm-map attribute BADPASSWORDTIME
rwm-map attribute LASTLOGOFF
rwm-map attribute LASTLOGON
rwm-map attribute USERWORKSTATIONS
rwm-map attribute PWDLASTSET
rwm-map attribute OBJECTSID
rwm-map attribute ADMINCOUNT
rwm-map attribute ACCOUNTEXPIRES
rwm-map attribute LOGONCOUNT
rwm-map attribute DIRECTREPORTS
rwm-map attribute USNCREATED
rwm-map attribute USNCHANGED
rwm-map attribute CODEPAGE
rwm-map attribute OBJECTGUID
rwm-map attribute MDBUSEDEFAULTS
rwm-map attribute title
rwm-map attribute physicalDeliveryOfficeName
rwm-map attribute objectCategory
rwm-map attribute LASTLOGONTIMESTAMP
rwm-map attribute MSEXCHPOLICIESINCLUDED
rwm-map attribute MSRTCSIP-PRIMARYHOMESERVER
rwm-map attribute MSRTCSIP-PRIMARYUSERADDRESS
rwm-map attribute MSRTCSIP-FEDERATIONENABLED
rwm-map attribute MSRTCSIP-OPTIONFLAGS
rwm-map attribute street
rwm-map attribute jpegPhoto
rwm-map attribute USERPARAMETERS
rwm-map attribute member
rwm-map attribute INSTANCETYPE
rwm-map attribute WHENCREATED
rwm-map attribute WHENCHANGED
rwm-map attribute COMPANY
rwm-map attribute DELIVERANDREDIRECT
rwm-map attribute AUTHORIGBL
rwm-map attribute MAILNICKNAME
rwm-map attribute COUNTRYCODE
rwm-map attribute LOGONHOURS
rwm-map attribute PRIMARYGROUPID
rwm-map attribute SAMACCOUNTTYPE
rwm-map attribute USERPRINCIPALNAME
rwm-map attribute textEncodedORAddress
rwm-map attribute mail
rwm-map attribute MSRTCSIP-USERENABLED
rwm-map attribute MSRTCSIP-INTERNETACCESSENABLED
rwm-map attribute SRTCSIP-ARCHIVINGENABLED
rwm-map attribute c
rwm-map attribute l
rwm-map attribute st
rwm-map attribute postalCode
rwm-map attribute telephoneNumber
rwm-map attribute facsimileTelephoneNumber
rwm-map attribute givenName
rwm-map attribute initials
rwm-map attribute MSRTCSIP-ARCHIVINGENABLED
rwm-map attribute MSSFU30NISDOMAIN
rwm-map attribute SCRIPTPATH
rwm-map attribute DEPARTMENT
rwm-map attribute co
rwm-map attribute GECOS-OLD
rwm-map attribute UIDNUMBER-OLD
rwm-map attribute GIDNUMBER-OLD
rwm-map attribute LOGINSHELL-OLD
rwm-map attribute MSSFUHOMEDIRECTORY
rwm-map attribute MSSFUNAME

##############################################
### Opciones comunes a todo el metadirectorio.
##############################################
#########################################
#### Directivas comunes de configuracion.
## TTL para tirar una conexion, aunque no este inactiva (60 segundos).
conn-ttl 90
## Version del protocolo LDAP a utilizar.
protocol-version 3
## Accion ante un referral.
chase-referrals no
#####################################################################
### Definicion del LDAP local para las consultas de informacion de
### mapas de automount, perfiles de inicializacion de clientes Solaris
### y los netgroups.
#####################################################################
## Ahora defino el ldap que contiene los mapas de autofs
## asi como los perfiles para los clientes LDAP Solaris.
## De momento hago la prueba en local.
uri "ldap://172.22.4.13:390/dc=gmv,dc=es";
## Habilitamos el sistema de reescritura para las consultas.
rewriteEngine on
## Pseudoroot DN.
idassert-bind bindmethod=simple binddn="CN=proxymetadir,OU=SISTEMAS,OU=Usuarios,DC=gmv,DC=es" credentials="****" mode=none
########################################################################
########################################################################
# Definicion de las reglas de reescritura a utilizar para el LDAP local.
########################################################################
########################################################################
## Ahora las reglas de reescritura del servidor LDAP que contiene
## los mapas de automount asi como los perfiles de Solaris y los
## netgroups de Unix.
rwm-suffixmassage "ou=Profile,dc=gmv,dc=es" "ou=Profile,ou=Unix,dc=gmv,dc=es"
rwm-suffixmassage "ou=Automount,dc=gmv,dc=es" "ou=Automount,ou=Unix,dc=gmv,dc=es"
rwm-suffixmassage "ou=netgroup,dc=gmv,dc=es" "ou=Netgroup,ou=Unix,dc=gmv,dc=es"
rwm-suffixmassage "automountmapname=auto_home,dc=gmv,dc=es" "automountmapname=auto_home,ou=Unix,dc=gmv,dc=es"
rwm-suffixmassage "automountmapname=auto_master,dc=gmv,dc=es" "automountmapname=auto_master,ou=Unix,dc=gmv,dc=e
s"
rwm-suffixmassage "automountmapname=auto_direct,dc=gmv,dc=es" "automountmapname=auto_direct,ou=Unix,dc=gmv,dc=e
s"
rwm-map objectClass nisObject nisObject
rwm-map objectClass nisNetgroup nisNetgroup
rwm-map objectClass automountMap automountMap
rwm-map objectClass automount automount
rwm-map objectClass DUAConfigProfile DUAConfigProfile
rwm-map attribute memberNisNetgroup memberNisNetgroup
rwm-map attribute automountMapName automountMapName
rwm-map attribute automountKey automountKey
rwm-map attribute nisNetgroupTriple nisNetgroupTriple

Thanks again,

Eduardo.


-----Mensaje original-----
De: Eduardo Izaguirre Pazos 
Enviado el: viernes, 29 de febrero de 2008 13:28
Para: 'openldap-its@openldap.org'
Asunto: ITS#5396

 
Another update about this problem. Connections between slpad and the remote active directory servers remains in ESTABLISHED state for a long time and changes to CLOSE_WAIT state in the slapd server. In the active directory servers the connections then changes to FIN_WAIT_2, so it seems the slapd server is not sending the FIN packet to close the socket.

Cheers.

Eduardo
________________________________

De: Eduardo Izaguirre Pazos
Enviado el: jueves, 28 de febrero de 2008 13:21
Para: 'openldap-its@openldap.org'
Asunto: ITS#5396


An update about the case, the problem seems to be related with the connections which remains in CLOSE_WAIT state, as an example:
 
[root@metaldap openldap]# netstat -an | grep -i close | wc -l
11361

all these connections are to the remote ldap servers.
 
Cheers.
 
Eduardo.
 
________________________________

	  	 


Eduardo Izaguirre Pazos

Administrador de Sistemas / 

Systems Administrator

	 	 


GRUPO TECNOLÓGICO
E INDUSTRIAL GMV,S.A.
Isaac Newton, 11
P.T.M. Tres Cantos
E-28760 Madrid
Tel. +34 91 807 21 00
Fax +34 91 807 21 99
www.gmv.com

	

______________________
Este mensaje, y en su caso, cualquier fichero anexo al mismo,
 puede contener informacion clasificada por su emisor como confidencial
 en el marco de su Sistema de Gestion de Seguridad de la 
Informacion siendo para uso exclusivo del destinatario, quedando 
prohibida su divulgacion copia o distribucion a terceros sin la 
autorizacion expresa del remitente. Si Vd. ha recibido este mensaje 
 erroneamente, se ruega lo notifique al remitente y proceda a su borrado. 
Gracias por su colaboracion.
______________________
This message including any attachments may contain confidential 
information, according to our Information Security Management System,
 and intended solely for a specific individual to whom they are addressed.
 Any unauthorised copy, disclosure or distribution of this message
 is strictly forbidden. If you have received this transmission in error,
 please notify the sender immediately and delete it.
______________________