Ci sono così tante cose da fare e così poco tempo! Ecco che inizia il divertimento. Questa sezione è dedicata alla rete, anche se molti altri task vi aspettano.
La rete è un argomento talmente vasto che non può essere trattato esaurientemente qui. Dovete fare riferimento al NET-3 HOWTO e alla documentazione sulle impostazioni dei servizi di rete della maggior parte delle distribuzioni. In questo caso verranno trattati solo pochi punti.
Ecco un breve elenco di servizi che potreste installare: attività cronologiche e sincronizzate, quali calendari o promemoria, Http, Samba, accesso telnet/ssh, ftp anonimo, server POP/IMAP, servizi NFS...
Anche se il metodo vero e proprio per avviare i servizi di rete della distribuzione può essere molto più complesso, lo script che segue dovrebbe essere sufficiente perché possiate iniziare:
#!/bin/sh
# net-up.sh: imposta l'accesso di rete
DEVICE=eth0
IPADDR=192.168.1.100
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.1
ifconfig $DEVICE $IPADDR netmask $NETMASK up
route add -net $NETWORK netmask $NETMASK $DEVICE
route add default gw $GATEWAY
Questo script è utile per attivare l'accesso di rete quando utilizzate un disco di ripristino. Ovviamente, questo consente solo l'utilizzo di ping, ftp e telnet verso l'esterno.
Si tratta di uno dei task più utili per un server Linux. Attualmente, la maggior parte dei kernel di stock dispongono del firewall IP, di masquerade e di invio attivati per default. Se avete dei dubbi, consultate IP-Masquerade mini-HOWTO per apprendere come abilitarli. Installate quindi ipfwadm (kernel 2.0.x; http://www.xos.nl/linux/ipfwadm/) o ipchains (kernel 2.2.x; http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html). Non dimenticate di attivare i moduli dei kernel per i servizi necessari, ad esempio per ftp verrà aggiunta questa linea a /etc/rc.d/rc.sysconfig:
/sbin/modprobe ip_masq_ftp
Altri moduli sono in genere disponibili in /lib/modules/KERNEL-VERSION/ipv4.
L'attivazione del masquerade IP per altre macchine della rete locale è
molto semplice. Innanzitutto, controllate gli script di inizializzazione della rete
(/etc/sysconfig/network dovrebbe essere la collocazione corrette) per comprendere
se contengono la linea FORWARD_IPV4=true
. Viene utilizzata per impostare
/proc/sys/net/ipv4/ip_forward a 1 quando il sottosistema di rete
viene attivato.
Aggiungete queste linee a /etc/rc.d/rc.sysinit:
# default: i pacchetti non possono raggiungere l'esterno
/sbin/ipfwadm -F -p deny
# consente a tutte le macchina della rete locale di raggiungere Internet
/sbin/ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
# in alternativa, lo consente solo a queste due macchine
# /sbin/ipfwadm -F -a m -S 192.168.1.100/24 -D 0.0.0.0/0
# /sbin/ipfwadm -F -a m -S 192.168.1.101/24 -D 0.0.0.0/0
Se utilizzate un kernel della serie 2.2.x, servitevi di ipfwadm-wrapper
invece di ipfwadm
per iniziare in modo rapido.
Ora dovete disporre di qualcosa che consenta alle macchine client di contattare il provider. Io utilizzo Mserver ( http://cpwright.villagenet.com/mserver/). Modificate etc/mserver.conf; le uniche voci che dovrete modificare sono ``checkhost'', ``shadow'' e ``cname''. Definite quindi le connessioni. Ovviamente, installate uno dei client disponibili sulle macchine client.
Supponiamo di connetterci a Internet tramite il protocollo PPP. Dopo esserci connessi, la macchina può diventare vulnerabile agli attacchi. Inserite questa linea in /etc/hosts.allow:
# consente l'accesso solo al localhost
ALL: 127.
e questa linea in /etc/hosts.deny:
# nega l'accesso a tutti
ALL: ALL
Se siete in una rete con accesso diretto a Internet, fareste meglio
a disabilitare finger, telnet e possibilmente gli altri servizi per motivi di sicurezza.
Utilizzate ssh
invece di telnet. Il file da modificare è
/etc/inet.conf. In alternativa, potete limitare l'accesso di rete
immettendo questa linea in /etc/hosts.allow:
in.telnetd: 192.168.1., .another.trusted.network
in.ftpd: 192.168.1., .another.trusted.network
e questa in /etc/hosts.deny:
in.telnetd: ALL
in.ftpd: ALL
È cosa comune esportare le directory principali sul server. Si pone un problema
se UID e GID non sono coerenti in macchine diverse.
Se l'utente guido dispone di UID/GID uguali a 500 su server
e UID/GID
uguali a 512 su client
, una configurazione utile può essere:
# /etc/exports
/tmp my.client.machine(rw)
/home/guido my.client.machine(rw,map_static=/etc/nfs/client.map)
In /etc/nfs/client.map verrà inserita:
# /etc/nfs/client.map
# NFS mapping for client
# remote local
uid 512 500
gid 512 500
Non ancora disponibile.