Progetto

Generale

Profilo

Installare e configurare Dada Mail

DadaMail è un potente sistema per l'invio di newsletter via web scritto in Perl, il cui solo difetto (o pregio, a secona dei punti di vista) è quello di usare un approccio minimalista per la configurazione.

Installazione

Le istruzioni sul sito sono dettagliate, ma sono orientate alla tipica installazione nella propria home directory su un sito in hosting, qui vedremo come regolarsi con una installazione da fare a livello generale su un server.

Il primo passo è scaricare il .tar.gz del programma e scompattarlo in una directory opportuna; nel nostro caso si è fatto:

cd /usr/local/share
tar -xvzf /root/dada-2_10_16.tar.gz
chown -R root:root dada

Nella directory /usr/local/share/dada/DADA si troverà il file Config.pm in cui vanno modificate le seguenti 4 variabili (il file è piuttosto lungo perché contiene parecchia documentazione, si abbia cura di cercare le righe corrispondenti, l'uso di un editor con l'evidenziazione della sintassi aiuta parecchio):

$PROGRAM_ROOT_PASSWORD = 'passwordsegreta'
$FILES = '/srv/dadamail';
$MAILPROG = '/usr/sbin/sendmail';
$PROGRAM_URL ='http://www.sito.it/cgi-bin/dada/mail.cgi';

Dato che in genere /srv/dadamail non esiste si abbia cura di crearla ed impostarne correttamente il proprietario:

mkdir /srv/dadamail
chown www-data:www-data /srv/dadamail

Dato che DadaMail lavora come un CGI, si devono poi spostare nella opportuna directory il file mail.cgi e la precedente directory DADA, vale a dire:

mkdir /usr/lib/cgi-bin/dada
cd /usr/lib/cgi-bin/dada
cp /usr/local/share/dada/mail.cgi .
chmod 755 mail.cgi
mv /usr/local/share/dada/DADA .

Se si vuole installare DadaMail in una directory diversa si dovrà poi modificare la configurazione di Apache perché questa sia utilizzabile come directory per i CGI. Fatto questo si potrà accedere alla pagina iniziale di configurazione puntando un browser all'indirizzo impostato nella variabile PROGRAM_URL (la configurazione di Apache deve consentire l'accesso a tale indirizzo e vedere mail.cgi come CGI).

Al primo accesso la pagina di benvenuto avviserà che la password impostata non è cifrata, mettendo a disposizione un link ad un form (che appare in una nuova finestra) in cui sarà possibile inserire una nuova password, per ottenerne un hash cifrato. Si tratterà di rieditare il file Config.pm assegnando a PROGRAM_ROOT_PASSWORD detto valore al posto di quello in chiaro, e di impostare la variabile:

$ROOT_PASS_IS_ENCRYPTED ||= 1;

La pagina chiede poi di accettare la licenza (GPL), di promettere di non usare il programma per inviare Spam, e di creare una nuova lista, per la quale chiede la password di amministratore. Da quel momento in poi sulla pagina principale apparirà un elenco delle liste disponibili, con a fianco la possibilità di iscrizione, ed un link alla pagina di amministrazione generale.

Installazione di software aggiuntivi

Pur non essendo necessari al funzionamento di base dell'applicazione, una serie di librerie Perl di CPAN sono molto utili per poterne utilizzare alcune funzionalità avanzate, per questo motivo si consiglia di installare i seguenti pacchetti:

apt-get install libxml-rss-perl libio-socket-ssl-perl libgd-perl libmime-perl \
  libmime-lite-perl libhtml-scrubber-perl libnet-dns-perl libio-socket-ssl-perl 

Inoltre per poter inviare delle newsletter in HTML risulta molto comodo poter utilizzare direttamente dall'interfaccia web l'editor javascript fckeditor, per questo anzitutto occorre installare il relativo pacchetto con:

apt-get install fckeditor

dopo di che occorrerà configurare DadaMail per poterlo utilizzare; in questo caso quello che serve è impostare dentro Config.pm la variabile FCKEDITOR_URL con la URL a cui lo stesso è accessibile, ad esempio con qualcosa del tipo:

$FCKEDITOR_URL ||= 'http://www.sito.it/fckeditor';

(si può usare anche https, ma si tenga conto che la cosa funzionerà soltanto o sotto http o sotto https, dato che in genere l'editor viene usato nell'invio si suggerisce di usare https).

Ovviamente perché questo funzioni occorre che la URL precedente sia accessibile tramite Apache e corrispondente all'installazione del programma, nel caso di Debian questo si può ottenere aggiungendo una riga del tipo:

Alias /fckeditor/ /usr/share/fckeditor/

alla configurazione del proprio dominio web (in /etc/apache2/sites-available/default per il dominio generico, o nel file del rispettivo virtual host se se ne sta usando uno).

Configurazione di alcuni parametri importanti

La configurazione di default consente di impostare con la variabile PROGRAM_URL l'indirizzo web a cui si accede alle varie pagina dell'applicazione, questo però comporta, a meno di non volere mettere tutto il sito sotto HTTPS, che l'accesso è normalmente non cifrato, anche quando si accede alle funzionalità di amministrazione. E' pertanto fortemente consigliato di impostare anche la variabile S_PROGRAM_URL, che consente di indicare un indirizzo diverso per l'accesso alle pagine di amministrazione, nel qual caso si potrà indicare, rifacendosi a quanto visto prima, qualcosa del tipo:

$S_PROGRAM_URL ='https://www.sito.it/cgi-bin/dada/mail.cgi';

I parametri impostati nel Config.pm di default installato dai sorgenti hanno alcuni valori alquanto limitati, il principale dei quali è quello relativo alla quota imposta sul numero massimo di mailing list utilizzabili, il default è di 3 ma può essere modificato, andando a cambiare il valore della variabile LIST_QUOTA con qualcosa del tipo:

$LIST_QUOTA ||= 30;

Lo stesso dicasi per il numero massimo di iscritti ad una singola lista, che è di 5000 (già più ragionevole, ma talvolta insufficiente), in tal caso occorrerà cambiare il valore della variabile SUBSCRIPTION_QUOTA con qualcosa del tipo:

$SUBSCRIPTION_QUOTA ||= 20000;