Ridurre i servizi Debian

Come avere una Debian con i soli servizi che ci servono

Autore: P|pex --

Copyright © 2003 -- $Revision: 0.5 $ -- $Date: 2003/10/07 $

Spesso dopo aver installato diversi demoni sulla nostra
distribuzione Linux, non ci preoccupiamo di disabilitare quelli non
necessari o che usiamo raramente. Per avere un sistema veloce e senza
sprechi di memoria e risorse, dobbiamo rimuovere cio` di cui non
abbiamo bisogno.

Contenuti

Perchè ho tanti servizi installati e chi li avvia?

I servizi sono alcuni programmi eseguiti in background,
cioè che non richiedono l'iterazione dell'utente.
Nell'installazione di default sicuramente verranno installati diversi
demoni come klogd, che si occupa dei log di sistema, apmd per la
gestione del risparmio energetico del pc, gdm o kdm se abbiamo scelto
un login grafico e tanti altri.

Inoltre quando installiamo un nuovo programma come samba, verranno
copiati alcuni script e avviati i servizi (nmbd, smbd e swat); se
non ci interessa sempre condividere cartelle con altri utenti e/o utilizzare
l'interfaccia web Swat, dovremo disabilitare tali servizi. Al prossimo
riavvio del pc, vedremo l'avvio di tali servizi.

Debian utilizza il SystemV per quanto riguarda la gestione dell'avvio
del sistema operativo; gli script di avvio sono presenti nelle
directory:

/etc/rcX.d/SYYservizio

a seconda del run-level X varierà da 1 a 6 e YY indica la sequenza di avvio.

I servizi che abbiamo installato sono tutti presenti in:

/etc/init.d/servizio

Solitamente gli script contenuti in /etc/init.d/ accettano alcuni parametri di esecuzione; ad esempio Apache:

/etc/init.d/apache start
/etc/init.d/apache stop
/etc/init.d/apache status

permettono di avviare, fermare e controllare lo stato del servizio.

Individuare i servizi attivi

Cerchiamo di capire quelli che sono in esecuzione e quali potremmo rimuovere.

A seconda del vostro grado di conoscenza, potreste conoscere tutti o
parte dei servizi: consiglio di richiamare i manuali dei vari programmi
per capire cosa fa: il buon man ci viene in aiuto.

Iniziamo con il seguente comando che elenca tutti i processi attivi:

# ps faux | less

Analizziamo l'elenco dei servizi attivi ed appuntiamoci quelli che non
desideriamo avviare.

Possiamo anche usare netstat per trovare il servizio e la porta tcp/udp utilizzata:

# netstat -polenta
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     0          3747       1835/apache         off (0.00/0/0)
#

La porta 80 quasi tutti sanno che e utilizzata dal server web, ma se fosse stata la 139 o la 5900?

Fuser ci dice quale e il processo associato ad una determinata
porta; eseguiamo quindi il comando

# fuser -n tcp 80

stiamo interrogando il nostro sistema per sapere quale processo e attivo sulla porta 80 di tipo tcp.

L'output del comando e un numero: questo indica il numero di processo. Per sapere a chi appartiene ricorriamo a ps.

# ps aux | grep 683

vedremo ora che il processo viene attivato dal programma apache.

Disabilitare i servizi

Debian mette a disposizione il tool update-rc.d per la gestione dei
servizi. Questo programma gestisce l'aggiunta o la rimozione degli script di
avvio contenuti in /etc/rcX.d/.

Per rimuovere utilizziamo il seguente comando:

# update-rc.d -f apache remove

Alcuni servizi, come SMTP, POP3, SWAT sono gestiti dal super-processo
inetd o xinetd. IL file di configurazione di questo servizio è
/etc/inetd.conf che contiene l'elenco dei servizi da avviare.

Anche qui Debian ci viene in aiuto con un tool fatto appositamente per
abilitare o rimuovere i servizi figli di inetd; utilizziamo update-inetd per rimuovere swat:

# update-inetd --disable swat

Di solito nelle installazioni base vengono installati anche discard,
daytime, time... rimuoviamo questi servizi con update-inetd e con
l'elenco di tutti i servizi separati dalla virgola

# update-inetd --disable discard,daytime,time

Ora abbiamo rimosso i servizi non necessari; è bene ricordare che
questi sono ancora attivi, dato che abbiamo tolto gli script, ma non
abbiamo ancora fermato i servizi. Se si vuole farlo subito si deve
richiamare lo script con il parametro stop.

# /etc/init.d/apache stop

Conclusioni

Saper amministrare e gestire la propria LinuxBox permette di ottimizzare il nostro sistema operativo open source: grazie Linux!!!!

Note & bibliografia

Un grazie a tutta la `comunità` debian italiana

L'autore può essere contattato al seguente indirizzo: gianm at despammed dot com

  1. Debian Mailing List