no connection to backend spamd ? #3
Labels
No labels
bug
enhancement
suggestion
support
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: glts/spamassassin-milter#3
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
with
building
succeeds
setup,
launch
socket's available
spamc config,
test
works as expected
testing postfix receipt 1st with 'spamass-milter', the message is passed via spamc -> spamd, and rejected as expected
replacing spamass-milter ==> spamassassin-milter in postfix config
re-testing, same message, the message is ACCEPTED, NOT rejected,
& I see only
with NO connection to backend spamd.
Yes, the milters differ in their default handling of local connections. SpamAssassin Milter by default does not scan messages that arrive locally, such as when you use the
sendmail
command or similar. From the man page:You can disable this by trusting no networks (
-t
with empty string argument):I noticed in passing that you set a maximum message size in the spamc
config file, but not for spamassassin-milter. However, these should be
kept in sync. The man page says:
adding
does the trick. in logs,
and received msg headers
great. thx!
sure. for the test message, not an issue.
ideally, for me, the max-size(spamassassin-milter) == max-size(spamc)
a 'nice to have' would be an option for spamassassin-milter to capture/use the value set in /path/to/spamc.conf.
also, couple of add'l usage comments
(1)
the option to set the milter reject message is fairly important. e.g, in spamass,
(2)
the option to immediately reject ONLY above a given spam threshhold, e.g. ">= 10"
rather than just reject all or none, is useful
Absolutely. On the spamassassin-milter side, the purpose of the message
size limit is to be able to skip transmission of very large messages to
the spamd backend … I haven’t yet thought of a good way to keep these in
sync.
Yes, the current reply code and message is defined here:
https://gitlab.com/glts/spamassassin-milter/-/blob/0.1.2/src/client.rs#L268-270
As noted in the comment, these choices are intentional, and follow the
RFC recommendations and style (for example, concealing the name
‘SpamAssassin’ in user-facing messages). I agree that it is easy and
perhaps sensible to make this (at least the message) customisable.
This is a spamass-milter feature that I initially decided to leave out.
This may be useful and perhaps nice to have, but before we add this it
would be good to know more about the motivation.
Thank you for giving this a try!
thinking 1st about 'usage'.
something like ...
as options to spamassassin-milter config
(1) -B
(2) -B /path/to/spamc.conf
if == , set spamassassin-milter value ==
if == /path/to/spamc.conf, parse the file
I can certainly change it there b4 cargo build,
my personal preference is, e.g.,
that,
rather than trying to guess at a unierally 'useful' default, it's just simpler to have the option to define the reply.
I have split postfix instances. The 'frontend' instance handles ALL the filtering -- postscreen, milters, policy, etc.
ONLY what's passable -- fitting my policy choices -- gets sent to my 'backend' postfix instance, which then forwards locally to IMAP.
End-users subscribe to their IMAP stores, and drag mischararcerized spam in-to/out-of their Junk folders.
That action sends a forwarding message back to the front-end instance, which submits the recharacterized message to Spamassassin's Bayes learning.
Other than that user action, I want NO unneeded processing on the backend.
For all this^ to work I only 'forward' messages from front-end to back-end below a policy-defined spam-score of XX (for my 'tuned' SpamAssassin, it's = 10).
It's NOT the only way to do the learning, for sure ... but having the absolute cutoff as an option is, for my use case, a _really_useful_feature, if not an absolute requirement.
All right, let’s look into customising the reply text first. Should be easy, I will push something later.
great, thx!
looks like 3 params are useful:
after taking a much closer look at building/installing/using other options
spamass-milter, spamc-milter, spampd, etc
i think more clearly understand why you've built this project.
there are some ... questionable choices, imo ... that've been made in the other proj's. &/or .... just really old re: tech & assumptions.
i've not used rust at all; other than to build this^.
taking a 1st look so as to be more helpful ...
Yeah, I’ve only used spamass-milter. It has a 20 years history or so
(and it shows) … Anyway, a pleasant surprise to see someone else try
this project, I appreciate the feedback.
just a bit of 'measured data' ...
'tho the vast_majority of spam's dealt with before a queued message even touches spamassassin/milter, there's still a not-insignificant amount that sneaks past -- and SA deals with.
in ~ 5 days now of using this^, and (atm) not discarding with milter below a set threshhold, ~ 100-ish messages got tagged as spam > threshhold, and sent to the backend. ending up in User:Junk mail folder.
that's for just one account, atm.
most do not contain large attachments; some do. in any case, not a lot of traffic.
but it's unnecessary, and -- at scale -- will grow accordingly.
i.e., here, SA is still a necessary part of the clean-up, and "< thresshold" reject is a necessary feature.
mentioned in issue #4
The original question has been answered, and some of the issues discussed have been addressed in one way or another.
I’m closing this issue but feel free to open follow-up issues if necessary.