Commit Graph

3607 Commits (5c31120895dd6d23e52fc9e33034afee14ade74e)
 

Author SHA1 Message Date
Leigh Morresi 1ede5dc301 Grammatical and spelling mistake fixes.
Alexander A. Klimov 313e98c1a2 fetchmail: print unhandled exceptions, but don't crash
refs 
Dario Ernst 23f21f8b9c Use pyyaml safe_load instead of load
Since load in unsafe (ref: https://msg.pyyaml.org/load),
switch the only occurrance of `yaml.load` that i could
find to safe_load.

closes 
Dario Ernst afec5f08fb Remove duplicate ports line
closes 
micw e08f4ab7a9
Fix wrong psql lib name
Dario Ernst dbcab06587 Ignore newlines and comment-lines in postfix overrides
To make postfix override files understandable and readable, users may
want to insert empty newlines and #-commented lines in their postfix
override files too. This will now ignore such bogus-lines and not send
them to `postconf`, which produced ugly errors in the past.

closes 
Dario Ernst 09024c8008 Use environment variables for cert paths/names in nginx certwatcher
Previously, nginx certwatcher would only react to the hardcoded paths. It should have
honored the enviroment variables that are used by config.py too for this.

closes 
bors[bot] b8b1699f9e
Merge
1359: Refactor the rate limiting code r=mergify[bot] a=kaiyou

## What type of PR?

Enhancement

## What does this PR do?

Rate limiting was already redesigned to use Python limits. This
introduced some unexpected behavior, including the fact that only
one criteria is supported per limiter. Docs and setup utility are
updated with this in mind.

Also, the code was made more generic, so limiters can be delivered
for something else than authentication. Authentication-specific
code was moved directly to the authentication routine.

### Related issue(s)

No specific issue.

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: kaiyou <pierre@jaury.eu>
Dario Ernst 8626326559 Fix dovecot dockerfile (accidentally broken in previous commit)
dependabot[bot] 94cfc31e04
Bump validators from 0.12.5 to 0.12.6 in /core/admin
Bumps [validators](https://github.com/kvesteri/validators) from 0.12.5 to 0.12.6.
- [Release notes](https://github.com/kvesteri/validators/releases)
- [Changelog](https://github.com/kvesteri/validators/blob/master/CHANGES.rst)
- [Commits](https://github.com/kvesteri/validators/commits)

Signed-off-by: dependabot[bot] <support@github.com>
bors[bot] a3c6002a0a
Merge
1321: Upgrading nginx TLS configuration r=mergify[bot] a=radtkedev

## What type of PR?

Enhancement

## What does this PR do?

Upgrades the TLS protocols and ciphers to the recommended "Intermediate Configuration" and sets the "Old Configuration" for port 25 (SMTP) based on the [Mozilla SSL Configuration Generator](https://ssl-config.mozilla.org/) and adjusted for the nginx mail proxy.

Co-authored-by: Tom Radtke <tom@radtke.dev>
Dario Ernst dfe092eb46 Use names for docker build stages in dovecot Dockerfile
bors[bot] 1ca4d6769c
Merge
1349: Add support for SRS, related to  r=mergify[bot] a=kaiyou

## What type of PR?

Feature

## What does this PR do?

It implements SRS using a Python SRS library.

### Related issue(s)
- closes  

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: kaiyou <pierre@jaury.eu>
micw b4d81f833d
Add pdo_pgsql to Dockerfile
Dario Ernst da2dda49d4 Prefer specific alias over wildcard, regardless of case
Since direct addresses (not aliases) are case-insensitive since a while,
it makes sense for aliases to behave the same. Up until now, a wildcard
alias could trump a alias not-matching-the-case of the incoming address.
This clarifies this behavior.

closes 
Weblate cc4720d890 Merge branch 'origin/master' into Weblate
NeroPcStation 365f21007d Translated using Weblate (Polish)
Currently translated at 90.2% (147 of 163 strings)

Translation: Mailu/admin
Translate-URL: https://translate.tedomum.net/projects/mailu/admin/pl/
Philip Rosenberg-Watt 7a552f02c3 Add gpg to Roundcube
The web UI was complaining that it couldn't find the GPG binary. Turns out it wasn't installed.
kaiyou 8e88f1b8c3 Refactor the rate limiting code
Rate limiting was already redesigned to use Python limits. This
introduced some unexpected behavior, including the fact that only
one criteria is supported per limiter. Docs and setup utility are
updated with this in mind.

Also, the code was made more generic, so limiters can be delivered
for something else than authentication. Authentication-specific
code was moved directly to the authentication routine.
Philip Rosenberg-Watt ff1dfec39a Add port to relay if it contains a colon
This closes 
bors[bot] 770d09b05b
Merge
1351: Add some faq entries r=hoellen a=kaiyou

## What type of PR?

Documentation

## What does this PR do?

Add missing faq entries

### Related issue(s)
- Closes:  
- Closes:  
- Closes:  
- Closes: 

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: kaiyou <pierre@jaury.eu>
kaiyou 76d2094b07 Apply suggestions from code review
Co-Authored-By: hoellen <hoellen@users.noreply.github.com>
kaiyou a39249a43a
Update docs/faq.rst
Co-Authored-By: hoellen <hoellen@users.noreply.github.com>
bors[bot] 00d49e2986
Merge
1350: Update the tlv1 faq to indicate that a full config rewrite is required r=mergify[bot] a=kaiyou

## What type of PR?

Documentation

## What does this PR do?

Update the tlv1 faq to indicate that a full config rewrite is required

### Related issue(s)
- Closes:  

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: kaiyou <pierre@jaury.eu>
kaiyou 7507345ce9 Fix encoding of custom fields in fetchmailrc
bors[bot] cd3aca3609
Merge
1334: Update RainLoop to 1.14.0 r=kaiyou a=hoellen

## What type of PR?

enhancement

## What does this PR do?
Update RainLoop to 1.14.0 (see [here](https://github.com/RainLoop/rainloop-webmail/releases/tag/v1.14.0))

Co-authored-by: hoellen <dev@hoellen.eu>
kaiyou 6edf7a7896 Add some faq entries
kaiyou 450be78898 Update the tlv1 faq to indicate that a full config rewrite is required
kaiyou 6ad9b7c2b2 Add a newsfragment
Philip Rosenberg-Watt 27e37577c6 Add IPv6 to allow_nets
Roundcube was not connecting to sieve with IPv6 enabled.

Fixes 
Weblate b248f6a800 Merge branch 'origin/master' into Weblate
Andrási István 395a0d14dc Translated using Weblate (Hungarian)
Currently translated at 100.0% (163 of 163 strings)

Translation: Mailu/admin
Translate-URL: https://translate.tedomum.net/projects/mailu/admin/hu/
hoellen 9c2390ff7e Update RainLoop to 1.14.0
NeroPcStation 0593ccd9f0
Fix bad file path in documentation
bors[bot] 96f832835a
Merge
1278: Limiter implementation r=kaiyou a=micw

## What type of PR?

(Feature, enhancement, bug-fix, documentation)

## What does this PR do?

Adds a custom limter based on the "limits" lirary that counts up on failed auths only

### Related issue(s)
- closes 
- closes 

## Prerequistes

- [X] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.


Co-authored-by: Michael Wyraz <michael@wyraz.de>
Co-authored-by: micw <michael@wyraz.de>
bors[bot] 0bc10b7bc5
Merge
1269: Add Fail2Ban section r=hoellen a=iohenkies

## What type of PR?
documentation

## What does this PR do?
This PR adds documentation to setup Fail2Ban to secure Mailu.

### Related issue(s)
- closes 

## Prerequistes
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/guide.html#changelog) entry file.

edit [@hoellen]: Give information about the PR and link issue.

Co-authored-by: iohenkies <33115951+iohenkies@users.noreply.github.com>
Michael Wyraz fe09cf5705 Default to DB_FLAVOR/DB_HOST if ROUNDCUBE_DB_FLAVOR/ROUNDCUBE_DB_HOST is not set
Michael Wyraz 2cb42c31a6 Add changelog
Michael Wyraz 8242ca150d Create/update database on startup
Michael Wyraz 982c93e3a2 Print roundcube error log to stdout
Michael Wyraz 06926561e2 Install php-mysql on roundcube container
Michael Wyraz 9b10e938cf Make roundcube db configurable
iohenkies ae6f82984d Add Fail2Ban section
Dario Ernst 99ecaee7b9 Use a released git-tag for fts-xapian
bors[bot] 9db709515a
Merge
1308: Use redis 5 on k8s & add selector r=mergify[bot] a=der-eismann

## What type of PR?
Enhancement

## What does this PR do?
This PR is updating Redis to version 5 in the kubernetes manifests. It is already used in the compose and swarm files, so I don't expect any incompatibilities. There is no necessary migration, you just can't go back.
In addition I added a selector to the manifest and applied a consistent formatting.

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: Philipp Trulson <philipp@trulson.de>
Tom Radtke 4f973f63e6
Upgrading nginx TLS configuration
bors[bot] 761fade9a9
Merge
1316: Fix the encoding of incoming user email and password r=mergify[bot] a=kaiyou

## What type of PR?

Bug fix

## What does this PR do?

As described in the changes, RFC2616 states that header should be considered ISO8859-1 in HTTP, which obviously nginx does not really care about when forwarding the password from SMTP authentication to the backend. Hence, we need to encode-then-decode passwords to get the proper value in case a special char is in there.

### Related issue(s)
- This fixes  
- This is also related to  
- This is also related to 

## Prerequistes
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/guide.html#changelog) entry file.


Co-authored-by: kaiyou <pierre@jaury.eu>
bors[bot] ad041094e5
Merge
1319: Upgrading to a 2048-bit DKIM key r=mergify[bot] a=radtkedev

## What type of PR?

Enhancement

## What does this PR do?

Upgrades to a 2048-bit DKIM key from the currently used and outdated 1024-bit DKIM key.

### Related issue(s)
-  

Co-authored-by: Tom Radtke <tom@radtke.dev>
Dario Ernst e499d5a804 Add xapian full-text-search plugin to dovecot
Currently we are not able to offer our users a FTS experience after the
demise of lucene due to unfixed coredumps with musl/alpine.
We now add lucene, the only remaining maintained small/lean FTS plugin
for dovecot. It is quite simple to add to our stack: A two-stage docker
build is used to compile the fts plugin in the first stage, and copy
over only the resulting plugin-artifact to the second stage, which is
our usual dovecot container. Configuration is also minimal.
Tom Radtke 9d213b213a
Upgrading to a 2048-bit DKIM key