Linux: host.allow e host.deny

29 Luglio 2012
(3 Voti)

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:

host


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.

 

 

Fabio Caniggia

Artista Marziale, Blogger e Consulente Informatico.
Per il resto, "Chi sono io" è la domanda esistenziale – il koan – per eccellenza e non posso certo rispondervi in 2 righe !

Fabio CaniggiaAutore: Fabio Caniggia
Artista Marziale, Blogger e Consulente Informatico.
Per il resto, "Chi sono io" è la domanda esistenziale – il koan – per eccellenza e non posso certo rispondervi in 2 righe !

Questo sito utilizza cookie, anche di terze parti, per migliorare la tua esperienza e offrire servizi in linea con le tue preferenze.
Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.
Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie vai alla sezione privacy facendo click sul pulsante "DETTAGLI"