Installazione Server · 5 min read · Dec 18, 2025

Il Server Perfetto - Debian Squeeze (Debian 6.0) Con BIND & Dovecot [ISPConfig 3] - Pagina 4

10 Installa Postfix, Dovecot, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils

Possiamo installare Postfix, Dovecot, Saslauthd, MySQL, phpMyAdmin, rkhunter e binutils con un singolo comando:

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d sudo 

Ti verranno poste le seguenti domande:

Tipo generale di configurazione della posta: <– Internet Site
Nome del sistema di posta: <– server1.example.com
Nuova password per l’utente MySQL “root”: <– yourrootsqlpassword
Ripeti la password per l’utente MySQL “root”: <– yourrootsqlpassword

Successivamente, apri le porte TLS/SSL e di invio in Postfix:

vi /etc/postfix/master.cf

Decommenta le sezioni di invio e smtps (lascia -o milter_macro_daemon_name=ORIGINATING poiché non ne abbiamo bisogno):

| [...] submission inet n - - - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject # -o milter_macro_daemon_name=ORIGINATING smtps inet n - - - - smtpd -o syslog_name=postfix/smtps -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject # -o milter_macro_daemon_name=ORIGINATING [...] |

Riavvia Postfix successivamente:

/etc/init.d/postfix restart

Vogliamo che MySQL ascolti su tutte le interfacce, non solo su localhost, quindi modifichiamo /etc/mysql/my.cnf e commentiamo la riga bind-address = 127.0.0.1:

vi /etc/mysql/my.cnf

| [...] # Invece di skip-networking, il predefinito ora è ascoltare solo su # localhost, che è più compatibile e non meno sicuro. #bind-address = 127.0.0.1 [...] |

Poi riavviamo MySQL:

/etc/init.d/mysql restart

Ora controlla che la rete sia abilitata. Esegui

netstat -tap | grep mysql

L’output dovrebbe apparire così:

root@server1:~# netstat -tap | grep mysql
tcp 0 0 :mysql :* LISTEN 10617/mysqld
root@server1:~#

11

Installa Amavisd-new, SpamAssassin e Clamav

Per installare amavisd-new, SpamAssassin e ClamAV, eseguiamo

apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

La configurazione di ISPConfig 3 utilizza amavisd che carica internamente la libreria del filtro SpamAssassin, quindi possiamo fermare SpamAssassin per liberare un po’ di RAM:

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove

12

Installa Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear e mcrypt

Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear e mcrypt possono essere installati come segue:

apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-curl php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby libapache2-mod-python libapache2-mod-perl2  

Vedrai le seguenti domande:

Server web da riconfigurare automaticamente: <– apache2
Configurare il database per phpmyadmin con dbconfig-common? <– No

Poi esegui il seguente comando per abilitare i moduli Apache suexec, rewrite, ssl, actions e include (più dav, dav_fs e auth_digest se vuoi usare WebDAV):

a2enmod suexec rewrite ssl actions include
a2enmod dav_fs dav auth_digest

Riavvia Apache successivamente:

/etc/init.d/apache2 restart

13 Installa PureFTPd e Quota

PureFTPd e quota possono essere installati con il seguente comando:

apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool

Modifica il file /etc/default/pure-ftpd-common…

vi /etc/default/pure-ftpd-common

… e assicurati che la modalità di avvio sia impostata su standalone e imposta VIRTUALCHROOT=true:

| [...] STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...] |

Modifica il file /etc/inetd.conf per impedire a inetd di provare a avviare ftp:

vi /etc/inetd.conf

Se c’è una riga che inizia con ftp stream tcp, commentala (se non c’è un tale file, va bene, e non devi modificare /etc/inetd.conf):

| [...] #:STANDARD: Questi sono servizi standard. #ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper [...] |

Se hai dovuto modificare /etc/inetd.conf, riavvia inetd ora:

/etc/init.d/openbsd-inetd restart  

Ora configuriamo PureFTPd per consentire sessioni FTP e TLS. FTP è un protocollo molto insicuro perché tutte le password e tutti i dati vengono trasferiti in chiaro. Utilizzando TLS, l’intera comunicazione può essere crittografata, rendendo così FTP molto più sicuro.

Se vuoi consentire sessioni FTP e TLS, esegui

echo 1 > /etc/pure-ftpd/conf/TLS

Per utilizzare TLS, dobbiamo creare un certificato SSL. Lo creo in /etc/ssl/private/, quindi creo prima quella directory:

mkdir -p /etc/ssl/private/

Successivamente, possiamo generare il certificato SSL come segue:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem 

Nome del Paese (codice di 2 lettere) [AU]: <– Inserisci il tuo Nome del Paese (es. “DE”).
Nome dello Stato o della Provincia (nome completo) [Some-State]: <– Inserisci il tuo Nome dello Stato o della Provincia.
Nome della Località (es. città) []: <– Inserisci la tua Città.
Nome dell’Organizzazione (es. azienda) [Internet Widgits Pty Ltd]: <– Inserisci il tuo Nome dell’Organizzazione (es. il nome della tua azienda).
Nome dell’Unità Organizzativa (es. sezione) []: <– Inserisci il tuo Nome dell’Unità Organizzativa (es. “Reparto IT”).
Nome Comune (es. IL TUO nome) []: <– Inserisci il Nome di Dominio Completo del sistema (es. “server1.example.com”).
Indirizzo Email []: <– Inserisci il tuo Indirizzo Email.

Cambia i permessi del certificato SSL:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Poi riavvia PureFTPd:

/etc/init.d/pure-ftpd-mysql restart

Modifica /etc/fstab. Il mio appare così (ho aggiunto,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 alla partizione con il punto di montaggio /):

vi /etc/fstab

| # /etc/fstab: informazioni statiche sul file system. # # Usa 'blkid' per stampare l'identificatore univoco universale per un # dispositivo; questo può essere utilizzato con UUID= come un modo più robusto per nominare dispositivi # che funziona anche se i dischi vengono aggiunti e rimossi. Vedi fstab(5). # # proc /proc proc defaults 0 0 # / era su /dev/sda1 durante l'installazione UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1 # swap era su /dev/sda5 durante l'installazione UUID=e24b3e9e-095c-4b49-af27-6363a4b7d094 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |

Per abilitare la quota, esegui questi comandi:

mount -o remount /

quotacheck -avugm
quotaon -avug

14 Installa il Server DNS BIND

BIND può essere installato come segue:

apt-get install bind9 dnsutils

15 Installa Vlogger, Webalizer e AWstats

Vlogger, webalizer e AWstats possono essere installati come segue:

apt-get install vlogger webalizer awstats geoip-database  

Apri /etc/cron.d/awstats successivamente…

vi /etc/cron.d/awstats

… e commenta entrambi i cron job in quel file:

| #*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh # Genera report statici: #10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh |

16 Installa Jailkit

Jailkit è necessario solo se vuoi chrootare gli utenti SSH. Può essere installato come segue (importante: Jailkit deve essere installato prima di ISPConfig - non può essere installato dopo!):

apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binary
cd ..
dpkg -i jailkit2.14-1.deb
rm -rf jailkit-2.14

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.