mox/imapserver
Mechiel Lukkien 9419ee15dd
slow down connections for spammy deliveries, and too many failed authentications, and sleep for 15 seconds before delivering messages by first-time senders
similar to greylisting, but not quite the same: with greylisting you would
always reject the first delivery attempt with a temporary failure. with the
hope that spammers won't retry their deliveries. the spams i've been receiving
seem to be quite consistent though. and we would keep rejecting them anyway.

we slow down the spammy connections to waste some of the resources of a
spammer. this may slow their campaigns down a bit, leaving a bit more time to
take measures.

we do the same with connections that have their 3rd authentication failure,
typically password guess attempts.

when we accept a message by a first-time sender, we sleep for 15 seconds before
actually delivering them. known-good senders don't have to wait. if the message
turns out to be a spammer, at least we've consumed one of their connections,
and they cannot deliver at too high a rate to us because of the max open
connection limit.
2023-02-08 21:45:32 +01:00
..
append_test.go mox! 2023-01-30 14:27:06 +01:00
authenticate_test.go support cram-md5 authentication for imap and smtp 2023-02-05 16:29:03 +01:00
copy_test.go mox! 2023-01-30 14:27:06 +01:00
create_test.go mox! 2023-01-30 14:27:06 +01:00
delete_test.go mox! 2023-01-30 14:27:06 +01:00
error.go mox! 2023-01-30 14:27:06 +01:00
expunge_test.go mox! 2023-01-30 14:27:06 +01:00
fetch.go mox! 2023-01-30 14:27:06 +01:00
fetch_test.go mox! 2023-01-30 14:27:06 +01:00
fuzz_test.go mox! 2023-01-30 14:27:06 +01:00
idle_test.go mox! 2023-01-30 14:27:06 +01:00
list.go mox! 2023-01-30 14:27:06 +01:00
list_test.go mox! 2023-01-30 14:27:06 +01:00
lsub_test.go mox! 2023-01-30 14:27:06 +01:00
move_test.go mox! 2023-01-30 14:27:06 +01:00
pack.go add two new log levels for tracing sensitive auth protocol messages, and bulk data messages 2023-02-03 20:33:19 +01:00
parse.go mox! 2023-01-30 14:27:06 +01:00
prefixconn.go mox! 2023-01-30 14:27:06 +01:00
protocol.go mox! 2023-01-30 14:27:06 +01:00
protocol_test.go mox! 2023-01-30 14:27:06 +01:00
rename_test.go mox! 2023-01-30 14:27:06 +01:00
search.go mox! 2023-01-30 14:27:06 +01:00
search_test.go mox! 2023-01-30 14:27:06 +01:00
selectexamine_test.go mox! 2023-01-30 14:27:06 +01:00
server.go slow down connections for spammy deliveries, and too many failed authentications, and sleep for 15 seconds before delivering messages by first-time senders 2023-02-08 21:45:32 +01:00
server_test.go slow down connections for spammy deliveries, and too many failed authentications, and sleep for 15 seconds before delivering messages by first-time senders 2023-02-08 21:45:32 +01:00
starttls_test.go mox! 2023-01-30 14:27:06 +01:00
status_test.go mox! 2023-01-30 14:27:06 +01:00
store_test.go mox! 2023-01-30 14:27:06 +01:00
subscribe_test.go mox! 2023-01-30 14:27:06 +01:00
unselect_test.go mox! 2023-01-30 14:27:06 +01:00
unsubscribe_test.go mox! 2023-01-30 14:27:06 +01:00
utf7.go mox! 2023-01-30 14:27:06 +01:00
utf7_test.go mox! 2023-01-30 14:27:06 +01:00