Come configurare correttamente postfix e opendkim e lasciare che il server di ricezione sia in grado di conoscere tutti i dettagli inviati dal firmato?

Che cosa sto cercando di raggiungere – Bottomline: le mail per andare in posta in arrivo piuttosto cartella di spam.

Ho un server che esegue postfix (server di posta) e ho 3 domini. Il server di posta viene utilizzato sia per posta in arrivo che in output.

  • Inoltra un'email dalla row di command in Linux
  • Quando si interrompe il servizio Archivio informazioni di Exchange, cosa è interessato?
  • Cosa fare se non si desidera ricevere il rimbalzo di posta elettronica?
  • Postfix Connection Terminato
  • Come ho configurato il postfix e l'utilizzo di SES e sono comunque in grado di inoltrare email da indirizzi esterni non verificati?
  • Imansible submit o ricevere posta elettronica con Postfix (time out)
  • Sto firmando con opendkim e ho registrato i record DNS.

    Dopo una lunga osservazione, ho capito che i messaggi stanno andando in spam a causa di un errato affrancatura inviata e firmata.

    consideri che il mio server di posta sia mailserver.example.com e altri 3 domini siano example1.com, example2.com e example3.com

    quando qualcuno invia un'email da admin@example1.com, dovrebbe essere visualizzato:

    admin@example1.com tramite mailserver.example.com

    mailed-by: mailserver.example.com

    firmato da: example1.com

    Ho osservato che mailjet e email di amazon difficilmente entrano nello spam, forse è forse perché l'hostname / ip inverso origine risolve a ciò che sono inviati e firmati.

    File di configuration:

    /etc/opendkim/Keytable

     mvs._domainkey.example1.com example1.com:selc:/etc/opendkim/keys/example1_com/selc.private mvs._domainkey.example2.com example2.com:selc:/etc/opendkim/keys/example2_com/selc.private 

    /etc/opendkim.conf

     Domain example1.com KeyFile /etc/opendkim/keys/example1_com/selc Selector selc Domain example2.com KeyFile /etc/opendkim/keys/example2_com/selc Selector selc Canonicalization simple Mode sv Syslog yes LogWhy yes UMask 022 UserID opendkim:opendkim KeyTable /etc/opendkim/KeyTable SigningTable /etc/opendkim/SigningTable ExternalIgnoreList /etc/opendkim/TrustedHosts InternalHosts /etc/opendkim/TrustedHosts Socket inet:34562@localhost X-Header no 

    e infine

    /etc/opendkim/SigningTable

     example1.com selc._domainkey.example1.com example2.com selc._domainkey.example2.com 

    Dove mi manca?

    One Solution collect form web for “Come configurare correttamente postfix e opendkim e lasciare che il server di ricezione sia in grado di conoscere tutti i dettagli inviati dal firmato?”

    Prima di tutto, rimuovi questi valori (non sono necessari se si utilizza KeyTable):

     Domain example1.com KeyFile /etc/opendkim/keys/example1_com/selc Selector selc Domain example2.com KeyFile /etc/opendkim/keys/example2_com/selc Selector selc 

    Imposta la tua chiave come quella:

     mykey1 example1.com:recordname1:/path/to/domain.key mykey2 example2.com:recordname2:/path/to/domain.key 

    Imposta la tua tabella di firma come quella (nota la corrispondenza di wildcard e mykey1 e mykey2 da KeyTable ):

     *@example1.com mykey1 *@example2.com mykey2 

    E infine cambiare il tuo opendkim.conf per includere SigningTable tramite refile : prefisso (supporto espressioni regolari):

     SigningTable refile:/etc/opendkim/SigningTable 

    E il record di dominio per riferimento (note recordname1 e recordname2 da KeyTable ):

     recordname1._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=..." recordname2._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=..." 

    Inoltre, per favore, controlla se hai il nome del tuo nodo (da cui stai inviando la posta) nel file InternalHosts :

     server1.example1.com server2.example2.com mail.example1.com mail.example2.com 

    Ancora una volta, puoi utilizzare il prefabbricato: per aggiungere qualcosa come:

     *.example1.com *.example2.com 

    se hai più host e non vuoi includerli tutti manualmente. Se accetti solo posta locale, qui devi aggiungere localhost .

    DKIM dovrebbe controllare il file di log per ignorare la firma se il tuo host manca nel file InternalHosts .

    Esempio di opendkim.conf:

     # Set these values (Syslog, SyslogSuccess, LogWhy) for debugging and check syslog for details Syslog yes SyslogSuccess yes LogWhy yes UMask 002 UserID opendkim:opendkim KeyTable /etc/opendkim/KeyTable SigningTable refile:/etc/mail/SigningTable InternalHosts refile:/etc/mail/hosts 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.