El control del acceso a los servicios de red puede ser todo un reto. Afortunadamente, bajo Red Hat Linux, hay un gran número de herramientas que lo pueden ayudar. Por ejemplo, un filtro de cortafuegos basado en iptables dejan afuera los paquetes de red que no son bienvenidos dentro de la pila de red del kernel. Para los servicios de red que lo utilizan, los wrappers TCP añaden una capa adicional de protección mediante la definición de cuáles hosts son permitidos y cuáles no conectarse a los servicios de red "wrapped". Uno de los servicios de red wrapped es xinetd super servidor. Este servicio se le llama super servidor porque controla la conexión a un subconjunto de servicios de red y refina aún más el control de acceso.
La Figura 15-1 es una ilustración básica de cómo estas herramientas funcionan para proteger los servicios de red.
Este capítulo se basa en el papel de los wrappers TCP y de xinetd para controlar el acceso a los servicios de red y revisa cómo estas herramientas pueden ser usadas para mejorar la administración del registro. Para una discusión del uso de cortafuegos (firewalls) con iptables, consulte el Capítulo 16.
El paquete wrappers TCP (tcp_wrappers) está instalado por defecto bajo Red Hat Linux y proporciona control de acceso basado en host a los servicios de red. El componente más importante dentro del paquete es la librería /usr/lib/libwrap.a. En términos generales, un servicio wrappers TCP es uno que ha sido compilado con la librería libwrap.a.
Cuando un intento de conexión es hecho a un servicio wrapped TCP, el servicio primero referencia los archivos de acceso de host (/etc/hosts.allow y /etc/hosts.deny) para determinar si el cliente tiene permitido conectarse. Luego utiliza el demonio syslog (syslogd) para escribir el nombre del host solicitante y el servicio solicitado a /var/log/secure o /var/log/messages.
Si a un cliente se le permite conectarse, los wrappers TCP liberan el control de la conexión al servicio solicitado y no interfieren más con la comunicación entre el cliente y el servidor.
Además del control de acceso y registro, los wrappers TCP pueden activar comandos para interactuar con el cliente antes de negar o liberar el control de la conexión al servicio solicitado.
Puesto que los wrappers TCP son una utilidad de gran valor a las herramientas de seguridad de cualquier administrador de servidor, la mayoría de los servicios de red dentro de Red Hat Linux están enlazados con la librería libwrap.a. Tales aplicaciones incluyen /usr/sbin/sshd, /usr/sbin/sendmail, y /usr/sbin/xinetd.
![]() | Nota | |
---|---|---|
Para determinar si un binario de servicio de red está enlazado con la libreria libwrap.a, escriba el comando siguiente como usuario root:
Reemplace <binary-name> con el nombre del binario de servicio de red. |
Los wrappers TCP ofrecen las siguientes ventajas básicas comparado con las otras técnicas de control de servicios de red:
Transparencia tanto para el cliente del host y el servicio de red wrapped. — El cliente que se está conectando así como también el servicio de red wrapped no están al tanto de que están en uso los wrappers TCP. Los usuarios legítimos son registrados y conectados al servicio solicitado mientras que las conexiones de clientes prohibidos fallan.
Administración centralizada de protocolo múltiples. — Los wrappers TCP operan separadamente de los servicios de red que ellos protegen, permitiendo a muchas aplicaciones de servidor compartir un conjunto común de archivos de configuración para una administración más sencilla.