2.3.4.3.2. Opciones de control de acceso
Los usuarios de servicios
xinetd pueden elegir el uso de las reglas de acceso de hosts de envolturas TCP, proporcionar control de acceso a través de archivos de configuración de xinetd o una combinación de los dos. Consulte la Sección 2.3.2, “Archivos de configuración de envolturas TCP ” para obtener mayor información sobre archivos de control de acceso de hosts de envolturas TCPor more information about TCP Wrappers hosts access control files.
Esta sección aborda el uso de
xinetd para controlar el acceso a servicios.
Nota
A diferencia de las envolturas TCP, los cambios al control de acceso se efectúan si el administrador de
xinetd reinicia el servicio xinetd.
También, a diferencia de las envolturas TCP, el control de acceso a través de
xinetd solamente afecta los servicios controlados por xinetd.
El control de acceso de hosts
xinetd difiere del método utilizado por envolturas TCP. Cuando las envolturas TCP sitúan toda la configuración de acceso en dos archivos, /etc/hosts.allow y /etc/hosts.deny, el control de acceso de xinetd se encuentra en cada archivo de configuración en el directorio /etc/xinetd.d/.
Las opciones de acceso de hosts a continuación están soportadas por
xinetd:
only_from— Únicamente acepta hosts especificados para usar el servicio.no_access— Bloquea a los hosts listados para usar el servicio.access_times— Especifica el rango de tiempo que un servicio determinado puede utilizarse. El rango debe establecerse en un formato de 24 horas, HH:MM-HH:MM.
Las opciones
only_from y no_access pueden utilizar una lista de todas las direcciones IP o nombres de hosts, o pueden especificar una red completa. Igual que las envolturas TCP, al combinar el control de acceso xinetd con la configuración de registro mejorada se puede aumentar la seguridad al bloquear solicitudes de los hosts rechazados mientras se registra detalladamente cada intento de conexión.
Por ejemplo, el siguiente archivo
/etc/xinetd.d/telnet se utiliza para bloquear el acceso Telnet desde un grupo de red determinado y restringir todo el intervalo de tiempo que incluso los usuarios autorizados pueden ingresar:
En este ejemplo, cuando el sistema de cliente de una red
172.16.45.0/24 tal como 172.16.45.2, intenta acceder al servicio Telnet, recibe el siguiente mensaje:
Conexión cerrada por un host externo
Conexión cerrada por un host externo
Además sus intentos de ingreso se registran en
/var/log/messages, así:
Sep 7 14:58:33 localhost xinetd[5285]: FAIL: telnet address from=172.16.45.107 Sep 7 14:58:33 localhost xinetd[5283]: START: telnet pid=5285 from=172.16.45.107 Sep 7 14:58:33 localhost xinetd[5283]: EXIT: telnet status=0 pid=5285 duration=0(sec)
Sep 7 14:58:33 localhost xinetd[5285]: FAIL: telnet address from=172.16.45.107
Sep 7 14:58:33 localhost xinetd[5283]: START: telnet pid=5285 from=172.16.45.107
Sep 7 14:58:33 localhost xinetd[5283]: EXIT: telnet status=0 pid=5285 duration=0(sec)
Al usar las envolturas TCP junto con los controles de acceso de
xinetd, es importante entender la relación entre los dos mecanismos de control de acceso.
La siguiente es la secuencia de eventos seguidos por
xinetd cuando el cliente solicita una conexión:
- El demonio
xinetdaccede a las reglas de acceso de las envolturas TCP mediante una llamada de bibliotecalibwrap.a. Si una regla de negación coincide con el cliente, la conexión se descartará. Si una regla de permiso coincide con el cliente, la conexión pasará axinetd. - El demonio
xinetdverifica sus propias reglas de acceso tanto para el servicioxinetdcomo para el servicio solicitado. Si una regla de negación coincide con el cliente, la conexión se descartará. De lo contrario,xinetdiniciará una instancia del servicio solicitado y pasará control de la conexión de ese servicio.
Importante
Se debe tener cuidado al usar los controles de acceso de las envolturas TCP junto con los controles de acceso
xinetd. Si no se configuran correctamente pueden ocasionar efectos indeseables.