pyspf-milter(8)
β¨ pyspf-milter β SPF checking filter for MTAs β¨
okay so bestie, pull up a chair π this is the manual page for pyspf-milter, a member of the System Manager's Manual family (section 8, the big-kid section, we love that for her). She's version 3.1.0 and she's here to do exactly one thing extremely well: check your SPF. periodt.
πΈ SYNOPSIS πΈ
pyspy-milter [configfile]
yes, it literally says pyspy-milter in here and I am not fixing it, that's the original, we respect the original, no cap π
π DESCRIPTION π
pyspf-milter implements the SPF standard for checking e-mail messages on a (mostly) per-domain basis. mostly!! per-domain!! she's doing her best and her best is iconic.
She uses the milter interface β which was originally distributed as part of version 8.11 of sendmail(8) β to provide SPF checking services for mail transiting a milter-aware MTA. so like, your mail walks past her in the hallway and she checks its fit before it's allowed to go anywhere. main character energy tbh π«Ά
π OPTIONS π
- See
policyd-spf.conf (5)for information about available options. that's where all the actual config lives bestie, go read that one, she's the one with the lore. - With the exception of specifying the configuration file to use,
pyspf-milterdoes not support command line option switches. nope! none! not one! she said no switches, only vibes π
π₯ NOTES π₯
When using DNS timeouts, be sure not to use a timeout that is larger than the timeout being used for interaction between sendmail and the filter.
Otherwise, the MTA could abort a message while waiting for a reply from the filter β which in turn is still waiting for a DNS reply. π
bestie this is the classic everyone-waiting-on-everyone-else standoff. don't do it. keep your DNS timeout smaller. fr fr.
π EXIT STATUS π
Filter exit status codes are selected according to sysexits(3). that's the one, that's the source of truth, go look π
π¦ HISTORY π¦
SPF is an amalgam of several earlier proposals. It was originally specified in RFC 4408. The current specification is RFC 7208. β¨
The SPF related processing was developed for use with the Postfix unique policy service in the pypolicyd-spf project. When the milter interface was added, the project was renamed SPF Engine. a rebrand!! she ate that π
π COPYRIGHT π
Copyright (c) 2005-2008, Sendmail, Inc. and its suppliers. All rights reserved.
Copyright (c) 2009-2013, 2015, The Trusted Domain Project. All rights reserved.
Copyright (c) 2018, 2019, 2022 Scott Kitterman <scott@kitterman.com>
β SEE ALSO β
policyd-spf.conf(5),sendmail(8)- Sendmail Operations Guide
RFC5321- Simple Mail Transfer ProtocolRFC5322- Internet MessagesRFC7208- Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1RFC7601- Message Header Field for Indicating Message Authentication Status
okay that's the whole page, you made it, I'm so proud of you π₯Ήπ this was pyspf-milter out of the System Manager's Manual, version 3.1.0 β sending you all the slay, go check some SPF bestie, mwah πβ¨
π¦ where this page comes from
- debian trixie: pyspf-milter 3.1.0-2
- epel 10: pypolicyd-spf-milter 3.1.0-6.el10_2 Β· Apache-2.0
- fedora 43: pypolicyd-spf-milter 3.1.0-7.fc43 Β· Apache-2.0
- fedora 44: pypolicyd-spf-milter 3.1.0-8.fc44 Β· Apache-2.0
- nixos 26.05: spf-engine 3.1.0
- nixpkgs unstable: spf-engine 3.1.0
- ubuntu questing: pyspf-milter 3.1.0-2
- ubuntu resolute: pyspf-milter 3.1.0-2build1
- ubuntu stonking: pyspf-milter 3.1.0-4 Β· GPL-2.0-only OR Apache-2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms