5.5. Meta-demone Inet

Inetd è ancora un altro concetto interessante ma richiede prima una piccola introduzione generale.

Come si può o meno sapere, i demoni (o server) di Unix accettano richieste dei client e quindi fanno qualcosa di utile restando in ascolto su porte specifiche in attesa di connessioni in ingresso. Esempi tipici sono server telnet, FTP o WWW che girano sulle porte 23, 21 e 80 rispettivamente. Quando arriva la connessione client, il processo demone viene biforcato (o "duplicato", in parole povere), si connette a una porta alta (sopra la 1024) e stabilisce una connessione diretta con il client. Esso inizia allora a gestire la richiesta del client e a scambiare dati avanti e indietro, tutto indipendentemente dalla porta iniziale di ascolto (la porta in ascolto viene resa immediatamente e nuovamente disponibile per continuare ad attendere nuove connessioni).

Seguendo la suddetta logica, divenne importante avere un server specializzato che restasse in ascolto esclusivamente di connessioni dai client e poi biforcasse il demone appropriato per gestire le attuali richieste. Il risultato è il meta-demone Inet.

Inetd, tuttavia, non possiede una brillante fama in termini di sicurezza ed è diventato poco flessibile e troppo lento per gli standard attuali. In aggiunta, Inet necessitava del supporto non-trasparente in qualsiasi programma server, così non ci si meravigli che esso lentamente sia sparito dai computer Unix convenzionali.

Ma noi menzioneremo comunque qui Inetd per numerose ragioni; esso è un'importante parte di Unix; è ancora utile per applicazioni particolari e può essere facilmente dimenticato quando si sta provando ad aumentare in modo globale la sicurezza di rete del proprio sistema.

Ci sono alcune implementazioni di Inetd, ma quella predefinita utilizzata da Debian GNU è la variante NetKit. Il suo file di configurazione è /etc/inetd.conf e si dovrebbero disabilitare tutti i servizi non necessari in esso, probabilmente tutti quelli che ci sono, e richiamare il solito /etc/init.d/inetd reload.

Oggigiorno, il demone Inetd predefinito in Debian è openbsd-inetd. Il file di configurazione è lo stesso, ma lo script di init è ora chiamato /etc/inet.d/openbsd-inetd.