Saltar al contenido
ecdsa.com
OpenDKIM (Authentication-Results); mailauth reports syntax errors as dkim=neutralDKIM

Mensaje de error

dkim=permerror

También se muestra como

  • dkim=neutral (signature syntax error)

OpenDKIM escribe un simple `dkim=permerror` sin motivo (reproducido con firmas sin `bh=`, con `v=2`, con un `a=` desconocido y con `i=` fuera de `d=`). mailauth notifica los problemas de sintaxis como `dkim=neutral` con un comentario que nombra el problema o, en su defecto, «signature syntax error».

Qué significa

La firma DKIM no se pudo evaluar en absoluto, y reintentar no servirá de nada: el encabezado `DKIM-Signature` tiene un error de sintaxis o infringe las reglas del RFC 6376 (falta una etiqueta obligatoria como `bh=` o `b=`, la versión es desconocida, el algoritmo no es compatible, la identidad `i=` está fuera del dominio `d=`, `From` no está entre los encabezados firmados), o el registro de la clave pública no se puede usar. El RFC 8601 lo llama error permanente. A efectos de DMARC, no es un resultado pass.

Por qué ocurre

Cómo solucionarlo

  1. 1.

    Listar las etiquetas de la firma

    Deshaz el plegado del encabezado y comprueba las etiquetas obligatorias y sus valores; el depurador de DKIM lo hace y nombra la etiqueta problemática.

    bash
    # Show the DKIM-Signature as one line and list its tags
    awk '/^DKIM-Signature:/{p=1} p&&/^[^ \t]/&&!/^DKIM-Signature:/{p=0} p' message.eml | tr -d '\r\n\t' | tr ';' '\n'
    # required: v=1 a= b= bh= d= h= (containing "from") s=
  2. 2.

    Usar una configuración estándar del firmante

    RSA-SHA256 (opcionalmente junto con Ed25519), `From` firmado (y sobrefirmado) y una implementación de firma con mantenimiento en lugar de código propio.

    text
    # OpenDKIM signer: standard algorithm, From always signed
    SignatureAlgorithm  rsa-sha256
    OversignHeaders     From
    Canonicalization    relaxed/simple

Errores relacionados

Explorar toda la base de datos de errores de firma