Un filtro de contenido de Postfix. Lee un mensaje de la entrada estándar, añade los encabezados X-Spam-* y lo pasa a sendmail con el mismo sobre.
Shell
spamscanner filter -f "$sender" -- "$recipient"
Opción
Significado
--sendmail <path>
Predeterminado /usr/sbin/sendmail
--subject-tag <tag>
Añade un prefijo al asunto del spam
--reject
Devuelve el correo que llega al umbral de rechazo en lugar de reenviarlo
--discard
Descarta el correo que llega al umbral de rechazo en lugar de reenviarlo
Los códigos de salida siguen las convenciones de sendmail, que Postfix interpreta: 0 entregado (o descartado), 64 no se indicaron destinatarios, 69 rechazado como spam (Postfix lo devuelve), 75 cualquier fallo, así que Postfix conserva el mensaje y vuelve a intentarlo más tarde.
El puerto 783 es el que usan de forma predeterminada los clientes de SpamAssassin. Los puertos por debajo de 1024 necesitan root o la capacidad CAP_NET_BIND_SERVICE; usa otro puerto, como --port 7833, e indícaselo al cliente.
Opción
Significado
--port <n>
Puerto TCP
--host <ip>
Dirección en la que escuchar (predeterminado 127.0.0.1)
--socket <path>
Escucha en un socket Unix en su lugar
--reject
Milter: rechaza el correo que llega al umbral de rechazo
--reject-code <n>
Milter: 451, reintentar más tarde (el predeterminado), o 550
--quarantine
Milter: retiene el spam en la cuarentena del servidor de correo
--name <hostname>
Milter: el nombre de este servidor en Authentication-Results
--token <secret>
HTTP: exige Authorization: Bearer <secret>; necesario para /learn
--allow-tell
spamd: acepta peticiones TELL (spamc -L spam) para aprender
--out <file>
HTTP y spamd: guarda lo aprendido en este archivo de modelo
--subject-tag <tag>
Milter y spamd: añade un prefijo al asunto del spam
--verbose
Milter: registra cada análisis. Servidor TCP: responde con una línea de texto
llm-test envía al modelo un mensaje normal y dos estafas, en inglés y en italiano, imprime sus veredictos, el tiempo que tardó cada uno, el método usado y el hardware, y termina con 0 solo si acierta los tres.
--config file.json (o la variable de entorno SPAMSCANNER_CONFIG) carga opciones de la biblioteca. Las opciones de la línea de comandos tienen prioridad sobre el archivo.