SMsoft – informatica e dintorni

varie su OSX, GNU/Linux e l'Open Source

Mettere in sicurezza /tmp , /var/tmp e /dev/shm su Gnu/Linux

Una cosa che consiglio vivamente di fare nel caso un cui abbiate una LinuxBox pubblica (soprattutto con un servizio web attivo) è la messa in sicurezza delle cartelle /tmp, /var/tmp e /dev/shm in modo da non permettere l’esecuzione di script binari (che solitamente contengono exploit) eventualmente caricati tramite uno script presenti nel server web.

La procedura è semplice: si crea un file che poi formatteremo ed utilizzeremo come filesystem per /tmp

Faccio una copia del file fstab

# cp /etc/fstab /etc/fstab.bak

Creo e formatto il file (nel mio caso da 500MB circa)

# cd /var
# dd if=/dev/zero of=/var/tmpFS bs=1024 count=500000
# mkfs.ext3 -j /var/tmpFS

Faccio un backup della cartella /tmp

# cp -R /tmp /tmp_backup

Monto /tmp

# mount -o loop,noexec,nosuid,rw /var/tmpFS /tmp

Sistemo i permessi di /tmp

# chmod 1777 /tmp

Riporto il precedente contenuto di /tmp

# cp -R /tmp_backup/* /tmp/
# rm -rf /tmp_backup

Aggiungo nel files fstab la entry per  /tmp

# echo "/var/tmpFS /tmp ext3 loop,rw,noexec,nosuid,nodev 0 0" >> /etc/fstab

Ora non sarà più possibile eseguire script dalla cartella /tmp e procedo a sistemare la cartella /var/tmp:

# cp /var/tmp/* /tmp/ -rdap
# rm -fr /var/tmp_old/
# ln -s /tmp/ /var/tmp

Per terminare sistemiamo anche /dev/shm, aggiungendo (o modificando se già esiste), la seguente riga in /etc/fstab:

# echo "none /dev/shm tmpfs defaults,nosuid,noexec,rw 0 0" >> /etc/fstab


Nota: L’amico popix ha segnalato nei commenti un fastidioso messaggio di errore che viene visualizzato durante l’installazione di alcuni pacchetti che tentano di scrivere nella tmp. Consiglio quindi di completare il tutto con quanto scritto nel commento #2

Page optimized by WP Minify WordPress Plugin