Installazione Server · 7 min read · Feb 12, 2026

Il Server Perfetto - Fedora 15 x86_64 [ISPConfig 3] - Pagina 4

11 Installa Courier-IMAP, Courier-Authlib e Maildrop

Sfortunatamente non ci sono pacchetti rpm per Courier-IMAP, Courier-Authlib e Maildrop, quindi dobbiamo costruirli noi stessi.

Prima rimuovi Dovecot (Fedora 15 viene fornito con Dovecot 2.x; sfortunatamente, ISPConfig 3 supporta Dovecot 1.2.x, ma non 2.x):

yum remove dovecot dovecot-mysql 

Poi installa i prerequisiti di cui abbiamo bisogno per costruire i pacchetti rpm di Courier:

yum install rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool-ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel libidn-devel 

I pacchetti RPM non dovrebbero essere costruiti come root; courier-imap rifiuterà persino di compilare se rileva che la compilazione viene eseguita come utente root. Pertanto, creiamo ora un normale account utente (falko in questo esempio) e diamo a lui una password:

useradd -m -s /bin/bash falko
passwd falko

Avremo bisogno del comando sudo più avanti in modo che l’utente falko possa compilare e installare i pacchetti rpm. Ma prima, dobbiamo consentire a falko di eseguire tutti i comandi utilizzando sudo:

Esegui

visudo

Nel file che si apre c’è una riga root ALL=(ALL) ALL. Aggiungi una riga simile per falko appena sotto quella riga:

| [...] ## Consenti a root di eseguire qualsiasi comando ovunque root ALL=(ALL) ALL falko ALL=(ALL) ALL [...] |

Ora siamo pronti per costruire il nostro pacchetto rpm. Prima diventa l’utente falko:

su falko

Successivamente creiamo il nostro ambiente di build:

mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/BUILDROOT
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386
mkdir $HOME/rpm/RPMS/x86_64

echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros

Ora creiamo una directory di download e scarichiamo i file sorgente da http://www.courier-mta.org/download.php:

mkdir $HOME/downloads
cd $HOME/downloads

wget https://sourceforge.net/projects/courier/files/authlib/0.63.0/courier-authlib-0.63.0.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/imap/4.8.1/courier-imap-4.8.1.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/maildrop/2.5.4/maildrop-2.5.4.tar.bz2/download

(Potresti chiederti perché non scarico l’ultima versione di courier-imap - 4.9.3 al momento della scrittura - ma uso una versione precedente - 4.8.1. Questo perché 4.9.3 non è riuscito a costruirsi sul mio sistema, mentre 4.8.1 funziona perfettamente.)

Ora (ancora in $HOME/downloads) possiamo costruire courier-authlib:

sudo rpmbuild -ta courier-authlib-0.63.0.tar.bz2

Dopo il processo di build, i pacchetti rpm possono essere trovati in /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686 se sei su un sistema i686). Il comando

sudo ls -l /root/rpmbuild/RPMS/x86_64

mostra i pacchetti rpm disponibili:

[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 520
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
[falko@server1 downloads]$

Seleziona quelli che desideri installare e installali in questo modo:

sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/courier-authlib-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm

Ora torniamo alla nostra directory di download:

cd $HOME/downloads

Esegui i seguenti comandi per creare le directory richieste/cambiare i permessi delle directory (perché altrimenti il processo di build per Courier-Imap fallirà):

sudo mkdir /var/cache/ccache/tmp
sudo chmod o+rwx /var/cache/ccache/
sudo chmod 777 /var/cache/ccache/tmp

Ora esegui di nuovo rpmbuild, questa volta senza sudo, altrimenti la compilazione fallirà perché è stata eseguita come root:

rpmbuild -ta courier-imap-4.8.1.tar.bz2

Dopo il processo di build, i pacchetti rpm possono essere trovati in $HOME/rpm/RPMS/x86_64 ($HOME/rpm/RPMS/i686 se sei su un sistema i686):

cd $HOME/rpm/RPMS/x86_64

Il comando

ls -l

mostra i pacchetti rpm disponibili:

[falko@server1 x86_64]$ ls -l
total 1708
-rw-rw-r– 1 falko falko 596432 May 25 18:33 courier-imap-4.8.1-2.15.x86_64.rpm
-rw-rw-r– 1 falko falko 1149328 May 25 18:33 courier-imap-debuginfo-4.8.1-2.15.x86_64.rpm
[falko@server1 x86_64]$

Puoi installare courier-imap in questo modo:

sudo rpm -ivh courier-imap-4.8.1-2.15.x86_64.rpm

Ora torniamo alla nostra directory di download:

cd $HOME/downloads

ed esegui di nuovo rpmbuild, questa volta per costruire un pacchetto maildrop:

sudo rpmbuild -ta maildrop-2.5.4.tar.bz2

Dopo il processo di build, i pacchetti rpm possono essere trovati in /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686 se sei su un sistema i686). Il comando

sudo ls -l /root/rpmbuild/RPMS/x86_64

mostra i pacchetti rpm disponibili:

[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 1628
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 278520 May 25 18:50 maildrop-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 685672 May 25 18:50 maildrop-debuginfo-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 99924 May 25 18:50 maildrop-devel-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 63968 May 25 18:50 maildrop-man-2.5.4-1.15.x86_64.rpm
[falko@server1 downloads]$

Puoi ora installare maildrop in questo modo:

sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/maildrop-2.5.4-1.15.x86_64.rpm

Dopo aver compilato e installato tutti i pacchetti necessari, puoi tornare a root digitando

exit

12 Installa Postfix

Postfix può essere installato come segue:

yum install postfix

Poi disattiva Sendmail e avvia Postfix e MySQL:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

chkconfig sendmail off
chkconfig –levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start

13 Installa Getmail

Getmail può essere installato come segue:

yum install getmail

14 Imposta le Password di MySQL e Configura phpMyAdmin

Imposta le password per l’account root di MySQL:

 mysql_secure_installation 

[root@server1 ~]# mysql_secure_installation

NOTE: E’ RACCOMANDATO ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT PER TUTTI I SERVER MySQL IN USO IN PRODUZIONE! PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!

Per accedere a MySQL per metterlo in sicurezza, avremo bisogno della password attuale per l’utente root. Se hai appena installato MySQL e non hai ancora impostato la password di root, la password sarà vuota, quindi dovresti semplicemente premere invio qui.

Inserisci la password attuale per root (premi invio per nessuna): <– INVIO
OK, password utilizzata con successo, continuiamo…

Impostare la password di root garantisce che nessuno possa accedere all’utente root di MySQL senza la corretta autorizzazione.

Impostare la password di root? [Y/n] <– INVIO
Nuova password: <– la tua password root sql
Re-inserisci la nuova password: <– la tua password root sql
Password aggiornata con successo!
Ricaricamento delle tabelle di privilegio..
… Successo!

Per impostazione predefinita, un’installazione di MySQL ha un utente anonimo, che consente a chiunque di accedere a MySQL senza dover avere un account utente creato per loro. Questo è inteso solo per test e per rendere l’installazione un po’ più fluida. Dovresti rimuoverli prima di passare a un ambiente di produzione.

Rimuovere gli utenti anonimi? [Y/n] <– INVIO
… Successo!

Normalmente, root dovrebbe essere autorizzato a connettersi solo da ‘localhost’. Questo garantisce che qualcuno non possa indovinare la password di root dalla rete.

Disabilitare l’accesso remoto per root? [Y/n] <– INVIO
… Successo!

Per impostazione predefinita, MySQL viene fornito con un database chiamato ‘test’ a cui chiunque può accedere. Questo è anche inteso solo per test e dovrebbe essere rimosso prima di passare a un ambiente di produzione.

Rimuovere il database di test e l’accesso ad esso? [Y/n] <– INVIO

  • Eliminazione del database di test…
    … Successo!
  • Rimozione dei privilegi sul database di test…
    … Successo!

Ricaricare le tabelle di privilegio garantirà che tutte le modifiche apportate finora abbiano effetto immediato.

Ricaricare le tabelle di privilegio ora? [Y/n] <– INVIO
… Successo!

Pulizia…

Tutto fatto! Se hai completato tutti i passaggi sopra, la tua installazione di MySQL dovrebbe ora essere sicura.

Grazie per aver utilizzato MySQL!

[root@server1 ~]#

Ora configuriamo phpMyAdmin. Cambiamo la configurazione di Apache in modo che phpMyAdmin consenta connessioni non solo da localhost (commentando la parte ):

vi /etc/httpd/conf.d/phpMyAdmin.conf

| # phpMyAdmin - Browser MySQL basato su web scritto in php # Consente solo localhost per impostazione predefinita # Ma consentire a phpMyAdmin a chiunque altro oltre a localhost dovrebbe essere considerato # pericoloso a meno che non sia adeguatamente protetto da SSL Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin # # Order Deny,Allow # Deny from All # Allow from 127.0.0.1 # Allow from ::1 # Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 # Queste directory non richiedono accesso tramite HTTP - prese dal tarball originale # phpMyAdmin upstream Order Deny,Allow Deny from All Allow from None Order Deny,Allow Deny from All Allow from None # Questa configurazione impedisce a mod_security nelle directory di phpMyAdmin di # filtrare SQL ecc. Questo potrebbe interrompere la tua implementazione di mod_security. # # # SecRuleInheritance Off # # |

Poi creiamo i collegamenti di avvio del sistema per Apache e lo avviamo:

chkconfig –levels 235 httpd on
/etc/init.d/httpd start

Ora puoi indirizzare il tuo browser a http://server1.example.com/phpmyadmin/ o http://192.168.0.100/phpmyadmin/ e accedere con il nome utente root e la tua nuova password root di MySQL.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.