У меня проблема из-за того, что opendkim testkey возвращает ошибку «неверный тип набора данных», если я не передаю домен и селектор команде. Почему это происходит? Подробности ниже:
Без домена и селектора:
root@condor1796 /etc/opendkim # sudo -u opendkim opendkim-testkey -vvvv
opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: invalid data set type
root@condor1796 /etc/opendkim #
с указанным доменом и селектором:
root@condor1796 /etc/opendkim # sudo -u opendkim opendkim-testkey -vvvv -d numbeo.com -s mail
opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: checking key 'mail._domainkey.numbeo.com'
opendkim-testkey: key not secure
opendkim-testkey: key OK
Ключ небезопасный вывод, как я узнал в другом нить:
«Ключ небезопасен» не указывает на ошибку. Это ожидаемое последствие неиспользования DNSSSEC.
Это мой файл конфигурации:
root@condor1796 /etc/opendkim # cat /etc/opendkim.conf
OversignHeaders From
TrustAnchorFile /usr/share/dns/root.key
AutoRestart Yes
AutoRestartRate 10/1h
UMask 002
Syslog yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:12301@localhost
И это файлы, на которые есть ссылки:
root@condor1796 /etc # sudo -u opendkim cat /etc/opendkim/KeyTable
mail._domainkey.numbeo.com numbeo.com:mail:/etc/opendkim/keys/numbeo.com/mail.private
root@condor1796 /etc # sudo -u opendkim head -n 2 /etc/opendkim/keys/numbeo.com/mail.private
-----BEGIN RSA PRIVATE KEY-----
MIICXgIBAAKBgQDPqBmXSBbSXdmDIOqriDqI7/HJz1AqJNjK+Jqd0EQHEmXS5BHB
root@condor1796 /etc # sudo -u opendkim cat /etc/opendkim/SigningTable
*@numbeo.com mail._domainkey.numbeo.com
Есть идеи, почему я получаю сообщение об ошибке с opendkim-testkey, если я не указываю домен и селектор?
Я решил проблему. Эта ветка помогла:
opendkim.conf должна иметь эту строку
KeyTable /etc/opendkim/KeyTable
(без префикса refile: /)
Теперь это работает:
root@condor1796 /etc # sudo -u opendkim opendkim-testkey -vvvv
opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: record 0 for 'numbeo.com' retrieved
opendkim-testkey: checking key 'numbeo.com'
opendkim-testkey: key numbeo.com: OK
opendkim-testkey: key numbeo.com not secure
opendkim-testkey: 1 key checked; 1 pass, 0 fail