Commit graph

831 commits

Author SHA1 Message Date
Brennan Kinney
73ca10c7f5
Apply suggestions from code review 2025-08-17 11:55:38 +02:00
Georg Lauterbach
9da2a1fcd6
fix: Postfix: disable_dns_lookups => smtp_dns_support_level
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:38 +02:00
Georg Lauterbach
6186c2c993
chore: Dovecot: adjust main auth-passwd.inc file
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:37 +02:00
Georg Lauterbach
e0d33b4892
fix: Dovecot: remove verbose_ssl
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:37 +02:00
Georg Lauterbach
0b9ec82f70
fix: Dovecot: split mail_location
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:37 +02:00
Georg Lauterbach
b1fcd25950
fix: Dovecot: adjust mail_plugins
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:36 +02:00
Georg Lauterbach
302a1f27ca
fix: Dovecot: ssl config
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:36 +02:00
Georg Lauterbach
dff0338073
chore: Dovecot: disable_plaintext_auth => auth_allow_cleartext
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:36 +02:00
Georg Lauterbach
3b93d3eebf
fix: remove deprecated configuration from Postfix
Error as posted by Postfix:

```txt
postconf: warning: /etc/postfix/main.cf: support for parameter "smtpd_tls_dh1024_param_file" will be removed; instead, do not specify (leave at default)
```

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:35 +02:00
Georg Lauterbach
b1c88fadfa
chore: do not use Rspamd community repo as of now
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:35 +02:00
Georg Lauterbach
1de6b46a80
fix: set proper default for DOCECOT_COMMUNITY_REPO in packages.sh
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:35 +02:00
Georg Lauterbach
5db29f61f7
fix: update package name for LZ4 compat package
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:34 +02:00
Georg Lauterbach
716d0e0455
fix: move early instructions into packages.sh
This is required because `adduser` is not available by default on Debian
13.

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:34 +02:00
Georg Lauterbach
82a789a1dc
chore: update VERSION_CODENAME in packages.sh
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-17 11:55:34 +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)
Some checks failed
Lint / lint (push) Waiting to run
Build, Test & Deploy / Build AMD64 Image (push) Has been cancelled
Documentation / Deploy Docs (push) Has been cancelled
Build, Test & Deploy / Test AMD64 Image (push) Has been cancelled
Build, Test & Deploy / Publish AMD64 and ARM64 Image (push) Has been cancelled
Documentation / Update `versions.json` if necessary (push) Has been cancelled
Documentation / update `latest` symlink if necessary (push) Has been cancelled
Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-12 21:55:53 +00:00
Georg Lauterbach
e448b5e53e
chore: disable F2B postfix-sasl jail (#4535)
Some checks failed
Build, Test & Deploy / Build AMD64 Image (push) Has been cancelled
Documentation / Deploy Docs (push) Has been cancelled
Lint / lint (push) Has been cancelled
Build, Test & Deploy / Test AMD64 Image (push) Has been cancelled
Build, Test & Deploy / Publish AMD64 and ARM64 Image (push) Has been cancelled
Documentation / Update `versions.json` if necessary (push) Has been cancelled
Documentation / update `latest` symlink if neccessary (push) Has been cancelled
Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-08-03 10:37:41 +02:00
Ivan Filonenko
fcd9909841
fix(fail2ban): configure logrotate only when Fail2Ban is enabled (#4523)
Some checks failed
Build, Test & Deploy / Build AMD64 Image (push) Has been cancelled
Lint / lint (push) Has been cancelled
Build, Test & Deploy / Test AMD64 Image (push) Has been cancelled
Build, Test & Deploy / Publish AMD64 and ARM64 Image (push) Has been cancelled
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)
Some checks are pending
Build, Test & Deploy / Build AMD64 Image (push) Waiting to run
Build, Test & Deploy / Test AMD64 Image (push) Blocked by required conditions
Build, Test & Deploy / Publish AMD64 and ARM64 Image (push) Blocked by required conditions
Lint / lint (push) Waiting to run
Co-authored-by: Casper <casperklein@users.noreply.github.com>
2025-07-10 22:14:39 +00:00
Brennan Kinney
8fa6e6deba
chore: Avoid logging a warning when LOG_LEVEL is unset (#4497) 2025-06-02 17:01:00 +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
Brennan Kinney
a0e0013260
chore: Typo fix for debug log (#4480) 2025-05-21 11:50:05 +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
Moritz Poldrack
c2c48b2b83
fix: ensure message content is not modified by header filter (#4429) 2025-03-26 12:24:20 +13:00
Brennan Kinney
a3571a88c1
fix: DMS state volume must ensure o+x permission (#4420) 2025-03-18 23:48:12 +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
7c680a0fbc
fix: start-mailserver.sh requires mail_state.sh to be sourced on restarts (#4417) 2025-03-16 15:34:51 +01:00
Brennan Kinney
02f068b2b2
fix: Use correct Postfix parameter for postfix-receive-access.cf (#4399) 2025-03-05 11:00:06 +13: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
Brennan Kinney
5686a4097a
fix: setup email restrict configs should only prepend once (#4379)
* fix: `setup email restrict` configs should only prepend once

* chore: Prepend to our custom parameter variant to retain applying to all `smtpd` ports

---------

Co-authored-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-03-01 13:55:13 +01: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
Georg Lauterbach
0294294755
fix: revert __declare_readonly overcomplication (#4372)
* fix: revert `__declare_readonly` overcomplication
* chore: remove redundant checks

Signed-off-by: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com>
2025-02-17 00:14:18 +00: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
Alessio Artoni
ca877999ec
docs: Fix typo in DKIM and utils.sh (#4358) 2025-02-12 20:34:22 +01:00
Brennan Kinney
83bfe72d48
chore: Migrate dovecot config from Dockerfile (#4350) 2025-02-12 11:56:51 +13: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
Casper
96bffd7979
chore(compile.sh): Consistent apt-get install command 2024-12-06 21:22:37 +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
Georg Lauterbach
662afec1d1
doc: add an example for using the keytype ed25519 when using DKIM & Rspamd (#4243) 2024-10-30 13:32:17 +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