Capitolo 17. Wrapper TCP e xinetd
Il controllo dell'accesso ai servizi di rete � uno dei fattori che riguardanola sicurezza pi� importanti che un amministratore possa incontrare. Fortunatamente, con Red Hat Enterprise Linux sono disponibili un numero di tool creati appositamente per questo. Per esempio, un firewall basato su iptables filtra i pacchetti di rete non desiderati all'interno dello stack di rete del kernel. Per i servizi di rete che lo utilizzano, i wrapper TCP aggiungono un livello di protezione, definendo quale host pu� collegarsi ai servizi di rete "wrapped". Uno dei servizi di questo tipo � il super server xinetd. Questo servizio � chiamato super server perch� controlla le connessioni per un sottogruppo di servizi di rete, e garantisce un controllo di accesso pi� accurato.
Figura 17-1 rappresenta una illustrazione basica di come questi tool lavorano insieme per proteggere i servizi di rete.
Questo capitolo si sofferma sul ruolo dei wrapper TCP e xinetd nel controllo dell'accesso ai servizi di rete, indicando l'uso migliore dei tool per facilitare la gestione sia nel procedimento di logging che nella sua gestione. Per una discussione sull'uso del firewall con iptables, consultare Capitolo 18.
17.1. Wrapper TCP
Il pacchetto dei wrapper TCP (tcp_wrappers) viene installato per default e fornisce un controllo d'accesso basato su di un host per i servizi di rete. Il componente pi� importante all'interno del pacchetto � la libreria /usr/lib/libwrap.a. In termini generali, un servizio wrapped TCP � stato compilato usando la libreria libwrap.a.
Quando si tenta il collegamento ad un servizio wrapped TCP, il servizio prima si riferisce ai file hosts access (/etc/hosts.allow e /etc/hosts.deny) per determinare se l'host del client � abilitato al collegamento. In molti casi, il servizio usa il demone syslog (syslogd) per scrivere il nome dell'host richiedente e del servizio richiesto su /var/log/secure o /var/log/messages.
Se un client host � abilitato al collegamento, i wrapper TCP permettono il controllo della connessione al servizio richiesto non interferendo con la comunicazione tra il client host ed il server.
In aggiunta a quanto finora detto, i wrapper TCP possono attivare i comandi per interagire con il client prima di rifiutare o permettere il controllo della connessione al servizio di rete richiesto.
Poich� i wrapper TCP rappresentano un'aggiunta molto importante per i tool di sicurezza di un amministratore del server, molti servizi di rete all'interno di Red Hat Enterprise Linux sono collegati alla libreria libwrap.a. Alcune applicazioni includono /usr/sbin/sshd, /usr/sbin/sendmail, e /usr/sbin/xinetd.
| Nota Bene |
---|
| Per determinare se un servizio di rete binario � collegato alla libreria libwrap.a, digitare il seguente comando come utente root: strings -f <binary-name> | grep hosts_access |
Sostituire <nome-binario> con il nome del binario del servizio di rete. Se viene ritornato un prompt, allora il servizio di rete non � collegato a libwrap.a. |
17.1.1. Vantaggi dei Wrapper TCP
I wrapper TCP forniscono i seguenti vantaggi rispetto alle altre techniche di controllo dei servizi di rete:
Transparenza sia per il client host sia per il servizio di rete wrapped 'inglobato'. — Sia il client che si collega che il servizio di rete wrapped non sono a conoscenza dell'uso dei wrapper TCP. Gli utenti abilitati non si accorgeranno di niente, mentre coloro che non sono abilitati non riusciranno a collegarsi.
Gestione centralizzata dei protocolli multipli. — I wrapper TCP funzionano indipendentemente dai servizi di rete da loro protetti, in questo modo, molte applicazioni possono condividere un insieme comune di file di configurazione semplificandone cos� la gestione.