Message not signed with DKIM

Give me output of these 2 (frist go to cd /etc/opendkim)

cat KeyTable
cat SigningTable

then what do you have in ls -la /etc/opendkim/keys

Also output of opendkim -n

Output of ls -la /etc/opendkim/keys

Output of cat SigningTable

Output of cat KeyTable

opendkim -n gave no output

Go on command line and run

journalctl -f | grep opendkim

Then send email from snappy mail, do you get an output like

root@cyberpanel:~# journalctl -f | grep dkim
Jan 10 10:49:17 opendkim[579]: 3447740AAD: DKIM-Signature field added (s=default,


Here’s what I got.

It means messages are not being signed…

What if you do same procedure with

journalctl -f | grep postfix

What I got

I see, it seems that connection to opendkim milter is being refused as you can see on second line.

what is content of /etc/opendkim.conf ?

Also check if any process using port 8891 ?

how can I check any process using 8891?

content of /etc/opendkim.conf

Syslog			yes
SyslogSuccess		yes

Canonicalization	relaxed/simple
OversignHeaders		From

UserID			opendkim
UMask			007

Socket  inet:8891@localhost

PidFile			/run/opendkim/

TrustAnchorFile		/usr/share/dns/root.key

Mode	sv
Canonicalization	relaxed/simple
KeyTable	refile:/etc/opendkim/KeyTable
SigningTable	refile:/etc/opendkim/SigningTable
ExternalIgnoreList	refile:/etc/opendkim/TrustedHosts
InternalHosts	refile:/etc/opendkim/TrustedHosts

Make the file look like this then restart opendkim systemctl restart opendkim also restart postfix, then check.

I did as you asked me to, but somehow email delivered to Gmail spam, mail-tester also reported DKIM isn’t signed yet, also I get this on my terminal

You can contact our support here. Looks like your OpenDKIM service is not working as it should.

Okay. Thanks

@lesupremo we are still waiting for your ticket

@usmannasir i have the same issue.

@lesupremo did you found any solution to that issue?

@shoaibkk i tried again with DKIM records but as the OP says, it is not working on my end too.

In difference from the original OP I manage the DNS from cloudflare and not from Cyber Panel

For me also journalctl -f | grep opendkim didn’t report anything after sending mail from snappymail.

But in my case the output of journalctl -f | grep postfix didn’t report any warning about opendkim milter refused.

I don’t see any warning either, kindly show your postfix main conf.

root@EAKTEAM-PRIVATE-SERVER:~# cat /etc/postfix/

Global Postfix configuration file. This file lists only a subset

of all parameters. For the syntax, and for a complete parameter

list, see the postconf(5) manual page (command: “man 5 postconf”).

For common configuration examples, see BASIC_CONFIGURATION_README

and STANDARD_CONFIGURATION_README. To find these documents, use

the command “postconf html_directory readme_directory”, or go to

For best results, change no more than 2-3 parameters at a time,

and test if Postfix still works after every change.

queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix/sbin
data_directory = /var/lib/postfix
mail_owner = postfix
inet_protocols = ipv4
mydestination = localhost, localhost.localdomain
unknown_local_recipient_reject_code = 550
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
debug_peer_level = 2
debugger_command =
ddd $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.10.1/samples
readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES

myhostname =
mynetworks =
message_size_limit = 30720000
virtual_alias_domains =
virtual_alias_maps = proxy:mysql:/etc/postfix/, mysql:/etc/postfix/
virtual_mailbox_domains = proxy:mysql:/etc/postfix/
virtual_mailbox_maps = proxy:mysql:/etc/postfix/
virtual_mailbox_base = /home/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem
smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem
virtual_create_maildirsize = yes
virtual_maildir_extended = yes
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
inet_interfaces = all
smtp_tls_security_level = may
disable_vrfy_command = yes
smtpd_milters = inet:
non_smtpd_milters = $smtpd_milters
milter_default_action = accept

tls_server_sni_maps = hash:/etc/postfix/
header_checks = regexp:/etc/postfix/header_checks


What if you remove last two lines restart postfix and try?