OpenDKIM auf Fedora Server, opendkim-testkey lädt den Schlüssel, sagt, dass es ihn prüft, und sagt dann nur „Abfrage fehlgeschlagen“. Wie finde (und behebe) ich den Fehler?

OpenDKIM auf Fedora Server, opendkim-testkey lädt den Schlüssel, sagt, dass es ihn prüft, und sagt dann nur „Abfrage fehlgeschlagen“. Wie finde (und behebe) ich den Fehler?

Auf Fedora Server37 (Stand ca. 1. Februar 2023) OpenDKIMwurde eine Neuinstallation durchgeführt (Version v2.11.0). Die Konfiguration umfasste das Erstellen einer Signaturtabelle und einer Schlüsseltabelle, das Erstellen eines Schlüssels sowie dessen Veröffentlichung in DNS. So weit, so gut...

Ich bin an dem Punkt angelangt, an dem Sie es testen können, opendkim-testkeyund dies ist fehlgeschlagen.

Als ich es das erste Mal ausführte, beschwerte es sich über „unsichere Berechtigungen“, was es jedoch nicht stoppte. Ich konzentrierte mich jedoch eine Weile darauf; NICHTS, was ich tat – das Ändern von Eigentümerschaften und Berechtigungen in einem halben Dutzend oder mehr Permutationen – ließ diesen Fehler verschwinden, also zum Teufel damit!

Ich habe erkannt, dass in der Signaturtabelle ein Fehler aufgetreten sein muss, und habe daher eine kleine Änderung vorgenommen. ... Anscheinend wird die Verwendung von „_domainkey“ verlangt, obwohl die offizielle Dokumentation nicht besagt, dass dies erforderlich ist, und es völlig unnötig erscheint, dies zu tun, aber anscheinend ist dies erforderlich. Und ich denke, das ist so, denn als ich mit der scheinbar albernen Hinzufügung dieses „_domainkey“-Textes zum Eintrag in der Signaturtabelle einverstanden war, kam es weiter und sagt jetzt zumindest, dass es das richtige lädt keyfile. Trotzdem erhalte ich immer noch den Fehler „Abfrage fehlgeschlagen“.

Um es klar zu sagen, die Sitzung läuft folgendermaßen ab:

opendkim-testkey -d some-fqdn.com -s default -vvvvvvv
opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: /etc/opendkim/keys/some-fqdn.com/<prefix>.private: WARNING: unsafe permissions
opendkim-testkey: key loaded from /etc/opendkim/keys/some-fqdn.com/<prefix>.private
opendkim-testkey: checking key 'default._domainkey.some-fqdn.com'
opendkim-testkey: 'default._domainkey.some-fqdn.com' query failed

Nun, danke für den Hinweis opendkim-testkey!

Ich habe nichts Hilfreiches bekommen systemctl status opendkim.service– es heißt, der Status sei „aktiv (wird ausgeführt)“ ohne Fehler. Also habe ich das Protokoll (in diesem Fall /var/log/messages) überprüft und es gab einige Einträge. Um sicherzugehen, dass sie aktuell sind, habe ich einen Befehl opendkimmit systemctl reloadwhile grepping durchlaufen tail -fund Folgendes erhalten:

Mar  5 11:17:21 fs1 systemd[1]: Started opendkim.service - DomainKeys Identified Mail (DKIM) Milter.
Mar  5 11:17:21 fs1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='unit=opendkim comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Mar  5 11:17:22 fs1 abrt-notification[3173323]: Process 348313 (opendkim) crashed in _nl_load_domain.cold()

WHOAH! Abgestürzt? Warum heißt es dann, dass es läuft?! Seltsam!

Einige Untersuchungen zeigen, dass _nl_load_domain.cold() tatsächlich eine C++-Funktion ist.

Die Funktionsdefinition beginnt:

internal_function
_nl_find_domain (const char *dirname, char *locale,
         const char *domainname, struct binding *domainbinding)
{
  struct loaded_l10nfile *retval;
  const char *language;
  const char *modifier;
  const char *territory;
  const char *codeset;
  const char *normalized_codeset;
  const char *alias_value;
  int mask;

Das reicht, um den Kerl denken zu lassen: „Hmmm … was jetzt?!“

opendkim(Beachten Sie, dass die betreffende Domäne – mit Ausnahme von ! – mit einem ziemlich robusten Live- Zugriff einwandfrei funktioniert DNS zoneUND dass das betreffende System vollen Zugriff auf DNSAbfragen hat.)

NOTIZ OpenDKIMvalidiert eingehende E-Mail- DKIMSchlüssel problemlos! Ich muss nur noch dafür sorgen, dass auch der Signaturteil funktioniert!

verwandte Informationen