QMail – Installazione di base (CentOS 7)

Published by Lello on

Per l’installazione usiamo una distribuzione CentOS 7 su piattaforma Intel Xeon 64 bit e 8GB Ram; per quanto riguarda il disco, vi consiglio di partizionarlo ricordandosi che:

/home: conterrà le mail dei vostri domini; vi consiglio di fare una partizione logica e formattazione XFS;
/var: conterrà i binari di qmail, i log ed i vari temporanei che potranno essere creati; vi consiglio di creare una partizione logica;
/tmp: se il disco che usate si riempirà, quest partizione vi permetterà di effettuare ancora login remoto alla vostra macchina; dimensionatela al pari della vostra ram (nel mio caso la partizione sarà una di 8GB formattata in EXT2);

Prima di effettuare l’installazione, registrare l’indirizzo IP della macchina che state installando nel DNS, impostatelo come MX primario e verificate che funzioni.

Dopo aver installato la CentOS 7 (io utilizzo la ISO in versione “minimal”) aggiorniamo il sistema con le ultime patch, installiamo alcuni package che ci serviranno in seguito, disabilitiamo selinux ed il firewall e riavviamo il sistema.

Apriamo una shell sul nostro server e digitiamo, come utente root i seguenti comandi:

# yum -y update
# yum -y install lsof net-tools wget bind-utils
# yum -y groupinstall "Development tools"
# systemctl stop firewalld
# systemctl disable firewalld
# echo "SELINUX=enforcing" > /etc/selinux/config
# echo "SELINUXTYPE=targeted" >> /etc/selinux/config
# echo "172.28.0.202 mailtest.anthesia.lan" >> /etc/hosts
# systemctl stop postfix
# systemctl disable postfix
# hostnamectl set-hostname mailtest.anthesia.lan
# reboot

Possiamo ora cominciare a scaricare i package che ci servono per l’installazione; seguiremo le indicazioni fornite nella documentazione che possiamo trovare all’indirizzo “Life with QMail“; utilizzeremo la directory /usr/src come base per il nostro lavoro:

# #Scarichiamo i primi sorgenti:
# cd /usr/src
# wget http://www.qmail.org/netqmail-1.06.tar.gz
# wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
# wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
# #Creiamo le directory
 # mkdir /var/qmail
 # mkdir /etc/qmail
 # ln -s /etc/qmail /var/qmail/control
# #Creiamo gli utenti e i gruppi
 # groupadd -g 2108 nofiles
 # useradd -u 7790 -g nofiles -d /var/qmail/alias alias -s /sbin/nologin
 # useradd -u 7791 -g nofiles -d /var/qmail qmaild -s /sbin/nologin
 # useradd -u 7792 -g nofiles -d /var/qmail qmaill -s /sbin/nologin
 # useradd -u 7793 -g nofiles -d /var/qmail qmailp -s /sbin/nologin
 # groupadd -g 2107 qmail
 # useradd -u 7794 -g qmail -d /var/qmail qmailq -s /sbin/nologin
 # useradd -u 7795 -g qmail -d /var/qmail qmailr -s /sbin/nologin
 # useradd -u 7796 -g qmail -d /var/qmail qmails -s /sbin/nologin
 # rm -f /var/qmail/alias/.bash*
# #Compiliamo qmail
 # cd /usr/src
 # tar xvfz netqmail-1.06.tar.gz
 # cd netqmail-1.06
 # make setup check
 # # Il comando successivo ha esito positivo se e solo se
 # # il dns server a cui appartiene il vostro mail server è correttamente configurato:
 # # dig mailtest.anthesia.lan --> 172.28.0.202
 # # dig -x 172.28.0.202 --> mailtest.anthesia.lan
 # ./config
# #Compiliamo ucspi-tcp
 # cd /usr/src
 # tar xvfz ucspi-tcp-0.88.tar.gz
 # cd ucspi-tcp-0.88
 # patch < /usr/src/netqmail-1.06/other-patches/ucspi-tcp-0.88.errno.patch
 # make
 # make setup check
# #Installiamo i daemon-tools
 # mkdir -p /package
 # chmod 1755 /package
 # cd /package
 # tar xvfz /usr/src/daemontools-0.76.tar.gz
 # cd admin/daemontools-0.76/src
 # patch < /usr/src/netqmail-1.06/other-patches/daemontools-0.76.errno.patch
 # cd ..
 # package/install
# # Aggiorniamo il sendmail
 mv /usr/lib/sendmail /usr/lib/sendmail.old
 mv /usr/sbin/sendmail /usr/sbin/sendmail.old
 chmod 0 /usr/lib/sendmail.old /usr/sbin/sendmail.old
 ln -s /var/qmail/bin/sendmail /usr/lib
 ln -s /var/qmail/bin/sendmail /usr/sbin

Creiamo lo startup file per i daemon tools per systemd; innanzi tutto editiamo il file /etc/inittab e cancelliamo la seguente riga:

SV:123456:respawn:/command/svscanboot

Creare un nuovo file /lib/systemd/system/daemontools.service ed inseriamo all’interno:

[Unit]
Description=DJB daemontools
After=syslog.target network.target

[Service]
 ExecStart=/command/svscanboot
 Restart=always

[Install]
 WantedBy=multi-user.target

Copiamo il link ed abilitiamo il servizio:

# ln -s /lib/systemd/system/daemontools.service /etc/systemd/system/multi-user.target.wants
# systemctl enable daemontools
# systemctl start daemontools

Infine riavviamo il nostro server

# reboot

← QMail QMail – Start