Installazione Server · 5 min read · Feb 04, 2026

Il Server Perfetto - Ubuntu 9.10 [ISPConfig 3] - Pagina 4

12 Installa Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

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

aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils

Ti verranno poste le seguenti domande:

Nuova password per l’utente MySQL “root”: <– yourrootsqlpassword
Ripeti la password per l’utente MySQL “root”: <– yourrootsqlpassword
Creare directory per l’amministrazione basata sul web? <– No
Tipo generale di configurazione della posta: <– Internet Site
Nome del sistema di posta: <– server1.example.com
Certificato SSL richiesto <– Ok

Successivamente installiamo maildrop come segue:

update-alternatives --remove-all maildir.5  
 update-alternatives --remove-all maildirquota.7
aptitude install maildrop

Ti chiederai perché non abbiamo installato maildrop insieme a tutti gli altri pacchetti. Il motivo è un bug nel pacchetto courier-base - se installi maildrop insieme a courier-pop, courier-pop-ssl, courier-imap e courier-imap-ssl, riceverai il seguente errore:

update-alternatives: error: alternative link /usr/share/man/man5/maildir.5.gz is already managed by maildir.5.gz.

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 valore 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 il networking sia abilitato. Esegui

netstat -tap | grep mysql

L’output dovrebbe apparire così:

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

Durante l’installazione, i certificati SSL per IMAP-SSL e POP3-SSL vengono creati con il nome host localhost. Per cambiare questo nel nome host corretto (server1.example.com in questo tutorial), elimina i certificati…

cd /etc/courier  
 rm -f /etc/courier/imapd.pem  
 rm -f /etc/courier/pop3d.pem

… e modifica i seguenti due file; sostituisci CN=localhost con CN=server1.example.com (puoi anche modificare gli altri valori, se necessario):

vi /etc/courier/imapd.cnf

| [...] CN=server1.example.com [...] |

vi /etc/courier/pop3d.cnf

| [...] CN=server1.example.com [...] |

Poi ricrea i certificati…

mkimapdcert  
 mkpop3dcert

… e riavvia Courier-IMAP-SSL e Courier-POP3-SSL:

/etc/init.d/courier-imap-ssl restart  
 /etc/init.d/courier-pop-ssl restart

13 Installa Amavisd-new, SpamAssassin e Clamav

Per installare amavisd-new, SpamAssassin e ClamAV, eseguiamo

aptitude 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

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

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

aptitude 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-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp

Vedrai la seguente domanda:

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:

a2enmod suexec rewrite ssl actions include

Riavvia Apache dopo:

/etc/init.d/apache2 restart

15 Installa PureFTPd e Quota

PureFTPd e quota possono essere installati con il seguente comando:

aptitude 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 [...] |

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 -o value -s UUID' 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 /dev/mapper/server1-root / ext4 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1 # /boot era su /dev/sda5 durante l'installazione UUID=9ea34148-31b7-4d5c-baee-c2e2022562ea /boot ext2 defaults 0 2 /dev/mapper/server1-swap_1 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 |

Per abilitare la quota, esegui questi comandi:

touch /aquota.user /aquota.group  
 chmod 600 /aquota.*  
 mount -o remount /
quotacheck -avugm  
 quotaon -avug

16 Installa MyDNS

Prima di installare MyDNS, dobbiamo installare alcuni prerequisiti:

aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

MyDNS non è disponibile nei repository di Ubuntu 9.10, quindi dobbiamo compilarlo noi stessi come segue:

cd /tmp  
 wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz  
 tar xvfz mydns-1.2.8.27.tar.gz  
 cd mydns-1.2.8  
 ./configure  
 make  
 make install

Successivamente creiamo lo script di avvio/arresto per MyDNS:

vi /etc/init.d/mydns

| #! /bin/sh # # mydns Avvia il server MyDNS # # Autore: Philipp Kern <[email protected]>. # Basato su skeleton 1.9.4 di Miquel van Smoorenburg # <[email protected]> e Ian Murdock <[email protected]>. # set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/sbin/mydns NAME=mydns DESC="Server DNS" SCRIPTNAME=/etc/init.d/$NAME # Esci gentilmente se il pacchetto è stato rimosso. test -x $DAEMON || exit 0 case "$1" in start) echo -n "Avvio di $DESC: $NAME" start-stop-daemon --start --quiet --exec $DAEMON -- -b echo "." ;; stop) echo -n "Arresto di $DESC: $NAME" start-stop-daemon --stop --oknodo --quiet --exec $DAEMON echo "." ;; reload|force-reload) echo -n "Ricaricamento della configurazione di $DESC..." start-stop-daemon --stop --signal HUP --quiet --exec $DAEMON echo "fatto." ;; restart) echo -n "Riavvio di $DESC: $NAME" start-stop-daemon --stop --quiet --oknodo --exec $DAEMON sleep 1 start-stop-daemon --start --quiet --exec $DAEMON -- -b echo "." ;; *) echo "Uso: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0 |

Poi rendiamo lo script eseguibile e creiamo i collegamenti di avvio del sistema per esso:

chmod +x /etc/init.d/mydns  
 update-rc.d mydns defaults

17 Installa Vlogger e Webalizer

Vlogger e webalizer possono essere installati come segue:

aptitude install vlogger webalizer

18 Installa Jailkit

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

aptitude install build-essential autoconf automake1.9 libtool flex bison
cd /tmp  
 wget http://olivier.sessink.nl/jailkit/jailkit-2.10.tar.gz  
 tar xvfz jailkit-2.10.tar.gz  
 cd jailkit-2.10  
 ./configure  
 make  
 make install  
 cd ..  
 rm -rf jailkit-2.10*

19 Installa fail2ban

Questo è facoltativo ma raccomandato, perché il monitor di ISPConfig cerca di mostrare il log di fail2ban:

aptitude install fail2ban
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.