Postfix cerca di essere veloce, facile da amministrare e sicuro, mentre allo stesso tempo è abbastanza compatibile con sendmail da non dover sostituire gli utenti esistenti. Così, se esternamente sembra essere sendmail, internamente è completamente differente. | ||
--www.postfix.org |
Non è impressionante? - Sembra molto più complicato di quanto sia effettivamente. Postfix è invece semplice da configurare e gestire.
A differenza di sendmail, postfix non è un unico programma monolitico ma un insieme di piccoli programmi, ognuno con una specifica funzione. Non ho intenzione di entrare in dettaglio di ogni singolo programma. Se sei interessato a come lavora Postfix, leggi la documentazione http://www.postfix.org/docs.html
In questo documento troverete le informazioni sufficienti ad avere un sistema funzionante insieme ad altri componenti si un sistema completo di e-mail.
Cyrus IMAP è sviluppato e mantenuto dalla Carnegie Mellon University.
A differenza del package WU-IMAPd, Cyrus utilizza un suo sistema di immagazzinamento di mail degli utenti. Ogni messaggio è immagazzinato in un suo proprio file. Il beneficio di utilizzare file separati è quello di migliorare il recupero poichè un solo messaggio è perso se il file system si danneggia. I metadati, come lo stato di un messaggio (letto, ecc), sono immagazzinati in un database. In più, i messaggi sono indicizzati per migliorare le performance di Cyrus, specialmente quando ci sono molti utenti e/o parecchie grandi emails. Non c'è niente di più veloce del server Cyrus-IMAP.
Un'altra impoortante caratteristica è che non hai bisogno di un utemte locale per ogni account. Tutti gli utenti sono autenticati dal server IMAP. Questa è una grande soluzione quando hai un elevato numero di utenti.
L'amministrazione degli utenti è fatta da speciali comandi IMAP. Questo ti permette di usare sia un interfaccia a caratteri che un interfaccia web. Questo metodo è più sicuro di un Interfaccia Web su /etc/passwd.
Partendo da Cyrus 2.1, SASL-lib versione 2 è utilizzato per l'autenticazione. Per il setup descritto in questo HOWTO, è utilizzata un'autenticazione a tre livelli. Cyrus autentica con saslauthdaemon che inoltra la richiesta a pam_mysql che finalmente cerca l'informazione dell'utente in una tabella mysql.
Da quando CMU ha cambiato la licenza di Cyrus, questo software sta venendo utilizzato da sempre più persone.
SASL significa »Simple Authentication and Security Layer«. E' standardizzato da IETF (Internet Engineering Taskforce). SASL è utililzzato da server di rete (in questo caso Cyrus-IMAP) per gestire le richieste di autenticazionedei clients.
Cyrus SASL è un software esteso e spesso non semplice da capire. Io ne ho appena la conoscenza necessaria per scrivere questo HOWTO.
OpenSSL è una libreria richiesta da SASL per la criptazione dello stream dei dati. E' usato da quasi tutti i software opensource che hanno bisogno di criptazione. Quasi tutte le distribuzioni Un*x arrivano con OpenSSL preinstallato. Assicuratevi di installare l'appropriato devel-package. Se volete potete compilare da soli Openssl. Questo sarà necessario se dovete fixare un buco di sicurezza.
MySQL è un database veloce, potente e molto semplice da usare .
poiché Cyrus può autenticare gli utenti con pam, potete utilizzare pam_mysql come connettore al database degli utenti immagazzinato in MYSQL. Questo vi permette di creare una buona interfaccia Web per i vostri utenti per cambiare password,definire e cancellare aliases e altro.
pam significa "Pluggable Authentication module" e originariamente venne proposto da qualcuno alla Sun. Nel frattempo parecchi moduli sono stati sviluppati. Uno di essi è un interfaccia a MySQL
Con pam_mysql immagazzini le password degli utenti in un database MySQL. In seguito, Postfix riesce a ricercare gli aliases da una tabella MYSQL. Alla fine, hai una base per tutte le operazioni amministrative fatte dal postmaster.
E' possibile delegare alcune attività ad un gruppo di Powerusers. Per esempio, attività come creare account, modificare password e creare nuovi aliases può essere delegata ad un certo amministratore per un particolare dominio. Alla fine, voi, come Sysadmin, avrete tempo da impiegare in attività più produttive o scrivere un HOWTO per il Linux Documentation Project.
Web-cyradm è l'interfaccia web che vi permette di eseguire le attività amministrative richieste per mantenere il vostro mailsystem. Questa figura mostra la parte di amministrazione domini di Web-cyradm.
Web-cyradm è scritto in PHP, il più sofisticato linguaggio preprocessore-html. Se non avete un webserver con php installato dovreste riferirvi a Apache-Compile-HOWTO. Questo documento descrive come metter su Apache con PHP e altri moduli.
Web-cyradm è in pieno e attivo sviluppo grazie a persone da tutto il mondo. La lista delle caratteristiche cresce ad ogni release. Se volete contribuire a web-cyradm o avete una buona idea contattate tranquillamente la mailinglist http://www.web-cyradm.org
Questa che segue è una lista parziale di caratteristiche:
Amministrazione di domini virtuali
Impostazione delle quote disco
Creazione automatica di usenames sia con prefisso predefinito che con il nome del dominio
Delega di attività come la creazione di nuovi utenti per i singoli domini a dei »Domain Masters«
Mappatura di utenti-accounts su indirizzi email
Inoltro di account su singoli aliases
Funzioni di assenza temporanea per aliases
Supporto per tabelle di trasporto SMTP
Supporto per MySQL e PostgreSQL
supporto i18n (internazionalizzazione) (inclusi differenti charsets)
Traduzione in 18 lingue ed sta aumentando
Web-cyradm supporta differenti ruoli dei suoi utenti. Se avete intenzione di usarlo come frontend per i tuoi powerusers notate che vi possono essere dei problemi di sicurezza. Il sistema basato sui ruoli necessita di una revisione per migliorare la sicurezza.