/etc/inetd.conf
llista aquests servidors i els seus ports habituals. L'ordre inetd
escolta en tots aquests ports; quan detecta una connexió a qualsevol port d'aquest tipus, executa el corresponent programa de servidor.
/etc/inetd.conf
descriu un servidor a través de set camps (separats per espais):
/etc/services
).
stream
per a connexió TCP, dgram
per a datagrames UDP.
tcp
, tcp6
, udp
, o udp6
.
wait
o nowait
, per indicar a inetd
si ha d'esperar que acabi o no el procés iniciat abans d'acceptar una altra connexió. Per a les connexions TCP, fàcilment multiplexable, normalment es pot utilitzar nowait
. Per als programes que responen sobre UDP, hauríeu d'utilitzar nowait
només si el servidor és capaç de gestionar diverses connexions en paral·lel. Podeu afixar aquest camp amb un punt, seguit pel nombre màxim de connexions autoritzades per minut (el límit per defecte és 256).
user.group
.
argv[0]
en C).
Exemple 9.1. Extracte de /etc/inetd.conf
#:BSD: Shell, login, exec and talk are BSD protocols. talk dgram udp wait nobody.tty /usr/sbin/in.talkd in.talkd ntalk dgram udp wait nobody.tty /usr/sbin/in.ntalkd in.ntalkd #:INFO: Info services ident stream tcp nowait nobody /usr/sbin/nullidentd nullidentd finger stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/in.fingerd
tcpd
s'utilitza amb freqüència al fitxer /etc/inetd.conf
. Permet limitar les connexions entrants aplicant les regles de control d'accés, documentades a la pàgina del manual hosts_access(5) i que estan configurades als fitxers /etc/hosts.allow
i /etc/hosts.deny
. Un cop s'ha determinat que la connexió està autoritzada, tcpd
executa el servidor real (com ara in.fingerd
en el nostre exemple). Cal assenyalar que tcpd
es basa en el nom sota el qual s'ha invocat (és a dir, el primer paràmetre argv[0]
per identificar el programa real a executar. Per tant no hauríeu d'iniciar la llista de paràmetres amb tcpd
sinó amb el programa que s'ha de cridar.