Server Setup · 5 min read · Nov 27, 2025

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

10 Installa Dovecot

Dovecot può essere installato come segue:

yum install dovecot dovecot-mysql 

rm -fr /usr/lib/dovecot/
ln -s /usr/lib64/dovecot/ /usr/lib/dovecot

Ora creiamo i collegamenti di avvio del sistema per Dovecot:

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

11 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 –levels 235 sendmail off
chkconfig –levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start

12 Installa Getmail

Getmail può essere installato come segue:

yum install getmail

13 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, procedendo…

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

Impostare la password di root? [Y/n] <– INVIO
Nuova password: <– yourrootsqlpassword
Reinserisci la nuova password: <– yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi.. … 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 testare 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 assicura che qualcuno non possa indovinare la password di root dalla rete.

Negare l’accesso remoto a 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 testare 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

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

Ricaricare le tabelle dei privilegi garantirà che tutte le modifiche apportate finora abbiano effetto immediato.

Ricaricare le tabelle dei privilegi 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 sezione ):

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

| # phpMyAdmin - Browser MySQL basato sul web scritto in php # # Consente solo localhost per impostazione predefinita # # Ma consentire 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 # # Questa directory non richiede accesso tramite HTTP - presa dal tarball originale # phpMyAdmin upstream # 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 di root MySQL.

14 Installa Amavisd-new, SpamAssassin e ClamAV

Per installare amavisd-new, spamassassin e clamav, esegui il seguente comando:

yum install amavisd-new spamassassin clamav clamav-data clamav-server clamav-update unzip bzip2 perl-DBD-mysql

Quando abbiamo installato ClamAV, è stato installato un cron job che cerca di aggiornare il database dei virus di ClamAV ogni tre ore. Ma questo funziona solo se lo abilitiamo in /etc/sysconfig/freshclam e /etc/freshclam.conf:

vi /etc/sysconfig/freshclam

Commenta la riga FRESHCLAM_DELAY alla fine:

| ## Quando cambi la periodicità delle esecuzioni di freshclam nel crontab, ## questo valore deve essere regolato anche. Il suo valore è l'intervallo di tempo tra ## due esecuzioni successive di freshclam in minuti. Ad esempio, per il valore predefinito ## ## | 0 */3 * * * ... ## ## la riga del crontab, il valore è 180 (minuti). # FRESHCLAM_MOD= ## Un valore predefinito per il ritardo in secondi. Per impostazione predefinita, il valore è ## calcolato dal programma 'hostid'. Questo valore predefinito garantisce ## intervalli costanti di 3 ore tra due esecuzioni successive di freshclam. ## ## Questa opzione accetta due valori speciali: ## 'disabled-warn' ... disabilita l'aggiornamento automatico di freshclam e ## emette un avviso ## 'disabled' ... disabilita l'aggiornamento automatico di freshclam silenziosamente # FRESHCLAM_DELAY= ### !!!!! RIMUOVIMI !!!!! ### RIMUOVIMI: Per impostazione predefinita, l'aggiornamento di freshclam è disabilitato per evitare ### RIMUOVIMI: accesso alla rete senza attivazione preventiva #FRESHCLAM_DELAY=disabled-warn # RIMUOVIMI |

vi /etc/freshclam.conf

Commenta la riga Example:

| [...] # Commenta o rimuovi la riga qui sotto. #Example [...] |

Poi avviamo freshclam, amavisd e clamd…

sa-update
chkconfig –levels 235 amavisd on
chkconfig –levels 235 clamd.amavisd on
/usr/bin/freshclam
/etc/init.d/amavisd start
/etc/init.d/clamd.amavisd start

Se /etc/init.d/amavisd start ti dà il seguente errore…

[root@server1 ~]# /etc/init.d/amavisd start
Avviando amavisd: Problema in Amavis::DB o Amavis::DB::SNMP codice:
BerkeleyDB necessita di versioni compatibili di libdb & db.h
hai db.h versione 4.8.26 e libdb versione 4.8.30
La compilazione è fallita in require a (eval 82) riga 19.
BEGIN fallito–compilazione abortita a (eval 82) riga 19.
[FAILED]

[root@server1 ~]#

… devi eseguire il downgrade di db4:

yum downgrade db4*

Poi prova a riavviare amavisd:

/etc/init.d/amavisd start  

Infine cambia la proprietà di alcune directory:

chown amavis /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db

rm -f /var/spool/amavisd/clamd.sock
mkdir /var/run/clamav.amavisd /var/run/clamd.amavisd
chown amavis /var/run/clamav.amavisd
chown amavis /var/run/clamd.amavisd
ln -sf /var/spool/amavisd/clamd.sock /var/run/clamav.amavisd/clamd.sock
ln -sf /var/spool/amavisd/clamd.sock /var/run/clamd.amavisd/clamd.sock
/etc/init.d/clamd.amavisd restart

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.