From 3cdc9c8111985b1d3b4d4d526d886ccd165ecaf0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 6 Mar 2025 07:30:10 +0000 Subject: [PATCH] deploy: 6b1a5664979528064672f056bf0dd8fe0c421952 --- .../account-management/overview/index.html | 2 +- .../provisioner/file/index.html | 2 +- .../provisioner/ldap/index.html | 2 +- .../supplementary/master-accounts/index.html | 2 +- .../supplementary/oauth2/index.html | 2 +- .../advanced/full-text-search/index.html | 2 +- edge/config/advanced/ipv6/index.html | 2 +- edge/config/advanced/kubernetes/index.html | 2 +- .../config/advanced/mail-fetchmail/index.html | 2 +- .../mail-forwarding/aws-ses/index.html | 2 +- .../mail-forwarding/gmail-smtp/index.html | 2 +- .../mail-forwarding/relay-hosts/index.html | 2 +- edge/config/advanced/mail-getmail/index.html | 2 +- edge/config/advanced/mail-sieve/index.html | 2 +- .../maintenance/update-and-cleanup/index.html | 2 +- .../advanced/optional-config/index.html | 2 +- .../override-defaults/dovecot/index.html | 2 +- .../override-defaults/postfix/index.html | 2 +- .../override-defaults/user-patches/index.html | 2 +- edge/config/advanced/podman/index.html | 2 +- .../best-practices/autodiscover/index.html | 2 +- .../best-practices/dkim_dmarc_spf/index.html | 2 +- edge/config/best-practices/mta-sts/index.html | 2 +- edge/config/debugging/index.html | 2 +- edge/config/environment/index.html | 2 +- edge/config/pop3/index.html | 2 +- edge/config/security/fail2ban/index.html | 39 +++++-- edge/config/security/mail_crypt/index.html | 2 +- edge/config/security/rspamd/index.html | 6 +- edge/config/security/ssl/index.html | 6 +- .../understanding-the-ports/index.html | 2 +- edge/config/setup.sh/index.html | 2 +- edge/contributing/general/index.html | 2 +- .../issues-and-pull-requests/index.html | 2 +- edge/contributing/tests/index.html | 2 +- .../tutorials/basic-installation/index.html | 2 +- edge/examples/tutorials/blog-posts/index.html | 2 +- edge/examples/tutorials/crowdsec/index.html | 2 +- .../tutorials/docker-build/index.html | 2 +- .../tutorials/dovecot-solr/index.html | 2 +- .../mailserver-behind-proxy/index.html | 2 +- edge/examples/use-cases/auth-lua/index.html | 2 +- .../bind-smtp-network-interface/index.html | 2 +- .../external-relay-only-mailserver/index.html | 2 +- .../index.html | 2 +- .../use-cases/imap-folders/index.html | 2 +- .../ios-mail-push-support/index.html | 2 +- edge/faq/index.html | 2 +- edge/index.html | 2 +- edge/introduction/index.html | 6 +- edge/search/search_index.json | 2 +- edge/sitemap.xml | 102 +++++++++--------- edge/usage/index.html | 2 +- 53 files changed, 139 insertions(+), 116 deletions(-) diff --git a/edge/config/account-management/overview/index.html b/edge/config/account-management/overview/index.html index ebf44ae7..7085ffbd 100644 --- a/edge/config/account-management/overview/index.html +++ b/edge/config/account-management/overview/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/account-management/provisioner/file/index.html b/edge/config/account-management/provisioner/file/index.html index cea05d31..dcf2b28b 100644 --- a/edge/config/account-management/provisioner/file/index.html +++ b/edge/config/account-management/provisioner/file/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/account-management/provisioner/ldap/index.html b/edge/config/account-management/provisioner/ldap/index.html index 2c8d1d4a..0731d466 100644 --- a/edge/config/account-management/provisioner/ldap/index.html +++ b/edge/config/account-management/provisioner/ldap/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/account-management/supplementary/master-accounts/index.html b/edge/config/account-management/supplementary/master-accounts/index.html index 304a49f5..7dfe10ea 100644 --- a/edge/config/account-management/supplementary/master-accounts/index.html +++ b/edge/config/account-management/supplementary/master-accounts/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/account-management/supplementary/oauth2/index.html b/edge/config/account-management/supplementary/oauth2/index.html index 34de6331..834a16ba 100644 --- a/edge/config/account-management/supplementary/oauth2/index.html +++ b/edge/config/account-management/supplementary/oauth2/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/full-text-search/index.html b/edge/config/advanced/full-text-search/index.html index f954131d..d0617bd1 100644 --- a/edge/config/advanced/full-text-search/index.html +++ b/edge/config/advanced/full-text-search/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/ipv6/index.html b/edge/config/advanced/ipv6/index.html index 1f2ed5d7..c73aa791 100644 --- a/edge/config/advanced/ipv6/index.html +++ b/edge/config/advanced/ipv6/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/kubernetes/index.html b/edge/config/advanced/kubernetes/index.html index bbb35a3d..346f1ca1 100644 --- a/edge/config/advanced/kubernetes/index.html +++ b/edge/config/advanced/kubernetes/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-fetchmail/index.html b/edge/config/advanced/mail-fetchmail/index.html index 626ef4c9..522ec57c 100644 --- a/edge/config/advanced/mail-fetchmail/index.html +++ b/edge/config/advanced/mail-fetchmail/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-forwarding/aws-ses/index.html b/edge/config/advanced/mail-forwarding/aws-ses/index.html index c6c9e7c4..ea581b10 100644 --- a/edge/config/advanced/mail-forwarding/aws-ses/index.html +++ b/edge/config/advanced/mail-forwarding/aws-ses/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-forwarding/gmail-smtp/index.html b/edge/config/advanced/mail-forwarding/gmail-smtp/index.html index 6ed4d547..043ea668 100644 --- a/edge/config/advanced/mail-forwarding/gmail-smtp/index.html +++ b/edge/config/advanced/mail-forwarding/gmail-smtp/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-forwarding/relay-hosts/index.html b/edge/config/advanced/mail-forwarding/relay-hosts/index.html index 45446c5f..86ebb012 100644 --- a/edge/config/advanced/mail-forwarding/relay-hosts/index.html +++ b/edge/config/advanced/mail-forwarding/relay-hosts/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-getmail/index.html b/edge/config/advanced/mail-getmail/index.html index 1057dbb5..020d0865 100644 --- a/edge/config/advanced/mail-getmail/index.html +++ b/edge/config/advanced/mail-getmail/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/mail-sieve/index.html b/edge/config/advanced/mail-sieve/index.html index 771e0d29..13c34576 100644 --- a/edge/config/advanced/mail-sieve/index.html +++ b/edge/config/advanced/mail-sieve/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/maintenance/update-and-cleanup/index.html b/edge/config/advanced/maintenance/update-and-cleanup/index.html index 2ee1f16c..10459e32 100644 --- a/edge/config/advanced/maintenance/update-and-cleanup/index.html +++ b/edge/config/advanced/maintenance/update-and-cleanup/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/optional-config/index.html b/edge/config/advanced/optional-config/index.html index 469b430b..711bd5d1 100644 --- a/edge/config/advanced/optional-config/index.html +++ b/edge/config/advanced/optional-config/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/override-defaults/dovecot/index.html b/edge/config/advanced/override-defaults/dovecot/index.html index ba22f0c2..7bc5daef 100644 --- a/edge/config/advanced/override-defaults/dovecot/index.html +++ b/edge/config/advanced/override-defaults/dovecot/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/override-defaults/postfix/index.html b/edge/config/advanced/override-defaults/postfix/index.html index 51434f23..73ce24c5 100644 --- a/edge/config/advanced/override-defaults/postfix/index.html +++ b/edge/config/advanced/override-defaults/postfix/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/override-defaults/user-patches/index.html b/edge/config/advanced/override-defaults/user-patches/index.html index a603d018..0509863a 100644 --- a/edge/config/advanced/override-defaults/user-patches/index.html +++ b/edge/config/advanced/override-defaults/user-patches/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/advanced/podman/index.html b/edge/config/advanced/podman/index.html index 12524342..9b6007e6 100644 --- a/edge/config/advanced/podman/index.html +++ b/edge/config/advanced/podman/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/best-practices/autodiscover/index.html b/edge/config/best-practices/autodiscover/index.html index ece7385f..79acc7db 100644 --- a/edge/config/best-practices/autodiscover/index.html +++ b/edge/config/best-practices/autodiscover/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/best-practices/dkim_dmarc_spf/index.html b/edge/config/best-practices/dkim_dmarc_spf/index.html index d0f282f4..146738bf 100644 --- a/edge/config/best-practices/dkim_dmarc_spf/index.html +++ b/edge/config/best-practices/dkim_dmarc_spf/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/best-practices/mta-sts/index.html b/edge/config/best-practices/mta-sts/index.html index c735c96f..429bed47 100644 --- a/edge/config/best-practices/mta-sts/index.html +++ b/edge/config/best-practices/mta-sts/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/debugging/index.html b/edge/config/debugging/index.html index 6c57065b..a94fb182 100644 --- a/edge/config/debugging/index.html +++ b/edge/config/debugging/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/environment/index.html b/edge/config/environment/index.html index ff131f99..dac77451 100644 --- a/edge/config/environment/index.html +++ b/edge/config/environment/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/pop3/index.html b/edge/config/pop3/index.html index 474eeea3..b5852a41 100644 --- a/edge/config/pop3/index.html +++ b/edge/config/pop3/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/security/fail2ban/index.html b/edge/config/security/fail2ban/index.html index c27cf013..68d08a7b 100644 --- a/edge/config/security/fail2ban/index.html +++ b/edge/config/security/fail2ban/index.html @@ -22,7 +22,7 @@ - + @@ -2521,16 +2521,39 @@

Source

Configuration

-
-

Warning

-

DMS must be launched with the NET_ADMIN capability in order to be able to install the NFTables rules that actually ban IP addresses. Thus, either include --cap-add=NET_ADMIN in the docker run command, or the equivalent in the compose.yaml:

-
cap_add:
-  - NET_ADMIN
+

Enabling Fail2Ban support can be done via ENV, but also requires granting at least the NET_ADMIN capability to interact with the kernel and ban IP addresses.

+
+

Example

+
+
+
+
compose.yaml
services:
+  mailserver:
+    environment:
+      - ENABLE_FAIL2BAN=1
+    cap_add:
+      - NET_ADMIN
 
+
+
docker run --rm -it \
+  --cap-add=NET_ADMIN \
+  --env ENABLE_FAIL2BAN=1
+
+
+
+
+
+
+

Security risk of adding non-default capabilties

+

DMS bundles F2B into the image for convenience to simplify integration and deployment.

+

The NET_ADMIN and NET_RAW capabilities are not granted by default to the container root user, as they can be used to compromise security.

+

If this risk concerns you, it may be wiser to instead prefer only granting these capabilities to a dedicated Fail2Ban container (example).

+

Running Fail2Ban on Older Kernels

-

DMS configures F2B to use NFTables, not IPTables (legacy). We have observed that older systems, for example NAS systems, do not support the modern NFTables rules. You will need to configure F2B to use legacy IPTables again, for example with the fail2ban-jail.cf, see the section on configuration further down below.

+

DMS configures F2B to use NFTables, not IPTables (legacy).

+

We have observed that older systems (for example NAS systems), do not support the modern NFTables rules. You will need to configure F2B to use legacy IPTables again, for example with the fail2ban-jail.cf, see the section on configuration further down below.

DMS Defaults

DMS will automatically ban IP addresses of hosts that have generated 6 failed attempts over the course of the last week. The bans themselves last for one week. The Postfix jail is configured to use mode = extra in DMS.

@@ -2569,7 +2592,7 @@

Running Inside A Rootless Container

RootlessKit is the fakeroot implementation for supporting rootless mode in Docker and Podman. By default, RootlessKit uses the builtin port forwarding driver, which does not propagate source IP addresses.

It is necessary for F2B to have access to the real source IP addresses in order to correctly identify clients. This is achieved by changing the port forwarding driver to slirp4netns, which is slower than the builtin driver but does preserve the real source IPs.

-
+

For rootless mode in Docker, create ~/.config/systemd/user/docker.service.d/override.conf with the following content:

diff --git a/edge/config/security/mail_crypt/index.html b/edge/config/security/mail_crypt/index.html index 38627ef9..606fb7ae 100644 --- a/edge/config/security/mail_crypt/index.html +++ b/edge/config/security/mail_crypt/index.html @@ -22,7 +22,7 @@ - + diff --git a/edge/config/security/rspamd/index.html b/edge/config/security/rspamd/index.html index a3ab47f7..06a45d46 100644 --- a/edge/config/security/rspamd/index.html +++ b/edge/config/security/rspamd/index.html @@ -22,7 +22,7 @@ - + @@ -1252,7 +1252,7 @@ -