Commit Graph

683 Commits

Author SHA1 Message Date
Dimitri Huisman
453acad21f Initial changes for Mailu 2.0 release 2023-04-02 16:45:42 +00:00
Didier Raboud
dcd3a45dba nginx with proxy protocol: clarify documentation 2023-03-28 17:38:20 +02:00
Didier 'OdyX' Raboud
c833ef1a47 nginx behind proxy: attackers are not only men 2023-03-28 09:09:11 +02:00
Didier 'OdyX' Raboud
3877635502 nginx with PROXY protocol; much stronger wording 2023-03-28 09:09:09 +02:00
Didier 'OdyX' Raboud
d9ed3cd179 nginx: Allow http and/or mail servers to accept the PROXY protocol
See #2300 for the initial proposal
2023-03-28 09:08:38 +02:00
Didier 'OdyX' Raboud
54b89d1efc Fix a later/latter typo 2023-03-28 09:08:38 +02:00
Florent Daigniere
5790b0a84b Rephrase the doc 2023-03-26 18:55:55 +02:00
Dimitri Huisman
709edb522b Introduce connection string (database url) for roundcube.
Remove database choice from setup.
Remove the old *DB_* database env variables from the documentation.
The env vars are deprecated now. They will be removed after the upcoming
Mailu release.
2023-03-26 12:21:00 +00:00
Florent Daigniere
46e803fdff Update setup.rst 2023-03-23 15:50:27 +01:00
Florent Daigniere
61a40e203a Update docs/setup.rst 2023-03-23 15:49:43 +01:00
Florent Daigniere
cb5e0934cb Update docs/setup.rst 2023-03-23 15:47:43 +01:00
Florent Daigniere
c9df6161ba Update docs/compose/requirements.rst 2023-03-23 15:45:42 +01:00
Florent Daigniere
8391936dc2 Update docs/compose/requirements.rst 2023-03-23 15:45:31 +01:00
Dimitri Huisman
5bd528319b Provide a changelog for minor releases. The github release will now:
* Provide the changelog message from the newsfragment of the PR that triggered the backport.
* Provide a github link to the PR/issue of the PR that was backported.

Switch to building multi-arch images. The images build for pull requests, master and production
are now multi-arch images for the architectures:
* linux/amd64
* linux/arm64/v8
* linux/arm/v7

Enhance CI/CD workflow with retry functionality. All steps for building images are now automatically
retried. If a build temporarily fails due to a network error, the retried step will still succeed.
2023-03-21 14:47:37 +00:00
bors[bot]
5fbfb3cb1c Merge #2566
2566: Make it clear that we don't delete users r=mergify[bot] a=nextgens

## What type of PR?

bug-fix

## What does this PR do?

Make it clear that we don't delete users. Users can and should be disabled when not in use anymore.

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

## 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
- [ ] 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>
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
Co-authored-by: Dimitri Huisman <diman@huisman.xyz>
Co-authored-by: Dimitri Huisman <52963853+Diman0@users.noreply.github.com>
2023-03-17 11:55:11 +00:00
Dimitri Huisman
da4934847f Fix typo and wording in faq.rst 2023-03-17 11:52:46 +01:00
bors[bot]
1d360055b7 Merge #2705
2705: Switch from docker.io to ghcr.io for deploying images r=nextgens a=Diman0

## What type of PR?

enhancement

## What does this PR do?
As we all know, docker has announced that they will stop with free docker organisations. The Mailu project used this. In about a month, the mailu docker org stops to exist and all images will be deleted.

This PR modifies the CI/CD workflow (github actions) to use ghcr.io as the container registry for deployed images. The images are first build with `-build` appended to the tag. These images are also used in the test step. Only in the deploy phase, are the final tags added (as it should be). This makes sure new images are only available after the deployment step.

The setup utility is updated to use `ghcr.io/mailu` as the docker_org.

All references to the docker org `mailu` have been replaced with `ghcr.io/mailu` in the documentation.

I confirmed via my Mailu_Fork repo that the github workflow works fine. 
https://github.com/Diman0/Mailu_Fork/actions/runs/4440118095

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

## 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: Dimitri Huisman <diman@huisman.xyz>
2023-03-17 08:01:41 +00:00
Dimitri Huisman
120cd34989 Switch the container registry used for deploying images from docker
to ghcr.io (github). Images are now first build with '-build'
appended to the tag. E.g. ghcr.io/mailu/admin:master-build.
This is to prevent the image being available before automatic testing has completed.
In the deploy job, the final image is pushed (this still works the same).

Update setup & documentation for switch to ghcr.io
2023-03-16 17:38:25 +00:00
Dimitri Huisman
31faee4218 Merge branch 'master' into delete-disable 2023-03-15 18:16:46 +01:00
Dimitri Huisman
b99828c4f6 Fix broken link. Add extra clarification for login targets. 2023-03-15 16:04:30 +00:00
Florent Daigniere
925c753f40 Merge branch 'master' of https://github.com/Mailu/Mailu into guess-target 2023-03-12 19:43:05 +01:00
Florent Daigniere
b607375603 Fix 2692: make the external auth proxy usable 2023-03-12 19:40:44 +01:00
Florent Daigniere
1b045b4a94 Introduce AUTH_PROXY_LOGOUT_URL 2023-03-12 18:07:25 +01:00
Florent Daigniere
d9527e561e Renumber and clarify 2023-03-12 12:39:27 +01:00
Florent Daigniere
331bda3822 the space may or may not exist 2023-03-12 12:06:27 +01:00
Florent Daigniere
61ca539d6d Merge branch 'master' of https://github.com/Mailu/Mailu into fail2ban-update 2023-03-12 11:18:25 +01:00
Florent Daigniere
a973fffa9e fixes suggested by diman0 2023-03-11 11:38:18 +01:00
Florent Daigniere
b205f406de Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:54:52 +01:00
Florent Daigniere
2cf4e61fd2 Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:54:11 +01:00
Florent Daigniere
511cdcf1ba Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:53:41 +01:00
Florent Daigniere
dd21d4bf0c Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:53:07 +01:00
Florent Daigniere
07da831533 Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:52:56 +01:00
Florent Daigniere
23ae60e3df Update docs/cli.rst
Co-authored-by: Alexander Graf <ghostwheel42@users.noreply.github.com>
2023-02-20 11:52:21 +01:00
Florent Daigniere
b983c64b4b Clarify we expect v2 2023-02-15 10:28:48 +01:00
Florent Daigniere
bb5d007882 s/docker\-compose\([^\.]\)/docker compose\1/g 2023-02-15 10:00:03 +01:00
Dimitri Huisman
9dffa11f0f Update documentation on how to delete disabled users 2023-02-14 10:00:55 +00:00
Florent Daigniere
65288d7291 Escape this just in case 2023-02-10 14:30:48 +01:00
Florent Daigniere
b623e1f286 The date matcher seems to fail sometimes 2023-02-10 12:09:25 +01:00
Florent Daigniere
6191d3b59e Simplify 2023-02-10 11:52:08 +01:00
Florent Daigniere
0141a7500f Fix the regexps 2023-02-10 11:10:14 +01:00
Florent Daigniere
085bac6e08 Change AUTH_RATELIMIT_IP_V6_MASK from /56 to /48 2023-02-07 09:54:50 +01:00
Florent Daigniere
a60159a0db update defaults, rephrase doc 2023-02-04 16:46:27 +01:00
bors[bot]
4a24bd9e24 Merge #2638
2638: further finishing touches for restful api r=mergify[bot] a=Diman0

- Fix setup utility setting correct value to env var API. It now also sets `false` when the API is disabled in the setup utility.
- Fix IF statement for enabling API in nginx.conf. Setting a different value than `API=true` in mailu.env now disabled the API endpoint in nginx.
- Use safer command for regenerating example API token. It uses crypto.getRandomValues() (as suggested by nextgens) which should be more random than the previously used method. 

## What type of PR?

bug-fix

## What does this PR do?

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


Co-authored-by: Dimitri Huisman <diman@huisman.xyz>
2023-01-31 20:34:48 +00:00
Dimitri Huisman
75afe1092d Use server-side password generator for generating token.
Fix setup correctly writing the value for API to mailu.env
Normalize env vars for front container.
Update reverse proxy with API information.
2023-01-31 12:37:25 +00:00
Dimitri Huisman
2ccdfb9a6b Update demo docs with new capabilities 2023-01-31 08:27:24 +00:00
Alexander Graf
120a7e8368 Still prefer docker-ipv6nat 2023-01-28 19:40:26 +01:00
Chris
7cc5d1f756 Update documentation to reflect ip6tables support being experimental 2023-01-28 19:39:40 +01:00
bors[bot]
179c624116 Merge #2631
2631: Restful api finishing touches r=mergify[bot] a=Diman0

## What type of PR?

enhancement

## What does this PR do?
Some finishing touches for the restful api.

- Make the API configurable via the setup utility.  
  - Configured exactly the same as the ADMIN and WEBMAIL. 
- We have a single config (API) that configures whether it is exposed (via front). Just like ADMIN. The API is always reachable by directly connecting to the admin container.
- API_TOKEN does not enable/disable the API anymore. When it is not configured, an error is returned (via the internet browser) that the API_TOKEN must be configured in mailu.env.
- Fix some small bugs in the setup utility ( selecting none in the dropdown boxes, now correctly changes the config)
- Update Flask-RestX to 1.0.5. This resolves the deprecation warnings introduced by Flask-RestX.

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

- [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: Dimitri Huisman <diman@huisman.xyz>
2023-01-27 18:46:57 +00:00
Alexander Graf
30efdf557f Re-enable cli action user_delete with "disable" as default 2023-01-27 10:28:27 +01:00
Dimitri Huisman
d6e7314f05 Make API configurable via the setup utility
Fix some small bugs in the setup utility
Improve documentation on the API.
2023-01-25 15:30:25 +00:00