El otro día me pidieron que revisara la configuración de un sistema RHEL5 que tenía configurado un servidor CVS autenticado vía LDAP contra NDS-Novell. Al parecer cuando se accedía al servicio vía VPN desde una VLAN aislada, las conexiones con el CVS iban excesivamente lentas, mientras que en la Intranet iban a la velocidad habitual.
Analizando el patrón del tráfico desde el servidor CVS con tcpdump
, pude comprobar que por cada conexión que se realizaba al servidor, había una petición desde este hacia el cliente por el puerto TCP/113. Este puerto es el que usa el servicio Identd, para identificar usuarios en conexiones TCP/IP. Después de un rato buscando al final descubrí que el origen de estas conexiones estaba en la opción USERID que había configurada en las líneas log_on_success y log_on_failure de varios de los servicios que tenía configurados en /etc/xinetd.d/*, y en concreto en el fichero de CVS. Esta opción hacía que cada conexión exitosa o fallida hacia el servicio lanzara una conexión IdentD para identificar el usuario. Cuando la conexión venía desde la VPN, el firewall truncaba este flujo y la conexión desde el servidor CVS no obtenía respuesta, por lo que tenía que esperar a que expirara el timeout.
La solución a este problema es tan simple como eliminar las apariciones de la opción USERID de todos los ficheros /etc/xinetd.d/*, y luego reiniciar el servicio /etc/init.d/xinetd restart
.
La imagen la he sacado de la galería de Zorraquino.
Xinetd e Identd
Publicado por Ignacio Barrancos en lunes, febrero 08, 2010
Suscribirse a:
Enviar comentarios (Atom)
1 comentario:
Por suerte el anterior administrador de CVS, en mi actual trabajo ya comentó esas lineas :-)
Publicar un comentario