Product SiteDocumentation Site

9.6. El superservidor inetd

Inetd (frecuentemente llamado «superservidor de internet») es un servidor de servidores. Ejecuta a pedido servidores rara vez utilizados para que no tengan que ejecutar continuamente.
El archivo /etc/inetd.conf enumera estos servidores y sus puertos usuales. El programa inetd escucha en todos estos puertos y cuando detecta una conexión a uno de ellos ejecuta el programa servidor correspondiente.
Cada línea significativa del archivo /etc/inetd.conf describe un servidor con siete campos (separados con espacios):
El ejemplo a continuación ilustra los casos más comunes:

Ejemplo 9.1. Extracto de /etc/inetd.conf

talk   dgram  udp wait    nobody.tty /usr/sbin/in.talkd in.talkd
finger stream tcp nowait  nobody     /usr/sbin/tcpd     in.fingerd
ident  stream tcp nowait  nobody     /usr/sbin/identd   identd -i
Frecuentemente se utiliza el programa tcpd en el archivo /etc/inetd.conf. Permite limitar las conexiones entrantes aplicando reglas de control de acceso, documentadas en la página de manual hosts_access(5), y que puede configurar en los archivos /etc/hosts.allow y /etc/hosts.deny. Una vez que se determinó que la conexión está autorizada, tcpd ejecuta el servidor real (en el ejemplo: in.fingerd). Vale la pena aclarar que tcpd necesita el nombre con el que se lo invoca (que es el primer parámetro: argv[0]) para identificar el programa real a ejecutar. No debería iniciar la lista de parámetros con tcpd sino con el programa subyacente.