Commit Graph

196 Commits (385b6ac85d3fcdee97d5743c4e5da8b6c0c9f728)

Author SHA1 Message Date
Nicolas Paris e4ad3a868c
Fix typo
Co-authored-by: decentral1se <1991377+decentral1se@users.noreply.github.com>
Nicolas Paris 7386257ded
Fix typo
Co-authored-by: decentral1se <1991377+decentral1se@users.noreply.github.com>
Nicolas Paris ab7264df0c
Fix typo
Co-authored-by: decentral1se <1991377+decentral1se@users.noreply.github.com>
Nicolas Paris c0c8c4a551
Fix typo
Co-authored-by: decentral1se <1991377+decentral1se@users.noreply.github.com>
bors[bot] 5d1264e381
Merge
1694: update compression algorithms for current dovecot r=nextgens a=lub

## What type of PR?

enhancement

## What does this PR do?

This adds additional compression algorithms in accordance with
https://doc.dovecot.org/configuration_manual/zlib_plugin/

### Related issue(s)

## 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: lub <git@lubiland.de>
parisni 84e59c0a6e Add missing roundcube_db_flavor
parisni d2803f6f46 Update setup website
lub 2316ef1162 update compression algorithms for dovecot 3.3.14
xz is deprecated; lz4 and zstd were not present in our configs before
lub 1a365f469c check for `ipv6_enabled` in the compose template
Checking only `ipv6` isn't sufficient, because it has a default value.
lub 98a6ffb497 add compression via xz and lz4
lub 708e31660f mark radio buttons in setup utility as required
Otherwise it's possible to submit the form without selecting e.g. any
flavor, which would need additional handling on the server side.
Dario Ernst 7483ea1d49 Make setup show external DB parameters automaticaly when selecting postgres
Before, the "external postgres" options were not shown, even though
"extrnal" was pre-selected. This fixes the mechanics surrounding the
picker.
Dimitri Huisman 7b27d0dd4e When selecting a non-stable version, add a message this is version is "only for testing".
The stable version is set via the new environment variable stable_version. E.g.
stable_version=1.7
Dimitri Huisman 17cea83301 Completely remove step 5 where you can set the replica count for docker-stack.
Add additional warning to ´experimental' notice in setup for stack.
Add a notice the shipped PostgreSQL is deprecated.
Make the external PostgreSQL database the default option.
Make 1.7 the default version (stable_version': '1.7', in docs\conf.py)
Update mergify.yml with 1.8 version
Simonmicro eca00905cf
Minor formulation
Simonmicro db440d46be
Added line of warning
Dario Ernst 9a440e2604 Force setup-file download scheme to HTTPS
Up until now HTTPS was only offered by redirect, making MitM possible
before server redirect hit the client.
Add scheme-force to HTTPS to the url-generation.

fixes 
Dimitri Huisman e5f355c902
Fix ANTIVIRUS line in mailu.env file
The ANTIVIRUS line is commented in mailu.env file. Each mailu.env file generated by setup.mailu.io will have the antivirus line commented. Removed the # so that antivirus works again for new deployments.
bors[bot] 88ffb9fcf1
Merge
1511: Setup, compose: add note about reverse DNS r=mergify[bot] a=liquidat

## What type of PR?

documentation

## What does this PR do?

If the [mailu setup utility](https://setup.mailu.io/master/) is used with the Compose flavor, in step 4 a list of public host names needs to be provided:
![Screenshot from 2020-05-17 01-54-06](https://user-images.githubusercontent.com/1998084/82132563-5227d780-97e1-11ea-85ed-fa5d5108e24e.png)
The [first entry in this list is configured as hostname by postfix](ddac2672fc/core/postfix/conf/main.cf (L10)). That is crucial: if the reverse DNS entry for that host is not the same as this first entry in this list, it will be a mismatch between rDNS and HELO, which will lead to bad scoring in many spam filters.

This commit clarifies that point.
It also fixes a missing parenthesis.

### Related issue(s)

- (none)

## Prerequistes

- (none applicable)

Co-authored-by: liquidat <liquidat@bayz.de>
bors[bot] 535b95bca7
Merge
1538: Introduce environment variable to control dovecot full-text-search r=mergify[bot] a=tremlin

## What type of PR?

Enhancement

## What does this PR do?

In  a full-text-search feature was enabled in Dovecot by default. Since this can have a big impact on performance, I think it's preferable to offer an option to disable the feature if it is not needed. This PR doesn't change the default behavior (FTS on).

### Related issue(s)
- 

## 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 accordinagly
- [ ] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.


Co-authored-by: Thomas Rehn <thomas.rehn@initos.com>
bors[bot] 27b6016bc6
Merge
1499: Harmonization of the various docker-compose.yml templates r=mergify[bot] a=ofthesun9

## What type of PR?
Mainly documentation and update of the docker-compose.yml templates

## What does this PR do?
- Update of setup/flavors/stack/docker-compose.yml and docs/compose/docker-compose.yml to keep parity with setup/flavors/compose/docker-compose.yml (last changes with pr1444)
- Also refresh of the mkdir command found in setup/flavors/stack/setup.html to cope with the creation of mailqueue; overrides/nginx, overrides/dovecot folders.

### Related issue(s)
None

## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly



Co-authored-by: ofthesun9 <olivier@ofthesun.net>
bors[bot] 64f21d5b84
Merge
1478: Allow to enforce TLS for outbound r=mergify[bot] a=micw

 using OUTBOUND_TLS_LEVEL=encrypt (default is 'may')

## What type of PR?

enhancement

## What does this PR do?

Add an option to postfix to enforce outbound traffic to be TLS encrypted.

## 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.


1501: In setup/flavor, change DMARC RUA and RUF email default settings r=mergify[bot] a=ofthesun9

## What type of PR?
bug-fix

## What does this PR do?
This PR changes the default value used to set DMARC_RUA and DMARC_RUF:
DMARC_RUA and DMARC_RUF defaults will reuse the value defined for POSTMASTER,
instead of 'admin' as previously.
Please note that the setup tool doesn't allow (yet?) to define dmarc_rua nor dmarc_ruf, so the default value is indeed used for the time being.

### Related issue(s)
closes  

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


1532: Replace SMPT with SMTP r=mergify[bot] a=dhoppe



1543: Disable Health checks on swarm mode r=mergify[bot] a=ofthesun9

ref: https://github.com/moby/moby/issues/35451

## What type of PR?
bug-fix

## What does this PR do?
Modify the docker-compose.yml template used by setup (swarm flavor) to disable Health checks on swarm mode for each service

### Related issue(s)
closes 

## Prerequistes
- [x]  add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.


Co-authored-by: Michael Wyraz <michael@wyraz.de>
Co-authored-by: ofthesun9 <olivier@ofthesun.net>
Co-authored-by: Dennis Hoppe <github@debian-solutions.de>
Thomas Rehn ebf1f4f1b6 add bits of documentation for new environment variable
ofthesun9 f48a13336f Disable Health checks on swarm mode
ref: https://github.com/moby/moby/issues/35451
Dennis Hoppe c3cbac65f9
Replace SMPT with SMTP
liquidat 6dbf7eb0e0 Setup, compose: add note about reverse DNS
ofthesun9 b1f012d53b In setup/flavor, change DMARC rua and ruf email default settings
DMARC_RUA and DMARC_RUF defaults will reuse the value defined for POSTMASTER,
instead of 'admin' as previously
ofthesun9 693fb3dbc7 Harmonization of the various docker-compose.yml
Harmonization (following pr1444) between:
 - docs/compose/docker-compose.yml
 - setup/flavors/stack/docker-compose.yml
 - setup/flavors/compose/docker-compose.yml
Also refresh of the mkdir command found in setup/flavors/stack/setup.html
Vilgot Fredenberg 33349065b5 Harden default configuration
Dario Ernst 5ab47864e7 Clarify fetchmail description text in setup
Leigh Morresi 83b51e6597 Place checkbox descriptions after checkboxes and labels, set italic for readability.
Leigh Morresi 1ede5dc301 Grammatical and spelling mistake fixes.
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.
bors[bot] 0417c791ff
Merge
985: Permit raspberry pi (and other architectures) builds r=mergify[bot] a=abondis

## What type of PR?

Enhancement

## What does this PR do?

Add an option to select base images and permit building for different CPU architectures.

### Related issue(s)
N/A

## Prerequistes

- [X] 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: Aurélien Bondis <aurelien.bondis@gmail.com>
Co-authored-by: Aurelien <aurelien.bondis@gmail.com>
Michael Wyraz 2aa1600908 Add postfix mailqueue to persistent storage on docker
Aurélien Bondis 98307f868a RPi: fix alpine version for setup, only one layer for pip install
hoellen d3dd4802f4 Change default password scheme to PBKDF2 ()
Aurélien Bondis 3a10865824 install python for setup image, accept args for build_arm script
Jonathan Elias Caicedo 468793640a
Fix 'coma' -> 'comma'
Jonathan Elias Caicedo 8661919374
Fix 'coma' -> 'comma'
hoellen 463bbda302 Allow subnet with host bit set in setup
bors[bot] 2d4c837761 Merge
1015: Merge DNS hints, and hostname/domain ordering hints. r=Nebukadneza a=toxik-io

## Enhancement - Hints in setup, references in setup & DNS docs

Unrelated: This PR makes changes to the Flask setup utilities to suggest ordering the `HOSTNAMES` 
entry so that the first entry is the admin panel's domain (at least in my experience that's what fixed my
issues)

It also makes changes to the documentation, referencing that more than the usual DNS
entries need to be set (and the admin panel used) if they've enabled DMARC/SPF/DKIM.

### Related issue(s)
- My original issue 

## Prerequistes

- [x] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.

## Assistance
I'm unsure if the hints for HOSTNAME ordering are simply because of how the config is gulped in
by the current tooling, or if it's a bug that the frontend only accepts connections from the first host...

I also don't know what commands in the CLI would replicate the steps taken on the admin dashboard.

Further, I don't know what you'd put in the changelog.

Co-authored-by: toxik-io <thetoxicarcade@gmail.com>
bors[bot] 8ffe947f39 Merge
939: Removed commented options in env file r=mergify[bot] a=ionutfilip

## What type of PR?
Enhancement

## What does this PR do?
Remove all commented options from env file

### Related issue(s)
- 
- 

## 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: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
bors[bot] ce12c4979d Merge
964: Create overrides/nginx r=mergify[bot] a=jeremyVignelles

## What type of PR?

documentation

## What does this PR do?
Updates the procedure to include the creation of that required folder

## 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: Jérémy VIGNELLES <jeremyvignelles@users.noreply.github.com>
bors[bot] 0e182fde3f Merge
957: Correct hardcoded WEBROOT_REDIRECT r=mergify[bot] a=ahwebd

We should not assume that the user has chosen the word "webmail" for his webmail path.

Co-authored-by: Ahmed H <ahwebd@gmail.com>
toxik-io ca5e0c88ba
update in stack, as well.
toxik-io f1eb2ee367
solve admin problems by recommending it in setup, not just FAQ.
Jérémy VIGNELLES b1621d4b63
Create overrides/nginx
This folder is needed for the front service to be able to start, because a bind-mount is made on that folder.
Ahmed H 52948fa529
Correct hardcoded WEBROOT_REDIRECT
We should not assume that the user has chosen the word "webmail" for his webmail path
Ionut Filip 131406774b Handle setup subnet error
Ionut Filip 4df36bea91 Removed commented options
bors[bot] 86b4242f82 Merge
886: Ipv6 support r=mergify[bot] a=muhlemmer

## What type of PR?

(Feature, enhancement, bug-fix, documentation) -> A bit of everything

## What does this PR do?

Document how to use ipv6nat. This, however triggers some kind of flaky behavior with the Docker DNS resolver, resulting in lookup failures between containers.  So all resolving needs to be done during container startup/configuration.

In order not to pollute every single start.py file, we've created a small library called [Mailu/MailuStart](https://github.com/Mailu/MailuStart). As an addition, this library also defines the template generation function, including its logging facility.

Note: `docker-compose.yml` downgrade is necessary, as IPv6 settings are not supported by the Docker Compose file format 3 😞  

### Related issue(s)
Supersedes  PR 
- Fixes  
- Hopefully helps with  and 

## No backport yet

This PR directly imports MailuStart from git. This makes it a bit more simple to implement on the short term an do some testing and probably some future improvements. When everything is proved stable, we will create a proper PyPi package with versioning and consider back porting.

## 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: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>
bors[bot] 4d58b322bc Merge
888: Correct the URL users are directed to after using setup without exposing /admin r=mergify[bot] a=Nebukadneza

In setup, users who didn’t expose `/admin` were directed to `http://127.0.0.1:8080/`, which was missing `/ui` to work.

Also, let’s help out the less apt admins by providing a copy-paste template for ssh-tunnelling.

## What type of PR?
documentation

### Related issue(s)
closes 

## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


889: Catch webmail-url empty but webmail configured and force to default r=mergify[bot] a=Nebukadneza

## What type of PR?
bug-fix

## What does this PR do?
Quite some users managed to delete the contents of the webmail-url field in
setup, which forces front into a restart loop. Catch the case where a webmail
service is configured, but url is empty — and force to default /webmail.

### Related issue(s)
closes 

## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Dario Ernst <dario@kanojo.de>
Dario Ernst ef5a114cff Put webmail on / for empty webmail_path from setup
Dario Ernst 0676252ec1 Revert accidental setup commits and fix code/pre tags
Dario Ernst d9d6f514aa Catch webmail-url empty but webmail configured and force to default
Quite some users managed to delete the contents of the webmail-url field in
setup, which forces front into a restart loop. Catch the case where a webmail
service is configured, but url is empty — and force to default /webmail.

closes 
Dario Ernst 392637e16a Correct the URL users are directed to after using setup without exposing /admin
closes 
Jim Heald eb8d84aed0 Fix environment variable inconsistency
Ionut Filip bbbd22b3a3
Merge pull request from usrpro/fix-unbound-swarm
Remove unbound from swarm
Tim Möhlmann 3460872747
Documentation on IPv6
Ionut Filip 3ae1c75c55
Added IPv6 as optional
Ionut Filip f7e37b7d4b
Removed unbound resolver for stack flavor
Ionut Filip 9bec86f2c3 Fixed TLD limitation
Tim Möhlmann 38e754be6d
Make docs refer to the setup utility
Tim Möhlmann 1975534125
Make docker-compose.yml for setup and docs development friendly
This enables easy local running.
Actual deployment files are moved to github.com/mailu/infra.
Ionut Filip 50343f354e Merge remote-tracking branch 'upstream/master' into feat-psql-support
Ionut Filip 37a07e3297 Update setup utility with mysql db flavor
Tim Möhlmann 7d01bb2a4d
LOG_LEVEL docs and changelog entry
Ionut Filip 9077bf7313 Merge remote-tracking branch 'upstream/master' into feat-psql-support
Tim Möhlmann cffc7c15f1
Merge remote-tracking branch 'upstream/master' into fix-setup-filegen
Tim Möhlmann 738d98e5ab
Fix code formatting
Tim Möhlmann b2823c23b8
Merge remote-tracking branch 'upstream/master' into feat-psql-support
Daniel Huber b4f6f6b354
Merge branch 'master' into fix-docker-prefix
Tim Möhlmann c1bfde4e15
Use wget for file dowloads. Curl doesn't like the Traefik redirects
Tim Möhlmann 598ad4fc7a
Prefix static path with version for Traefik
Tim Möhlmann 19bd90f581
Fix usage of radicale image instead of none
I just noticed that the `none` image was used in place where `radicale` should be used. Fixed in this commit.
Daniel Huber d357ed67f5
Add DOCKER_PREFIX in tests and setup files
Daniel Huber 736607ab0c
Update admin account create command in setup utility to use the flask cli
Ionut Filip 1b64c80612 Managing different blueprint prefixes
Tim Möhlmann 8c6e0c56fb
Fix redis connection errors
Ionut Filip 5e2552bcd5 Removed if block
Tim Möhlmann e994fefb2d
Remove the test branch
Tim Möhlmann 1df3b46454
Use ADDRESS instead of HOSTNAME
Tim Möhlmann 8ef0493f53
Define external web network for Traefik connections
Tim Möhlmann db9a3787b1
Disable healthcheck, doen't work in versioned env
Tim Möhlmann 3655c7c902
Merge remote-tracking branch 'origin/fix-setup-bugs' into setup-deploy
Tim Möhlmann 9c284c4004
Prepare setup for multi-ver deployment on docs server
Ionut Filip bb0fd896b3 Fix some bugs in setup for stack flavor
- Unbound and webmail images were hardcoded
- Removed unnecesary environment keyword
kaiyou f6520eace6 Merge branch 'feat-psql-support' of https://github.com/usrpro/Mailu into usrpro-feat-psql-support
Tim Möhlmann c7dcfee882
Merge pull request from pgeorgi/extend-nginx
nginx: Allow extending config with overrides
mergify-bot 491f6b24bb Merge branch 'master' into 'feat-subnet2'
Tim Möhlmann c00910ca4b
Merge remote-tracking branch 'upstream/master' into extend-nginx
Tim Möhlmann c25ba75d68
Include WEBROOT_REDIRECT in setup templates
Ionut Filip 94edb48f08 Dynamic attachment size
Tim Möhlmann c0972face6
Correct subnetting functionality for the tests and setup
Tim Möhlmann 8172f3eab8
Move the Mailu Docker network to a fixed subnet.
This will make network configuration and host based authentication
more robust, across different deployment platforms.
The options `RELAYNETS` and`POD_ADDRESS_RANGE` are kept for compatibility.
However, their usage have become optional.
Ionut Filip 7809d1373a Moved postgresql image in optional
Ionut Filip dd16ed4cba Removed password hashing
Tim Möhlmann 2b6f5ea3d0
Update setup's own docker-compose.yml file
Ionut Filip 92bdc6e0a3 Added network if postgresql used