Il Network File System o NFS è un servizio RPC usato insieme con portmap e altri servizi, per fornire dei filesystem accessibili dalla rete da parte delle macchine dei client. Per maggiori informazioni sul funzionamento di NFS, consultate il capitolo Network File System (NFS) nella Red Hat Enterprise Linux Reference Guide. Per maggiori informazioni su come configurare NFS, consultate Red Hat Enterprise Linux System Administration Guide. Le seguenti sezioni presumono una conoscenza di base di NFS.
![]() | Importante |
---|---|
È consigliabile, prima di implementare un server NFS, rendere sicuro il servizio portmap, come riportato nella Sezione 5.2, prima di accuparsi dei seguenti problemi. |
A causa del passaggio di tutte le informazioni in chiaro da parte di NFS, è importante l'uso di firewall su di una rete segmentata e sicura, durante l'esecuzione di un servizio. Ogni qualvolta si passano delle informazioni tramite NFS, su di una rete insicura, vi è il pericolo che esse vengano intercettate. Una progettazione accurata della rete, aiuta la prevenzione sulle violazioni della sicurezza.
Il server NFS determina quali sono i file system da esportare e a quali host bisogna esportare queste directory usando il file /etc/exports. Fate attenzione a non aggiungere degli spazi estranei durante la modifica di questo file.
Per esempio, la seguente riga nel file /etc/exports, condivide la directory /tmp/nfs/ per l'host bob.example.com con i permessi di sola lettura e scrittura.
/tmp/nfs/ bob.example.com(rw) |
Questa riga nel file /etc/exports, condivide la stessa directory per l'host bob.example.com con permessi di sola lettura, e la condivide con il resto del mondo con i permessi di sola lettura e scrittura a causa di uno spazio dopo l'hostname.
/tmp/nfs/ bob.example.com (rw) |
È sempre consigliabile controllare qualsiasi condivisione NFS configurata, usando il comando showmount per verificare cosa è stato condiviso:
showmount -e <hostname> |
Per default, le condivisioni NFS cambiano l'utente root in utente nfsnobody, un account dell'utente non privileggiato. Altresì tutti i file creati dall'utente root, sono posseduti dall'utente nfsnobody, questo evita il sovraccarico dei programmi con l'impostazione setuid bit.
Se si usa no_root_squash, gli utenti root remoti saranno in grado di cambiare qualsiasi file presente sul file system condiviso, lasciando le applicazioni soggette ad attacchi di tipo trojan ad altri utenti che le useranno inavvertitamente.