185 Commits

Author SHA1 Message Date
Brennan Kinney
ff5b6ee1e3 docs: Revise watchtower page and adapt to community fork (#4641)
* docs: Revise `watchtower` page and adapt to community fork

* docs: Use the GHCR registry for `watchtower`

* chore: Update `CHANGELOG.md`
2026-01-18 15:09:33 +01:00
Cristian SPIRIDON
066d314264 fix: Reload the rspamd service instead of restarting it (#4632)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Cristian Spiridon <scristian71@gmail.com>
2026-01-12 09:08:59 +13:00
FDHoho007
17111a0ea2 fix: LDAP - Enable check-for-changes.sh support (#4627)
* fix: Enable change detection support for `ACCOUNT_PROVISIONER=LDAP`
* fix(test/rspamd_full): Explicitly wait for the `rspamd_proxy` port to be available before testing
2025-12-27 12:15:28 +13:00
Andreas Perhab
5865f546ec tests: fix _get_container_ip for docker 29.0 (#4606) 2025-11-15 10:18:30 +01:00
Brennan Kinney
e5185e0e84 fix: accounts.sh - Support first valid local account (#4581)
- Ensure catch-all alias entries (eg: `@example.test`) are also skipped. Adding a dummy account for catch-all will not match a `quota-status` query to Dovecot by Postfix for a recipient.
- When there are multiple addresses provided, they will now be iterated through by the `,` delimiter, instead of as a single value that fails. This way the first valid aliased address to a local Dovecot mailbox account will now be used for the dummy alias account.
- The common logic for extracting the quota user attribute is now split out to a common function call.
2025-10-08 19:58:49 +00:00
Lars K.W. Gohlke
9eb3fa73e5 fix: Prevent logs leaking into config files (FETCHMAIL_PARALLEL=1) (#4586) 2025-10-06 20:25:13 +02:00
Georg Lauterbach
0cf26f0100 fix: Postfix: disable_dns_lookups => smtp_dns_support_level (#4568) 2025-09-10 09:17:40 +02:00
Georg Lauterbach
c1da4265d3 chore: apt - Migrate format from .list to .sources (DEB822) (#4556)
* chore: switch to `.sources` layout from `.list`

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>

* chore: update CHANGELOG

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>

* Apply suggestions from code review

---------

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2025-08-18 12:45:20 +12:00
Georg Lauterbach
9e4749e718 chore: update externally installed software (#4557) 2025-08-17 13:20:21 +02:00
Georg Lauterbach
da61eb21a3 chore: Remove Pyzor + Razor packages (#4548) 2025-08-17 11:00:01 +02:00
Jam Balaya
c1a5eabc94 chore: fix various typos across codebase (#4552)
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-12 21:55:53 +00:00
Georg Lauterbach
060bf9a474 release: v15.1.0 (#4547)
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-12 23:45:21 +02:00
Georg Lauterbach
e448b5e53e chore: disable F2B postfix-sasl jail (#4535)
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-03 10:37:41 +02:00
RoelSG
b6e5d34cd4 docs: Podman - Document how to setup DMS with Quadlet (#4183)
Merged in it's current state due to time constraints to revise to desired state when the revised docs would still be beneficial to users. Final revision deferred to a follow-up PR.

---------

Co-authored-by: Casper <casperklein@users.noreply.github.com>
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-01 12:24:55 +12:00
fim-sh
7a0b499c18 docs: Fix path in dkim helper script (rspamd) (#4531)
The path was still referring to an internal location used prior to preferring the DMS config volume, this has been corrected.

---------

Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2025-08-01 12:06:40 +12:00
Ivan Filonenko
fcd9909841 fix(fail2ban): configure logrotate only when Fail2Ban is enabled (#4523)
Co-authored-by: Casper <casperklein@users.noreply.github.com>
2025-07-11 17:02:42 +02:00
Andreas Perhab
337ae071d2 open-dkim: use numerical uid and gid for chown (#4517)
Co-authored-by: Casper <casperklein@users.noreply.github.com>
2025-07-10 22:14:39 +00:00
s0ftcorn
e296eb4f26 docs: Revise docs for the OVERRIDE_HOSTNAME ENV (#4492)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2025-06-02 19:22:04 +12:00
Brennan Kinney
ea03808c8f fix: packages.sh - Remove Postfix hostname workaround (#4493) 2025-05-27 23:03:10 +02:00
Brennan Kinney
f6381d3bb0 fix: Ensure DMS config volume can be accessed by non-root users (#4487) 2025-05-23 16:05:20 +12:00
Alessio Artoni
53c36194d9 feat: Enable reading env vars from files (#4359)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-05-17 23:37:43 +02:00
Brennan Kinney
491c30b194 fix: setup email list should only work with ACCOUNT_PROVISIONER=FILE (#4453)
---------

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-04-25 10:06:35 +12:00
litetex
f2e5891b16 feat: Configurable poll rate for check-for-changes.sh (#4450)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Casper <casperklein@users.noreply.github.com>
2025-04-23 18:43:41 +02:00
Brennan Kinney
23bb1c8e50 refactor: setup CLI open-dkim (#4375)
Refactoring this `setup` CLI command as part of the effort to unify our DKIM feature support between OpenDKIM + Rspamd:
- Adds a `main()` method similar to other setup CLI commands.
- Help text more aligned with equivalent rspamd DKIM setup CLI command.
- DRY some repetition such as hard-coded paths to use variables.
- OpenDKIM config files are created / initialized early on now with `_create_opendkim_configs()`. `while` loop only needs to append entries, so is easier to grok.
- `_create_dkim_key()` to scope just the logic (_and additional notes_) to key generation via `opendkim-genkey`
- Now overall logic with the `while` loop of the script occurs in `_generate_dkim_keys()`:
  - Ownership fixes are now applied after the `while` loop as that seems more appropriate than per iteration.
  - Temporary VHOST config is now removed since it's no longer useful after running.
- Tests adjusted for one new log for adding of default trusted hosts content.

Overall this should be nicer to grok/maintain. Some of this logic will be reused for the unified DKIM generation command in future, which is more likely to shift towards all domains using the same keypair by default with rspamd/opendkim config generated at runtime rather than reliant upon DMS config volume to provide that (_still expected for private key_).

---------

Co-authored-by: Casper <casperklein@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-03-31 11:27:28 +02:00
Georg Lauterbach
5027f4f5b6 release: v15.0.2 (#4432)
* chore: prepare for release of v15.0.2

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>

* Update CHANGELOG.md

---------

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2025-03-27 00:09:31 +01:00
Moritz Poldrack
c2c48b2b83 fix: ensure message content is not modified by header filter (#4429) 2025-03-26 12:24:20 +13:00
Georg Lauterbach
70d645d863 release: v15.0.1 (#4423)
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-03-23 01:27:47 +01:00
Brennan Kinney
a3571a88c1 fix: DMS state volume must ensure o+x permission (#4420) 2025-03-18 23:48:12 +01:00
tranquillity-codes
8ca2bd212c chore: Gender-neutral language (#4421)
Co-authored-by: itycodes <tranquillitycodes@proton.me>
2025-03-18 19:08:56 +01:00
Georg Lauterbach
0362fa682e fix: include all files in change detection of Rspamd (#4418) 2025-03-18 00:08:14 +01:00
Brennan Kinney
d0629f4cb6 chore: Revise utility install scripts + add Smallstep step CLI (#4376)
Changes:
- `jaq` should probably live in `/usr/local/bin` with other third-party sourced binaries.
- `swaks` install properly with just `tar`, no `mv` + `rm` needed.
- Added Smallstep `step` CLI. This serves similar purpose to `openssl` commands, but is generally nicer for usage with generation and inspection of certs/keys. I've talked up using in DMS a few times in the past for our TLS helper and unifying DKIM support (_instead of separate OpenDKIM/Rspamd generators_).
- Including `step` for both AMD64 / ARM64 archs needs the alternate naming convention that it's published to GH releases with.
- Added commentary about the `tar` usage. The ownership is a common concern with GH release sources, technically a non-issue when running as `root`
2025-03-03 22:58:42 +01:00
Dmitry R.
1756ba04fb fix: Support chmod on /var/log/mail/* when dir is empty (#4391)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-03-03 21:28:15 +00:00
Georg Lauterbach
ef66dd5d12 release: v15.0.0 (#4373)
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2025-03-01 12:14:57 +00:00
Brennan Kinney
d2d74a29a7 fix: Ensure /var/log/mail permissions + ownership are correct (#4374) 2025-02-18 09:02:35 +13:00
Casper
0ebf820b00 Make deletion of mailbox data opt-in (#4365)
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-02-16 10:46:49 +01:00
Brennan Kinney
425d1162ae chore: packages.sh - Bump versions + housekeeping (#4357) 2025-02-13 13:16:31 +01:00
Georg Lauterbach
59a379aed7 scripts: restructure container restart behavior (#4323)
Signed-off-by: georglauterbach <44545919+georglauterbach@users.noreply.github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-09 10:23:06 +13:00
Casper
e116920f4d Add missing "setup debug getmail" command and documentation (#4346) 2025-02-05 23:10:57 +01:00
Georg Lauterbach
f0daa1c8ab chore: remove VERSION file (#4321) 2025-01-19 01:27:07 +01:00
Brennan Kinney
9f0918c335 fix(packages.sh): swaks --help (#4282)
This command requires the `perl-doc` package to work.
2024-12-07 02:02:35 +13:00
Brennan Kinney
d07e6d67d6 chore: Update jaq to 2.0.0 (#4277)
- Bump to [`jaq` v2 release](https://github.com/01mf02/jaq/releases/tag/v2.0.0), artifact naming convention changed.
- Tidied up the changelog a little bit unrelated to this `jaq` update.
- Fixed a typo with an `rspamd.sh` comment + minor revision to the comment.
2024-11-29 16:12:00 +13:00
Brennan Kinney
c15354058f fix: SASLAuth - Drop services for mysql, shadow, pam auth mechanisms (#4259) 2024-11-20 17:19:58 +13:00
Brennan Kinney
02f1894f74 ci(docs-preview): Acquire PR context via gh CLI (#4267) 2024-11-20 16:37:34 +13:00
pitilux
34eb54ac39 fix: Avoid alias being used as regex during dovecot dummy account userdb detection (#4222)
Applies alternative approach previously suggested by @polarathene and adds test cases to prevent future regressions
2024-10-12 11:34:20 +13:00
Georg Lauterbach
3937e1e719 scripts: improve DKIM path scanning in Rspamd setup (#4201) 2024-09-29 12:18:43 +02:00
Georg Lauterbach
1a938dfb15 Rspamd: update GTube patters in tests (#4191) 2024-09-28 11:27:34 +00:00
Georg Lauterbach
94751e00c9 dependency: update jaq from 1.3.0 to 1.6.0 (#4190) 2024-09-21 21:04:06 +02:00
Brennan Kinney
cace9c56d9 fix: Dovecot LDAP config should exist (#4175)
The config was not copied over during image build, and the associated auth config had a typo for the `mechanisms` key.
2024-09-09 19:00:53 +12:00
Casper
ab2127ba67 chore: Add comments to start-mailserver.sh and stop using inherit_errexit (#4161) 2024-08-19 00:51:44 +02:00
Casper
b2978fd760 breaking: Refactor getmail support (#4156)
Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2024-08-17 12:14:59 +02:00