Postal è un server di posta autonomo che si concentra fortemente sulla posta in uscita e può essere utilizzato per newsletter e simili. Potrebbe persino essere paragonato a SendGrid.
Prima di iniziare, è opportuno ricordare che l'installazione di Postal su un'installazione esistente molto probabilmente entrerà in conflitto con altri software. Pertanto, è necessario installare Postal su un'istanza cloud vuota e separata.
Fai girare una nuova istanza cloud Ubuntu 16.04 su Vultr, accedi al server come root e segui i passaggi seguenti.
Passaggio 1: installazione di Postal
Postal ha uno script di installazione facile da usare. Richiede solo un comando. Si noti che l'installazione dallo script non è completa, sono necessari passaggi aggiuntivi.
Eseguire:
curl https://raw.githubusercontent.com/atech/postal/master/script/install/ubuntu1604.sh | sh
Al termine dell'installazione, è necessario creare un nuovo utente. Eseguire:
postal make-user
Questo comando richiede l'input dell'utente per determinare l'indirizzo e-mail, il nome e le altre proprietà dell'utente. Immettere queste informazioni in modo che l'utente venga creato. Si noti che questo comando creerà un utente amministratore , quindi se non si desidera che un utente disponga dei privilegi di amministratore, non è necessario creare i propri account tramite questo comando.
Quindi, accedere all'indirizzo IP del server o qualsiasi mapping DNS all'indirizzo IP nel browser per accedere. È possibile che venga visualizzato un avviso relativo al certificato SSL, ma per ora possiamo ignorarlo poiché, per impostazione predefinita, Postal utilizza un certificato autofirmato.
Tentare di accedere all'interfaccia Web. Se funziona, vai al passaggio successivo.
Passaggio 2: sostituire il certificato SSL (facoltativo)
Come accennato, per impostazione predefinita Postal utilizza un certificato autofirmato. Sebbene non richiesto, potrebbe essere una buona idea sostituire questo certificato con un Let's Encrypt; soprattutto se altri useranno l'interfaccia Web, potrebbe verificarsi stranamente se si verifica un errore del certificato.
Inoltre, Let's Encrypt è necessario per il funzionamento della funzionalità dei domini di tracciamento.
Eseguire:
postal register-lets-encrypt example@ example.com
Passaggio 3: configurare le impostazioni del dominio
È necessario aggiungere alcuni record DNS per evitare che i messaggi di posta elettronica vengano contrassegnati come spam. Apri il file /opt/postal/config/postal.yml
e vai alla dns
sezione, che dovrebbe apparire così:
dns:
# Specifies the DNS record that you have configured. Refer to the documentation at
# https://github.com/atech/postal/wiki/Domains-&-DNS-Configuration for further
# information about these.
mx_records:
- mx.example.com
smtp_server_hostname: postal.example.com
spf_include: spf.example.com
return_path: rp.postal.example.com
route_domain: routes.postal.example.com
track_domain: track.postal.example.com
I record DNS per *.postal.example.com
devono essere creati affinché Post funzioni correttamente.
Inoltre, è necessario creare un record SPF "includibile" da altri nomi di dominio ( spf.example.com
). Le impostazioni qui specificate verranno mostrate agli utenti al momento della creazione di un nuovo nome di dominio. Postal ha una funzione integrata che controlla se tutti i record DNS sopra specificati sono stati aggiunti a un nome di dominio.
Oltre a questi, al momento della creazione verrà mostrato anche un record DKIM. Poiché un record DKIM è unico, naturalmente, non verrà mostrato qui.
Modificare questi valori per riflettere le impostazioni corrette.
Passaggio 4: abilitare la posta elettronica su SSL
Sebbene questo passaggio sia facoltativo, dovresti assolutamente (ri) considerare possibili problemi relativi alla sicurezza se non abiliti la crittografia. Consiglio di abilitare (START) TLS.
Per impostazione predefinita, il server di posta distribuito insieme a Postal non supporta SSL. Non esiste alcuna funzionalità nativa per abilitare il server di posta con compatibilità SSL / TLS sulle porte 465 o 587.
Tuttavia, è possibile configurare la porta 25 per supportare STARTTLS, consentendo anche la crittografia. Per attivarlo, aggiungi il seguente blocco al file di configurazione ( /opt/postal/config/postal.yml
):
smtp_server:
tls_enabled: true
tls_certificate_path: config/fast_server.cert
tls_private_key_path: config/fast_server.key
Nel caso in cui questo blocco esista già, ti consigliamo di confrontare i loro contenuti e unirli, considerando che un blocco duplicato potrebbe portare a conflitti.
Salva le modifiche e riavvia Postal:
postal restart
Successivamente, configureremo una sessione telnet per verificare se le nostre modifiche hanno avuto effetto e se STARTTLS è abilitato. Sostituisci 0.0.0.0
con l'indirizzo IP dell'istanza cloud Vultr.
server$ telnet 0.0.0.0 25
Trying 0.0.0.0...
Connected to postal.example.com.
Escape character is '^]'.
220 postal.example.com ESMTP Postal/NYNI5I
Saluta il server di posta. Sostituisci postal.example.com
con il nome del tuo server di posta. Questo dovrebbe essere il valore dopo "Connesso a".
ehlo postal.example.com
Il seguente output verrà restituito dopo:
250-My capabilities are
250-STARTTLS
250 AUTH CRAM-MD5 PLAIN LOGIN
Come puoi vedere, è 250-STARTTLS
stato restituito, quindi il server di posta supporta STARTTLS sulla porta 25.
Passaggio 5: abilitare il controllo di spam e virus utilizzando SpamAssassin
Postal si integra con SpamAssassin e ClamAV per occuparsi del controllo dello spam e dei virus, sia in entrata che in uscita. La funzionalità è disabilitata per impostazione predefinita poiché alcuni server di posta non ne hanno bisogno, ma consiglio vivamente di abilitarla nella maggior parte dei casi.
Prima di tutto, installa SpamAssassin. Non è necessario aggiungere un repository alternativo:
apt-get install spamassassin
Apri il file di configurazione di SpamAssassin /etc/default/spamassassin
e modifica i seguenti valori:
ENABLED=1
CRON=1
Quindi, riavvia SpamAssassin per rendere effettive le modifiche:
systemctl restart spamassassin
SpamAssassin è ora installato, ma Postal non sta inviando e-mail a modo suo. Aggiungi il seguente blocco nel postal.yml
file di configurazione:
spamd:
enabled: true
host: 127.0.0.1
port: 783
Infine, riavvia Postal:
postal restart
Postal è ora configurato per utilizzare SpamAssassin e ClamAV per i messaggi di posta elettronica in arrivo e in uscita. È possibile specificare la modalità di gestione della posta elettronica contrassegnata come spam per percorso (contrassegno, quarantena o errore).
Ora hai un server postale perfettamente funzionante. Per le impostazioni relative alla configurazione della posta (server), dovresti dare un'occhiata all'interfaccia postale.
Questo conclude il mio tutorial postale, grazie.