Manuale di FreeBSD
Indietro | Capitolo 11 Configurazione e Messa a Punto | Avanti

# 11.10 File di Configurazione

## 11.10.1 Struttura di `/etc`

Ci sono molte directory nelle quali vengono tenute le informazioni di configurazione. Tra queste ci sono:

`/etc` | Informazioni generiche sulla configurazione del sistema; questi dati sono specifici del sistema.
`/etc/defaults` | Versioni di default dei file di configurazione del sistema.
`/etc/mail` | Configurazioni extra di sendmail(8), o file di configurazione di altri MTA.
`/etc/ppp` | Configurazione ppp sia per i programmi a livello utente che a livello kernel.
`/etc/namedb` | Posizione predefinita per i dati di named(8). Normalmente qui si trova `named.conf` insieme ai file di zona.
`/usr/local/etc` | File di configurazione per le applicazioni installate. Può contenere sottodirectory.
`/usr/local/etc/rc.d` | Script start/stop per i programmi installati.
`/var/db` | File di dati specifici del sistema generati automaticamente, come il database dei package, il database di locate, e così via.

## 11.10.2 Nomi degli Host

### 11.10.2.1 `/etc/resolv.conf`

`/etc/resolv.conf` detta il modo in cui il sistema di risoluzione dei nomi di FreeBSD accede al DNS (Internet Domain Name System).

I campi più comuni in `resolv.conf` sono:

`nameserver` | L'indirizzo IP di un name server al quale dovrà rivolgersi il sistema di risoluzione. I server vengono interrogati nell'ordine in cui sono elencati, fino a un massimo di tre.
`search` | Lista di ricerca per i nomi degli host. Normalmente questo viene determinato dal dominio dell'host locale.
`domain` | Il nome del dominio locale.

Un `resolv.conf` tipico:

    search example.com
    nameserver 147.11.1.11
    nameserver 147.11.100.30

> Nota: Si dovrebbe usare solo una tra le due opzioni `search` e `domain`.

Se stai usando DHCP, dhclient(8) generalmente sovrascriverà `resolv.conf` con le informazioni ricevute dal server DHCP.

### 11.10.2.2 `/etc/hosts`

`/etc/hosts` è un semplice database testuale, reminiscenza della vecchia rete Internet. Esso lavora in congiunzione con DNS e NIS fornendo una mappatura da nome a indirizzo IP. Computer locali connessi ad una LAN possono essere messi in questo file per una gestione semplice dei nomi, invece di mettere su un server named(8). Inoltre, `/etc/hosts` può essere usato per fornire un registro locale dei nomi di Internet, riducendo la necessità di effettuare richieste esternamente per i nomi ad accesso frequente.

    # $FreeBSD$
    #
    # Host Database
    # Questo file dovrebbe contenere gli indirizzi e gli alias
    # per gli host locali che condividono questo file.
    # In presenza di DNS o NIS, questo file potrebbe non essere consultato affatto;
    # guarda /etc/nsswitch.conf per l'ordine di risoluzione.
    #
    #
    ::1                     localhost localhost.my.domain myname.my.domain
    127.0.0.1               localhost localhost.my.domain myname.my.domain

    #
    # Rete immaginaria.
    #10.0.0.2               myname.my.domain myname
    #10.0.0.3               myfriend.my.domain myfriend
    #
    # In accordo all'RFC 1918, puoi usare le seguenti classi di IP per reti private
    # che non verranno mai connesse ad Internet:
    #
    #       10.0.0.0        -   10.255.255.255
    #       172.16.0.0      -   172.31.255.255
    #       192.168.0.0     -   192.168.255.255
    #
    # In caso volessi essere in grado di collegarti ad Internet, avrai bisogno
    # di veri numeri ufficiali assegnati.  PER FAVORE PER FAVORE PER FAVORE
    # non tentare di inventarti i numeri della tua rete ma fattene assegnare
    # uno dal tuo provider (se ne hai uno) o dall'Internet Registry (ftp su
    # rs.internic.net, directory `/templates').
    #

`/etc/hosts` accetta il semplicissimo formato:

    [Indirizzo Internet ] [nome host ufficiale] [alias1] [alias2] ...

Ad esempio:

    10.0.0.1 myRealHostname.example.com myRealHostname foobar1 foobar2

Consulta hosts(5) per maggiori informazioni.

## 11.10.3 Configurazione dei File di Log

### 11.10.3.1 `syslog.conf`

`syslog.conf` è il file di configurazione per il programma syslogd(8). Indica quale tipo di messaggi `syslog` verranno scritti su ogni file di log.

    # $FreeBSD$
    #
    #       Gli spazi SONO validi separatori dei campi in questo file. Ad ogni modo,
    #       altri sistemi *nix-like insistono ancora nell'usare tab come separatori
    #       di campo. Se condividi questo file tra più sistemi, potresti
    #       voler usare solo dei tab come separatori.
    #       Consulta la pagina man di syslog.conf(5).
    *.err;kern.debug;auth.notice;mail.crit          /dev/console
    *.notice;kern.debug;lpr.info;mail.crit;news.err /var/log/messages
    security.*                                      /var/log/security
    mail.info                                       /var/log/maillog
    lpr.info                                        /var/log/lpd-errs
    cron.*                                          /var/log/cron
    *.err                                           root
    *.notice;news.err                               root
    *.alert                                         root
    *.emerg                                         *
    # togli il commento a questo per loggare tutte le scritture su /dev/console
    # in /var/log/console.log
    #console.info                                   /var/log/console.log
    # togli il commento a questo per abilitare il logging di tutti i messaggi di log
    # su /var/log/all.log
    #*.*                                            /var/log/all.log
    # togli il commento a questo per abilitare il logging su un host remoto di nome
    # loghost
    #*.*                                            @loghost
    # togli i commenti a questi se hai inn in funzione
    # news.crit                                     /var/log/news/news.crit
    # news.err                                      /var/log/news/news.err
    # news.notice                                   /var/log/news/news.notice
    !startslip
    *.*                                             /var/log/slip.log
    !ppp
    *.*                                             /var/log/ppp.log

Consulta la pagina man di syslog.conf(5) per maggiori informazioni.

### 11.10.3.2 `newsyslog.conf`

`newsyslog.conf` è il file di configurazione di newsyslog(8), un programma che normalmente viene eseguito da cron(8). newsyslog(8) determina quando i file di log richiedono un'archiviazione o un riordinamento. `logfile` viene rinominato in `logfile.0`, `logfile.0` in `logfile.1` e così via. Alternativamente, i file potranno essere archiviati in formato gzip(1), e quindi diventeranno: `logfile.0.gz`, `logfile.1.gz`, e così via.

`newsyslog.conf` indica quali file di log devono essere gestiti, quanti devono essere mantenuti, e quando devono essere toccati. I file di log possono essere riordinati e/o archiviati quando raggiungono una certa dimensione, o a una certa data/ora periodica.

    # file di configurazione per newsyslog
    # $FreeBSD$
    #
    # filename          [owner:group]    mode count size when [ZB] [/pid_file] [sig_num]
    /var/log/cron                           600  3     100  *     Z
    /var/log/amd.log                        644  7     100  *     Z
    /var/log/kerberos.log                   644  7     100  *     Z
    /var/log/lpd-errs                       644  7     100  *     Z
    /var/log/maillog                        644  7     *    @T00  Z
    /var/log/sendmail.st                    644  10    *    168   B
    /var/log/messages                       644  5     100  *     Z
    /var/log/all.log                        600  7     *    @T00  Z
    /var/log/slip.log                       600  3     100  *     Z
    /var/log/ppp.log                        600  3     100  *     Z
    /var/log/security                       600  10    100  *     Z
    /var/log/wtmp                           644  3     *    @01T05 B
    /var/log/daily.log                      640  7     *    @T00  Z
    /var/log/weekly.log                     640  5     1    $W6D0 Z
    /var/log/monthly.log                    640  12    *    $M1D0 Z
    /var/log/console.log                    640  5     100  *     Z

Consulta la pagina man di newsyslog(8) per maggiori informazioni.

## 11.10.4 `sysctl.conf`

`sysctl.conf` assomiglia molto a `rc.conf`. I valori vengono impostati nella forma `variabile=valore`. I valori specificati vengono impostati dopo che il sistema è entrato in modalità multiutente. Non tutte le variabili sono gestibili in questo modo.

Per disabilitare il log sulle uscite dei processi per segnale fatale ed impedire agli utenti di vedere che i processi sono avviati con altre utenze, puoi settare in `sysctl.conf` la riga seguente:

    # Do not log fatal signal exits (e.g. sig 11)
    kern.logsigexit=0

    # Prevent users from seeing information about processes that
    # are being run under another UID.
    security.bsd.see_other_uids=0

Indietro | Partenza | Avanti
Host Virtuali | Risali | Messa a Punto con sysctl

Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.