No, non è necessario impostare una cache DNS sul server. Il server dovrebbe usare un resolver DNS di cache che si trova da qualche parte nelle vicinanze, ma la maggior parte delle società di hosting esegue già i propri resolver per l'intero data center e configura i server per usarli per impostazione predefinita.
Per impostazione predefinita, Postfix e Dovecot utilizzano account locali per tutto. Se hai un account Linux nominato diti
, puoi accedere a Dovecot con esso e puoi impostare Postfix per convalidare gli accessi SMTP su Dovecot .
Se stai bene facendo in modo che tutta la posta vada sullo stesso account, puoi impostare alias semplici (come in, /etc/aliases
) per reindirizzare la posta verso kra@
o postmaster@
verso l' diti
account.
Tutti questi subjectAltNames non sono necessari. Gli unici che serve è per i nomi di dominio che si vuole effettivamente utilizzare , ad esempio, mail.diti.me
o glaux.diti.me
. Non sono sicuro se è necessario includere il dominio stesso (ovvero diti.me
).
Di seguito si presume che il dominio abbia già record MX configurati per puntare a questo server. In genere cerco di mantenere ragionevolmente chiara la mia configurazione, dato che finisco sempre per chiedermi "che diavolo è questo" qualche mese dopo.
1. Innanzitutto, installa i pacchetti postfix
e dovecot-imapd
. Quando viene richiesto di configurare Postfix, selezionare l'opzione "Sito Internet" e immettere diti.me
come nome di posta. A questo punto, puoi già inviare e ricevere posta come diti@diti.me
e probabilmente anche connetterti a IMAP.
Tuttavia, non ha ancora SSL, né consente l'invio di posta tramite SMTP dall'esterno, né un luogo sano per l'archiviazione della posta (il valore predefinito è un file mbox /var/mail
, che non è affidabile e offre prestazioni scadenti, specialmente con IMAP).
2. Se hai già un certificato SSL, inseriscilo e inserisci /etc/ssl/private/diti.me.pem
la chiave privata /etc/ssl/private/diti.me.key
. La posizione esatta non ha importanza, ma /etc/ssl/private
è dove Debian li tiene.
Assicurati che entrambi i file siano di proprietà e leggibili dal ssl-cert
gruppo, in modo che Postfix e Dovecot possano accedervi. Aggiungi anche gli account di entrambi i demoni a quel gruppo usando gpasswd -a
.
3. Anche Postfix generato automaticamente da Debian main.cf
è un po 'un casino, quindi pubblicherò solo una versione minimale ripulita:
# Informazioni sul server
miodominio = diti.me
myorigin = $ miodominio
# Vari altri parametri usano queste due variabili come valori predefiniti.
# Servizio SMTP
smtpd_tls_security_level = maggio
smtpd_tls_cert_file = /etc/ssl/private/diti.me-mail.pem
smtpd_tls_key_file = /etc/ssl/private/diti.me-mail.key
# Ciò consente a STARTTLS di essere utilizzato su tutte le connessioni SMTP in entrata.
# Notare che `postfix` deve essere aggiunto al gruppo` ssl-cert` per poterlo abilitare
# per accedere ai file in / etc / ssl / private.
# Politiche
mynetworks = [:: 1] / 128, 127.0.0.0/8, [::ffff:127.0.0.0 lasting/104
# Questo elenca gli indirizzi IP considerati "affidabili" e che possono essere utilizzati
# questo server per inviare posta all'esterno (ovvero verso altri domini). Di
# default, è consentito solo "localhost". Da tutti gli altri solo posta a
# domini in $ mydestination saranno accettati.
mydestination = $ miodominio, localhost
# Elenco dei domini per cui accettare la posta, da qualsiasi indirizzo IP.
# Consegna
alias_maps = hash: / etc / aliases
# Questo mantiene gli alias a livello di sistema. È bene impostarlo esplicitamente perché
# il valore predefinito a volte include NIS, il che non ha senso.
recipient_delimiter = +
# Indica a postfix di dividere la parte locale degli indirizzi al primo '+',
# cosiddetto "indirizzo positivo": la posta inviata a diti + foo @ verrà recapitata
# alla cassetta postale diti @.
Per Dovecot, Debian usa solo le configurazioni di esempio predefinite e sono abbastanza buone, con ogni opzione descritta.
Ogni volta che modifichi la configurazione, ricarica i demoni con postfix reload
e / o doveadm reload
.
4. Per impostazione predefinita, Postfix consegna la posta /var/mail/$USER
nel formato mbox , che è abbastanza semplice (puoi visualizzarlo facilmente con un editor di testo) ma ha molti problemi, specialmente con IMAP, poiché l'intero file deve essere riscritto ogni volta che sposti un messaggio o anche segnarne uno come "letto" o "non letto".
Cambia entrambi i demoni per usare Maildir. (Esistono altri formati, ma tendono ad essere specifici per il server MTA o MDA o IMAP o altro; Maildir è ampiamente supportato.)
In /etc/postfix/main.cf
, aggiungi quanto segue alla sezione "Consegna":
home_mailbox = Posta /
Configura Dovecot per utilizzare lo stesso percorso, in /etc/dovecot/conf.d/10-mail.conf
:
mail_location = maildir: ~ / Mail
5. Ad un certo punto, devi dire a Dovecot di usare anche SSL. Sono presenti le impostazioni pertinenti /etc/dovecot/conf.d/10-ssl.conf
. In effetti, il pacchetto Debian per Dovecot utilizza già SSL, sebbene con un certificato autofirmato che è per lo più inutile. Configuralo per usare il tuo certificato:
ssl = si
ssl_cert = </etc/ssl/private/diti.me-mail.pem
ssl_key = </etc/ssl/private/diti.me-mail.key
6. Ora puoi inviare la posta all'esterno e riceverla. E 'ancora necessario configurare Postfix per consentire di inviare da esterno tramite la connessione con il client di posta tramite SMTP.
Dì innanzitutto a Postfix di utilizzare Dovecot per verificare gli accessi. Le seguenti istruzioni sono per lo più tratte dal wiki di Dovecot .
Dovecot ha /etc/dovecot/conf.d/10-master.conf
bisogno di ascoltare su un socket a cui Postfix potrebbe accedere; la configurazione predefinita ha già un esempio commentato:
servizio auth {
...
unix_listener / var / spool / postfix / private / auth {
modalità = 0660
utente = postfisso
gruppo = postfisso
}
...
}
E Postfix deve usarlo di /etc/postfix/main.cf
nuovo:
# Autenticazione
smtpd_sasl_type = dovecot
smtpd_sasl_path = private / auth
# L'altro tipo possibile è "cyrus", per "saslauthd" di Cyrus SASL
# demone. Ho scelto Dovecot qui poiché funziona bene come server SASL e
# è solo più semplice lasciarlo gestire l'autenticazione per entrambi i demoni.
7. Si noti che quanto sopra non è impostato da smtpd_sasl_auth_enable
nessuna parte. La convenzione attuale non è quella di abilitare l'autenticazione SMTP a livello globale, ma di mantenere tcp / 25 esclusivamente come porta SMTP "da server a server". Nel frattempo, i nuovi messaggi degli utenti vengono accettati tramite SMTP su tcp / 587, la porta di "invio della posta", che richiede l'autenticazione. Alcuni ISP bloccano persino tcp / 25 a causa dello spam, ma mantengono aperto tcp / 587 poiché di solito è meglio protetto.
Abilitare la porta "Invio" in /etc/postfix/master.cf
, con autenticazione SASL. L'impostazione predefinita master.cf
ha già le righe necessarie che devono solo essere non commentate, anche se alcune di esse dovrebbero essere ancora escluse.
invio inet n - - - - smtpd
-o nome_syslog = postfisso / invio
-o smtpd_tls_security_level = crittografare
# La porta "Sottomissione" richiederà TLS, invece di renderla facoltativa
-o smtpd_sasl_auth_enable = yes
# ... oltre a consentire agli utenti di accedere.
# -o smtpd_reject_unlisted_recipient = no
# -o smtpd_client_rest restrizioni = $ mua_client_rest restrizioni
# -o smtpd_helo_rest restrizioni = $ mua_helo_rest restrizioni
# -o smtpd_sender_rest restrizioni = $ mua_sender_rest restrizioni
# Queste quattro opzioni possono essere lasciate commentate; se abilitato, lo farebbero
# prevede di impostare regole di restrizione personalizzate in "main.cf", ma il file
# quelli di default vanno bene.
-o smtpd_recipient_rest restrizioni = permesso_autenticazione autenticata, rifiuto
# Le restrizioni recipient_ predefinite controllano l'indirizzo IP e
# $ mydestination. Per la porta "Sottomissione", consentire tutto il tempo necessario
# poiché l'utente ha effettuato l'accesso, ma rifiuta tutta la posta anonima.
-o milter_macro_daemon_name = ORIGINANTE
# Se in seguito decidi di impostare un proxy DKIM o simili, ciò consentirà
# per distinguere i messaggi inviati dagli utenti da quelli ricevuti.
# Fa parte della configurazione predefinita, quindi inclusa anche qui.
Se si dispone di un client di posta che richiede una porta "implicita SSL" di vecchio stile (tcp / 465), è possibile decommentare le smtps
linee; in master.cf
tal caso, mantenere le impostazioni simili a submission
quelle della porta.
8. Infine imposta gli alias per il tuo account, modificando /etc/aliases
. L' postmaster
alias è sostanzialmente richiesto; è il punto di contatto se ci sono problemi con il tuo server di posta. Anche il puntamento root
e altri alias simili sono buoni.
Il formato di base è documentato in alias (5):
postmaster: root
admin: root
root: diti
kra: diti
Utilizzare postalias
o newaliases
per aggiornare il database con hash /etc/aliases.db
ogni volta che si modifica questo file.
Ora, hai ancora un account chiamato per diti
quanto riguarda Postfix e Dovecot, ma anche la posta inviata a kra@...
viene inoltrata lì. Alcuni client di posta (ad es. Thunderbird) supportano più "identità" o "personas" per un singolo server di posta, quindi puoi scegliere tra diversi indirizzi "Da:".
Questo è tutto. Potrei tornare più tardi con le istruzioni per procmail, domini virtuali, SPF e / o DKIM.