Configuring DKIM signing in MDaemon

DomainKeys Identified Mail (DKIM) is an open protocol for protecting email users against email address identity theft and email message content tampering. It does this by providing positive identification of the signer’s identity along with an encrypted “hash” of the message content.
To configure and use DKIM: 
  1. The system administrator creates a private/public key pair for the server and publishes the public key in the domain’s domain name server.
  2. Using the private key, the sending server creates a signature for each outgoing message. The resulting signature data is stored in a “DKIM-Signature” header within the message.
  3. The receiving server obtains the signature from the “DKIM-Signature” header and verifies it using the signer’s public key.

To configure and use DKIM in MDaemon:
  1. Open the Security menu from the MDaemon interface
  2. Select SPF & SenderID / DomainKeys & DKIM / HashCash…
  3. Select the DK & DKIM (signing) tab
  4. Enable Sign outgoing messages with DomainKeys Identified Mail (DKIM)
  5. Click the Create new public and private keys to have MDaemon generate the public key your DNS server needs for DKIM checks and the private one that MDaemon uses. (If you have done this already for DomainKeys you will want to skip this step)
  6. A confirmation window will appear, click yes to continue.
  7. After MDaemon creates the key pair, the readme will display on screen showing the public keys that need to be entered into your DNS server.  It is also saved to \MDaemon\Pem\MDaemon\dns_readme.txt
  8. Enter this public key from the readme into your DNS server as a TXT record. The instructions on how to edit your DNS records will vary based on what DNS software you are using. Do NOT use the DKIM ssp record for DNS section of the file. Use the example information below as a template for creating your DNS entries. The DKIM standard has changed, and MDaemon 9.x and below generates outdated examples using SSP (Sender Signing Practices) rather than ADSP (Author Domain Signing Practices). 
There are different ways to set up your DNS record depending on how strict you want the DKIM policy for your domain to be. 
DKIM Legend (you can use these signing policies with DKIM):

      dkim=unknown     – The domain might sign some or all email
      dkim=all               – All mail from the domain is signed
      dkim=discardable – All mail from the domain is signed and receivers are
                                   encouraged to discard unsigned mail

Example DNS data for policy using DKIM:

  • If all outbound mail for is signed: IN TXT 'dkim=all'
  • If all outbound mail for is signed and unsigned mail should be discarded: IN TXT 'dkim=discardable'
  • If some outbound mail for might not be signed: IN TXT 'dkim=unknown'



Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.