3350: Feature: dkim for alternative domains r=mergify[bot] a=Jumper78
## What type of PR?
feature
## What does this PR do?
### General Idea
#### use same DKIM key of main domain for signing
Instead of dealing with key creation for each alternative domain, this implementation of the solution uses one key for all domains, the main domain and all alternative domains. Upon Rspamd requesting the DKIM key of a domain, it is not only checked if the domain is in the list of main domains, it also checked if it part of the alternative domains. If it is in this list, it sends the DKIM key of the connected main domain together with the name of the alternative domain.
#### show needed entries in the domain detailed view of the main domain
To make it easier for the admin to create the DKIM and DMARC entries (and the MX and SPF entries) for the alternative domains, we go through all alternative domains and print the entries.
### missing (and currently not planned to be added)
The zonefile at the top of the detail page will still only cover the main domain.
### Related issue(s)
- DKIM signing of the alternative domains is a requested feature; it closes#1519
- it keeps the original file based handling of DKIM keys; it does not implement #2952
## Prerequisites
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/workflow.html#changelog) entry file.
Co-authored-by: Jumper78 <52802286+Jumper78@users.noreply.github.com>
code goes through all of the alternative domain names and displays:
- name of the alternative domain
- DNS MX entry
- DNS SPF entry
- if main domain has DKIM key: DNS DKIM entry
- if main domain has DKIM key: DNS DMARC entry
file modified: core/admin/mailu/models.py
file modified: core/admin/mailu/ui/templates/domain/details.html
3138: Update dependencies and re-enable flask toolbar r=nextgens a=ghostwheel42
## What type of PR?
bug-fix
## What does this PR do?
Update python dependencies to versions without known security vulnerabilities.
Also re-enable flask debug toolbar which was disabled earlier.
werkzeug < 2.3.8: CVE-2023-46136
aiohttp < 3.9.0: CVE-2023-49081 CVE-2023-49082
cryptography >= 3.1 < 41.0.6: CVE-2023-49083
jinja2 < 3.1.3: CVE-2024-22195
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2866: Improve tokens (add ipranges) r=nextgens a=nextgens
## What type of PR?
enhancement
## What does this PR do?
Allow multiple IP addresses/networks to be set for tokens.
### Related issue(s)
## Prerequisites
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/workflow.html#changelog) entry file.
Co-authored-by: Florent Daigniere <nextgens@freenetproject.org>
2543: Fix#2231: make public announcements work r=nextgens a=nextgens
## What type of PR?
bug-fix
## What does this PR do?
Ensure public announcements bypass filters.
They can still time-out... but this is already a big improvement that we should be able to backport.
### Related issue(s)
- closes#2231
## Prerequisites
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/workflow.html#changelog) entry file.
Co-authored-by: Florent Daigniere <nextgens@freenetproject.org>
2328: Feature: Configurable default spam threshold used for new users r=mergify[bot] a=enginefeeder101
## What type of PR?
Feature
## What does this PR do?
This PR adds functionality to set a custom default spam threshold
for new users. The environment variable ``DEFAULT_SPAM_THRESHOLD`` is
used for this purpose. When not set, it defaults back to 80%, as the
default value was before.
If ``DEFAULT_SPAM_THRESHOLD`` is set to a value that Python cannot
parse as an integer, a ValueError is thrown. There is no error handling
for that case built-in. Should that be done?
## Prerequisites
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/workflow.html#changelog) entry file.
Co-authored-by: enginefeeder101 <enginefeeder101@users.noreply.github.com>
Co-authored-by: Dimitri Huisman <diman@huisman.xyz>
Antispam.rst contained a syntax error.
Move config description to common section which is more fitting.
Fixed wrong assignment of default value for DEFAULT_SPAM_THRESHOLD in models.py.
Per requested changes added the ``DEFAULT_SPAM_THRESHOLD`` to the main
application configuration dictionary in ``configuration.py`` and updated
``models.py`` accordingly.
No error handling is added, as that was not required.
This commit adds functionality to set a custom default spam threshold
for new users. The environment variable ``DEFAULT_SPAM_THRESHOLD`` can
be used for this purpose. When not set, it defaults back to 80%, as the
default value was before
If ``DEFAULT_SPAM_THRESHOLD`` is set to a value that Python cannot
parse as an integer, a ValueError is thrown. There is no error handling
for that case built-in.