Keonik1
e1be8a24a1
change "restart nginx" to "reload nginx"
...
https://github.com/chatmail/relay/pull/614#discussion_r2269896158
2026-02-16 14:41:48 +01:00
Keonik1
3896071921
add RECREATE_VENV var
...
https://github.com/chatmail/relay/pull/614#discussion_r2279742769
2026-02-16 14:41:48 +01:00
Keonik1
0d5e544291
add 465 port
...
https://github.com/chatmail/relay/pull/614#discussion_r2279707059
2026-02-16 14:41:48 +01:00
Keonik1
31fc856993
add port 80 to docker-compose-default
...
https://github.com/chatmail/relay/pull/614#discussion_r2279656441
2026-02-16 14:41:48 +01:00
Keonik1
fb798bb6a3
rename dockerfile
...
https://github.com/chatmail/relay/pull/614#discussion_r2270031966
2026-02-16 14:41:48 +01:00
Keonik1
985e98ccb7
Add installation via docker compose (MVP 1)
2026-02-16 14:41:48 +01:00
Jagoda Estera Ślązak
91df11015e
chore(deps): upgrade to filtermail v0.3 ( #850 )
...
## 0.3.0 - 2026-02-14
### Features
- Support legacy, pre-OpenPGP packet format
### Miscellaneous Tasks
- *(dist)* Switch to musl targets
### Refactor
- Remove unnecessary Arc
- Use a custom, minimal SMTP client instead of lettre
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-14 18:02:05 +01:00
link2xt
d4f8a29243
docs: fix link to Maddy and update madmail URL
2026-02-13 09:49:29 +00:00
missytake
0144fc3ea8
postfix: only look for square brackets, they are only allowed for address literals
2026-02-12 10:45:15 +01:00
missytake
e7ce6679b9
postfix: IPv6 literals have a prefix
2026-02-12 10:45:15 +01:00
missytake
d1adf52f89
postfix: also accept self-signed for IPv6-only
2026-02-12 10:45:15 +01:00
missytake
56d0e2ca27
postfix: be more exact with nauta.cu
2026-02-12 10:45:15 +01:00
missytake
2613558db6
postfix uses POSIX EREs, not PCRE, so some stuff doesn't work
2026-02-12 10:45:15 +01:00
missytake
6843fcb1a0
postfix: fix tls policy regexp map
2026-02-12 10:45:15 +01:00
missytake
ff54ad88d8
postfix: use regexp to match IPv4 addresses
2026-02-12 10:45:15 +01:00
missytake
cce2b27ae7
postfix: accept self-signed certificates for IP-only relays
2026-02-12 10:45:15 +01:00
j4n
87022e3681
fix(cmdeploy): check if dns_check_disabled before trying to warn about LE
...
If --skip-dns-check is used and retcode != 0, remote_data is undefined.
2026-02-11 12:13:24 +01:00
j4n
06560dd071
feat(postfix): bind to mail_domain's A/AAAA addresses for outbound mail
...
Carry forward A/AAAA address from the DNS check to the postfix deploy
stage and set accordingly in main.cf.
2026-02-11 12:13:24 +01:00
j4n
1b0337a5f7
fix(cmdeploy): port check: check addresses, fix single services
...
Ensure that the interface for mtail_address is available and fix a bug
in port checking where single services were always passing regardless of
the specified service name.
2026-02-11 09:36:04 +01:00
373[Ø]™
dfcaf415b1
Merge pull request #834 from chatmail/373/fix-dns-resolver-injection
...
fix: remediates issue with improper concat on resolver injection
2026-01-30 23:36:46 +00:00
ccclxxiii
c0718325ef
fix: simplify resolver fix
2026-01-30 22:17:53 +00:00
ccclxxiii
7d72b0e592
fix:[wip] fix concact issue which causes dns failure
2026-01-30 21:10:19 +00:00
373[Ø]™
8f1e23d98e
Merge pull request #832 from chatmail/373/respect-ipv4-ipv6-boolean-config
...
remediates ipv6 boolean not being respected during operations
2026-01-30 17:53:36 +00:00
ccclxxiii
56aaf2649b
chore: fixes bug in dovecot template
2026-01-30 15:52:32 +00:00
ccclxxiii
2660b4d24c
feat: updates postfix for ipv4/v6
2026-01-30 15:27:02 +00:00
ccclxxiii
ea60ecfb57
feat: updates deployers for ipv4/v6 bool
2026-01-30 15:26:45 +00:00
ccclxxiii
2a3a224cc2
feat: adds template for unbound v4/v6
2026-01-30 15:24:26 +00:00
Jagoda Ślązak
e42139e97b
chore(deps): upgrade to filtermail v0.2
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-28 20:46:02 +00:00
Jagoda Estera Ślązak
65b660c413
docs: update information about filtermail ( #824 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-27 13:20:09 +01:00
link2xt
dd2beb226a
test(test_exceed_rate_limit): print timestamps when sending messages
2026-01-26 14:25:06 +00:00
link2xt
9c7508cc33
test: fix flaky test_exceed_rate_limit
...
filtermail rate limiter is using leaky bucket
algorithm (GCRA).
Exceeting the limit requires sending
at least max_user_send_per_minute
messages to exhaust allowed burst,
and then sending messages faster
than the leak rate.
As we don't know how fast is the network
between the server and test runner,
try to send 3 times max_user_send_per_minute
messages to ensure the test does not
fail randomly.
2026-01-26 12:07:10 +00:00
Jagoda Estera Ślązak
ab3492d9a1
feat(filtermail): Replace filtermail with rust reimplementation ( #808 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-23 16:31:45 +01:00
Jagoda Estera Ślązak
032faf0a94
feat(config): Set default internal SMTP ports in Config ( #819 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-23 09:34:16 +01:00
link2xt
c45fe03652
fix(mtail): separate metrics for incoming and outgoing messages
2026-01-22 14:45:33 +00:00
feld
08bf4c234b
Merge pull request #815 from chatmail/dovecot_lmtp_header
...
Dovecot: disable appending the Received header
2026-01-21 12:18:54 -08:00
j4n
2d0ccdb4a3
cmdeploy/{postfix,dovecot}/deployer.py: check config before restarting
...
postfix: also fail on warnings
2026-01-21 16:33:38 +01:00
j4n
3abba6f2fa
dovecot.conf: fix the stats syntax
...
The ! character in != is an invalid token in Dovecot's unified filter
language (2.3.12+). The parser expected a comparison operator (=, >, <)
and choked on !.
2026-01-21 16:33:38 +01:00
missytake
f9aaeb0f42
ci: enable mtail for CI
...
github deployments: be lenient on the whitespace in sed replace of
mtail_address
2026-01-21 16:33:38 +01:00
missytake
e0c44bf04f
Reapply "cmdeploy/dovecot/dovecot.conf.j2: tweak idle/hibernate metrics"
...
This reverts commit 0aa0324c81 .
2026-01-21 16:33:38 +01:00
Mark Felder
8ff53d12cb
Dovecot: disable appending the Received header
...
This suppresses a Received header only applied during LMTP processing
and includes a timestamp.
2026-01-20 15:16:33 -08:00
missytake
0aa0324c81
Revert "cmdeploy/dovecot/dovecot.conf.j2: tweak idle/hibernate metrics"
...
This reverts commit bfcfc9b090 .
2026-01-20 19:11:24 +01:00
j4n
bfcfc9b090
cmdeploy/dovecot/dovecot.conf.j2: tweak idle/hibernate metrics
...
Tune stats collection in tandem with the dashboard.
2026-01-20 17:38:04 +01:00
j4n
e101c36ab4
fix(cmdeploy): comiit typo
2026-01-20 17:38:04 +01:00
j4n
be7aa21039
feat(dovecot): add config flag to export statistics ( #806 )
...
This adds exporting of some dovecot event metrics to help debugging slow IMAP login and hibernation. For now, re-using mtail_address config flag and configure the port of the dovecot exporter to be 3904.
2026-01-16 11:35:19 +01:00
adbenitez
4906b82e44
add --website-only option to run subcommand
2026-01-15 16:58:06 +01:00
missytake
5d49b4c0fd
postfix: also strip Authentication-Results header
2026-01-15 15:41:21 +01:00
missytake
56c8f9faae
tests: add test for stripping DKIM + Authentication-Results headers
2026-01-15 15:41:21 +01:00
Mark Felder
203a7da3f4
Strip DKIM-Signature header before LMTP
...
Currently we strip the DKIM-Signature header in the OpenDKIM final.lua
script after validation of the signature. We sign all messages upon
submission, but we do not verify messages which are from a local account
and delivered to another local account.
This corrects the problem and ensures that the plaintext headers of a
local to local delivery are sanitized the same as a message received
from another server.
The functionality in final.lua to strip the DKIM-Signature header can
now be retired.
2026-01-15 15:41:21 +01:00
missytake
a1667ca54d
Update cmdeploy/src/cmdeploy/postfix/deployer.py
2026-01-15 12:51:29 +01:00
holger krekel
6401bbb32c
fix: properly make sure that postfix gets restarted on failure
2026-01-15 12:51:29 +01:00