Nei sistemi Linux, la directory /etc/ contiene tutti i file di configurazione più importanti.
Oggi vorrei approfondire l'utilizzo di due file che regolano il meccanismo di controllo degli accessi.
Sto parlando di host.allow e di host.deny che, come indicano i loro nomi, controllano quali macchine e reti client possano accedere ai servizi erogati dalla macchina linux in questione.
Il meccanismo di controllo di cui stiamo parlando si chiama TCP wrappers, scritto da Wietsa Venema, forse più conosciuto per aver scritto il sistema Postfix.
La logica dei due files viene riassunta nel seguente schema:

Quindi il sistema legge il file host.allow prima di leggere host.deny: se uno dei due files non esiste, è come se fosse vuoto.
In genere allora quello che si fa è negare tutti gli accessi in host.deny e consentire solo quelli voluti in host.allow.
SINTASSI.
Come al solito righe vuote e tutto quello che segue un # viene ignorato, ogni riga poi ha la forma:
lista dei server: lista dei client : [comando shell]
Ad esempio, se metto
ALL: ALL
nell'host.allow, significa far passare tutto, nell'host.deny significa da quel punto in poi rifiutare tutte le connessioni.
Un ulteriore esempio, più significativo del precedente, che consente l'accesso ad ssh, ma blocca tutto il resto eccetto in locale, è quello del contenuto di host.allow riportato di seguito:
sshd: ALL portmap: 127.0.0.1 leafnode: 127.0.0.1
Nell'esempio indicato si sono indicati tre servizi, il primo è la secure shell, che permetti un collegamento sicuro da remoto, che è gestita come server dal programma sshd; il secondo è un servizio di sistema, il terzo è un programma che permette di tenere un servere di news in locale (a scopo di caching).
Nella lista dei client si indicano invece gli IP o le reti a cui si vuole consentire l'accesso. Per le reti in genere si usa la notazione sia numerica che alfabetica, e si può usare una * come wildcard per raggruppare indirizzi; si può anche specificare una netmask con un indirizzo de tipo:
81.155.72.0/255.255.255.0
e specificare la lista degli indirizzi usando un file dando il pathname completo.

Autore: