619 Commits (7a552f02c3652715e2fb4a4a0d8961f365e938c8)

Author SHA1 Message Date
bors[bot] 20e00ac0c4
Merge #1158
1158: Use nginx for kubernetes ingress r=kaiyou a=micw

## What type of PR?

enhancement

## What does this PR do?

Currently, kubernetes uses a complex ingress setting which is not portable across different ingress controllers. This PR simplifies the ingress and delegates everythins special to Mailu to the front container,

### Related issue(s)
- closes #1121
- closes #1117
- closes #1021
- closes #1045

## Prerequistes

- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog]

Co-authored-by: Michael Wyraz <michael@wyraz.de>
5 years ago
Dario Ernst dc8a798ca1 Use correct octal notation for python3 5 years ago
Dario Ernst 18bc2fe78b Use more readable forms of makedirs and chmod 5 years ago
Dario Ernst 88bfb0d17f Fix rspamd-learn when moving mail from/to junk folder
Before, the ham/spam scripts got the rspamd-ip/port from the environment.
However, when checking the environment of these processes now, it seems
cleared. Maybe the new dovecot version now clears environment? — I couldn’t
find a hint.

In any case, using the common mechanism of injecting the ip/port from where
it’s definately known by the already-used jinja2-mechanism seems reasonably
safe.
5 years ago
bladeswords b13d143b34
Update to address issue #1178 (HTTP headers)
This change should remove the duplicate `x-xss-protection` header and also the `x-powered-by` header.  Hopefully a pull request to main is appropriate, but may be worth back porting to 1.7.

Tested config by modifying live 1.7 nginx config and reloading.  Has had the desired outcome of removing the headers.

```/etc/nginx # nginx -t -c /etc/nginx/nginx.conf 
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
/etc/nginx # nginx -s reload
```

These steps were based on:
- https://serverfault.com/questions/928912/how-do-i-remove-a-server-added-header-from-proxied-location
- https://serverfault.com/questions/929571/overwrite-http-headers-comming-back-from-a-web-application-server-proxied-in-ngi
- http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_hide_header
5 years ago
Niduroki b58f06c03e Add a title to Mailu-Admin pages 5 years ago
bors[bot] e46153c0b1
Merge #1114
1114: Resolve HOST to ADDRESS only if ADDRESS is not already set r=mergify[bot] a=micw

## What type of PR?

bug-fix

## What does this PR do?

~Makes the rsolving from hosts to ips at startup configurable~

I rewrote the pull request after #940 was merged. Now it resolves HOSTs to ADDRESSes only of ADDRESSes are not already set. So on kubernetes we can jsut set the address and have working service discovery.

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

## Prerequistes

~Minor change, backward compatible~
Changelog will be added

Co-authored-by: Michael Wyraz <michael@wyraz.de>
5 years ago
Thomas Sänger 5fa87fbdf7
front: advertise real capabilites of mail-backends 5 years ago
Michael Wyraz 92645bcd4a Use nginx for kubernetes ingress 5 years ago
Michael Wyraz de2f166bd1 Resolve HOST_* to *_ADDRESS only if *_ADDRESS is not already set 5 years ago
Aurélien Bondis 34079244a6 fix ARG positions 5 years ago
Aurélien Bondis e1a4bf32a6 only insert qemu binary if building for arm 5 years ago
bors[bot] 1a597fbe6a
Merge #1130 #1132
1130: Remove unnecessary host variable assignments r=mergify[bot] a=kaiyou

## What type of PR?

Bug fix

## What does this PR do?

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

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


1132: Release Mailu 1.7 r=mergify[bot] a=kaiyou

## What type of PR?

Release

## What does this PR do?

It provides the changelog and migration notes for release 1.7.

### 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: kaiyou <pierre@jaury.eu>
5 years ago
kaiyou d50504fa2b Only set the redis address once, fixes #1125 5 years ago
kaiyou 4afbc09d6e Remove unnecessary host variable assignments 5 years ago
Tim Möhlmann 05ea4474e7
make `ANTIVIRUS_ADDRESS` consistent with #940 5 years ago
Igor Rzegocki 6f973a2e4b
Fixed hardcoded antispam and antivirus host addresses
Fixes #978
5 years ago
bors[bot] 3e626b8500
Merge #940
940: Fix host variables r=mergify[bot] a=ionutfilip

## What type of PR?
bug-fix

## What does this PR do?

### Related issue(s)
- Fix #884

## 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>
5 years ago
bors[bot] 2785bca1f4
Merge #883
883: Admin create user enhancement r=mergify[bot] a=cr1st1p

## What type of PR?
Enhancement

## What does this PR do?
It allows the admin docker image to also create the admin user.
The idea is that in my kubernetes setup, I do not want to manually do anything, as such, I need a way for the admin user to also be created automatically without me getting inside the pod.
So I had to change the manage.py function that creates the user to allow different 'modes' (me, I'll be using 'ifmissing') and also start.py to call that functionality if appropriate environment variables are present.

So now, in my Deployment, I add 3 more environment variables and I get the admin user created, IF not already present.

### Related issue(s)
none?

## 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: cristi <cristi.posoiu@gmail.com>
Co-authored-by: cr1st1p <cristi.posoiu@gmail.com>
Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>
5 years ago
Tim Möhlmann ed0fb77a01
Catch empty WEBMAIL and WEBDAV address 5 years ago
Tim Möhlmann 348ea1a572
Remove obsolete log call 5 years ago
Ionut Filip 075417bf90 Merged master and fixed conflicts 5 years ago
Aurélien Bondis 124b1d4c71 rebase and update for 3.10, avoid adding qemu file to x86 images 5 years ago
Tim Möhlmann 7d964874e8
Cleanup spaces around '=' 5 years ago
Tim Möhlmann 52971ed42e
Use os.environment.get() 5 years ago
Mildred Ki'Lya 95dce5575b Parameterize redis address 5 years ago
bors[bot] 47a40d17b7 Merge #1088
1088: Support domain literals (fix #1087) r=mergify[bot] a=hoellen

## What type of PR?
bug-fix

## What does this PR do?
This PR adds error handling for idna enocding. With telnet you now get a "Bad sender address syntax"  message.

```
> telnet mail.example.com 25

Connected to example.com.
Escape character is '^]'.
220 mail.example.com ESMTP ready
EHLO dummy.example.com
250-mail.example.com
250 STARTTLS
MAIL FROM: does-not-exist@[116.203.165.200]
250 2.0.0 OK
RCPT TO: some-user@example.com
501 5.1.7 Bad sender address syntax
Connection closed by foreign host.
```


### Related issue(s)
fix #1087

## 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: hoellen <dev@hoellen.eu>
5 years ago
hoellen b720bedf72 Support domain literals for receiving emails 5 years ago
hoellen bed2c6ea09 Revert "Error handling for idna encoding"
This reverts commit 10034526a1.
5 years ago
hoellen 10034526a1 Error handling for idna encoding 5 years ago
hoellen 9de5dc2592 Use python package socrate instead of Mailustart 5 years ago
bors[bot] 2788909a13 Merge #1052
1052: Upgrade alpine to 3.10 r=mergify[bot] a=Nebukadneza

## What type of PR?
enhancement / bug-fix

## What does this PR do?
Upgrade the alpine base image to 3.10 and clean up ensuing problems. Also directly uses postfix foreground-running with stdout logging.

### Related issue(s)
closes #1049
closes #1051

Note: This is a duplicate effort of #1050 #1039 …

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

With these images, I have tested manually:
- Email receive to user
  - on main domain
  - on additional domain
  - via an alias on main-domain
  - via an alias on additional domain
  - via catchall
- Email reject
  - of eicar testfiles
- Email sending
- Fetchmail from legacy POP
- Front LE certificates
- Simple overriding for postfix (only postfix.cf), nginx, dovecot, rspamd
- Creating a CalDAV calendar and CardDAV entry using davx5

I have not (yet) tested:
- certdumper
- databases other than sqlite

Todo:
- [x] Get rid of podop at `git+https://github.com/Nebukadneza/Podop.git@fix_py37` once https://github.com/Mailu/Podop/pull/6 is merged
- [x] Bend Mailustart back to original repository
- [x] Test more (? also help wanted ?)

Co-authored-by: Thomas Sänger <thomas@gecko.space>
Co-authored-by: Dario Ernst <dario@kanojo.de>
Co-authored-by: Reto Glauser <git@blinkeye.ch>
5 years ago
kaiyou 23871d9180 Translated using Weblate (Russian)
Currently translated at 100.0% (163 of 163 strings)

Translation: Mailu/admin
Translate-URL: https://translate.tedomum.net/projects/mailu/admin/ru/
5 years ago
kaiyou 0281b5a595 Translated using Weblate (Italian)
Currently translated at 71.8% (117 of 163 strings)

Translation: Mailu/admin
Translate-URL: https://translate.tedomum.net/projects/mailu/admin/it/
5 years ago
kaiyou 45789d3f22 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/
5 years ago
Bambie07 e70d1e1455
fix dns dkim entry 5 years ago
Dario Ernst 1dbda71401 Adapt shared layer conf to now really-missing mailustart in admin (after merging webpack) 5 years ago
Dario Ernst a8c3530bfa Remove accidentally reintroduced rsyslogd config 5 years ago
Dario Ernst 8c2e22f666 Merge branch 'master' into HorayNarea-feat-upgrade-alpine 5 years ago
bors[bot] f77e1bdd0e Merge #1048
1048: Refactor admin using webpack r=mergify[bot] a=kaiyou

## What type of PR?

Refactoring

## What does this PR do?

This PR brings some refactoring to the admin container :
- remove the dependency to mailustart and replace it with socrate
- remove static assets from the repo and use Webpack for building them


Co-authored-by: hoellen <dev@hoellen.eu>
Co-authored-by: kaiyou <pierre@jaury.eu>
5 years ago
Dario Ernst 0f146cd811 Require python3.7-compatible podop
Which is still unreleased, but serves as a placeholder here.
5 years ago
Dario Ernst 0306be1eed Re-add missing MailuStar in admin
It turns out we were all blind and admin *does* use MailuStart
5 years ago
Dario Ernst ce0c24e076 Merge branch 'master' into HorayNarea-feat-upgrade-alpine 5 years ago
Dario Ernst 53f754f5ac Remove MailuStart from admin and correct layer-sharing comments 5 years ago
Dario Ernst 93b54dcffe Install podop from pypi 5 years ago
Thomas Sänger 2c7d1d2f71
use HTTP/1.1 for proxyied connections 5 years ago
hoellen 31464c5c44 Change image back to alpine 5 years ago
hoellen b351841418 Expose jQuery for use outside Webpack build 5 years ago
hoellen 90f678de52 add app.css and fix align of menu button 5 years ago
hoellen 616d40d225 Update password in commandline 5 years ago
Dario Ernst bb2edb6eb6 Revert "Move alpine version definition out to variable"
This reverts commit c787e4bdbd.
5 years ago
hoellen 81a8acf9ec fix resolve issue 5 years ago
Dario Ernst c787e4bdbd Move alpine version definition out to variable 5 years ago
Daniel Huber ae290482c0
Format relay credentials file with jinja 5 years ago
Daniel Huber 515e95076a
Merge branch 'master' into feat-relay-auth 5 years ago
Dario Ernst ea851e77d4 Remove reference to rsyslogd 5 years ago
Dario Ernst 3bfdff155c Use official Mailu/Podop 5 years ago
Dario Ernst a253ca47fe Use official Mailu/MailuStart 5 years ago
Dario Ernst d155b2c533 Start postfix directly with stdout logging 5 years ago
Dario Ernst 9c1675e9d8 Use TEMPORARY workaround-branch for podop python 3.7 compatability 5 years ago
Dario Ernst f85b32914c Add newly missing plain SASL support in postfix 5 years ago
Dario Ernst d1f80cca99 Update Dockerfiles to most recent alpine 3.10 5 years ago
Dario Ernst 96fbaecc2f Correct executables moved by alpine 5 years ago
Thomas Sänger ef3c6c407a upgrade alpine base-image 5 years ago
kaiyou baa5a8a4e0 Fix hostname resolution 6 years ago
kaiyou c20a502695 Do not forcefully resolve optional hostnames 6 years ago
kaiyou a3abf8c353 Add the assets source 6 years ago
kaiyou 4b620ba5d1 Merge branch 'hoellen-fix-sidebar-toggle' into refactor-admin-webpack 6 years ago
kaiyou c147a371d7 Merge branch 'fix-sidebar-toggle' of https://github.com/hoellen/Mailu into hoellen-fix-sidebar-toggle 6 years ago
kaiyou 2d3560b396 Fix select2 using webpack-built assets 6 years ago
kaiyou c2a04ab1d4 Update the build configuration to use webpack and compiled assets 6 years ago
kaiyou ecdf0c25b3 Use webpack for building static assets 6 years ago
kaiyou d7747639e9 Remove the dependency to mailustart, introducing socrate 6 years ago
cristi f2a009795b Merge branch 'master' into admin_create_user_enhancement 6 years ago
bors[bot] f1f5aef7d3 Merge #931
931: Resolve webmail in admin r=mergify[bot] a=ionutfilip

## What type of PR?
bug-fix

## What does this PR do?
Implement mailustart to resolve webmail in admin

### Related issue(s)
Fix #716 

## 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>
6 years ago
bors[bot] 2c90ac3334 Merge #962
962: Open some admin sidebar links in a new browser tab r=kaiyou a=mariooos

## What type of PR?

Enhancement

## What does this PR do?

Add target=_blank attribute to html <a href ...> tag in following admin sidebar links:
- Antispam
- Webmail
- Website
- Help


Co-authored-by: mariooos <48351788+mariooos@users.noreply.github.com>
6 years ago
bors[bot] 7021278bfb Merge #993
993: Make aliases case-insensitive (too) r=mergify[bot] a=Nebukadneza

Even though RFC5321 2.4 explains that local-parts are to be case-sensitive,
this does not seem to be how EMail is used today. Thus, instead of reverting
user-emails back to being case sensitive, let’s make aliases case-insensitive
too. Not only more consistent, this also allows users to enjoy receiving EMails
from large airlines or car-rental agencies onto their already existing aliases.

For the rare case of case sensitive aliases existing, let’s query for the
forced-lowercase alias only in the event that the preserved-case one isn’t
found …

closes #867

## What type of PR?
bug-fix

## What does this PR do?
Make aliases optionally case-insensitive: After attempting to resolve an alias in its preserved case, also attempt to match it case-insensitively.

This followed after some more thought from  #868 …

### Related issue(s)
closes #867

## 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: Dario Ernst <dario@kanojo.de>
6 years ago
bors[bot] df14935819 Merge #945
945: Add extra newline to main.cf r=mergify[bot] a=flopes89

This should prevent jinja from stripping the newline, which causes overrides to be appended after the comment section


## What type of PR?

Bugfix

## What does this PR do?

Adds a new empty newline a the end of `conf/main.cf` so prevent jinja from stripping it, by which overrides done with `postconf -e` are not appended correctly.

### Related issue(s)

see #941

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

Co-authored-by: Florian Peschka <flopes89@users.noreply.github.com>
6 years ago
bors[bot] d76ba5ee39 Merge #1005
1005: distinguish disabled users in user list view by row color r=kaiyou a=zhuangyy

## What type of PR?

enhancement

## What does this PR do?

distinguish disabled users in user list view by row color

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


Co-authored-by: Zhuang Yuyao <jssyan@qq.com>
6 years ago
kaiyou 645c423d09 Update messages.po (POEditor.com) 6 years ago
kaiyou 08bdc715bb Update messages.po (POEditor.com) 6 years ago
kaiyou a150315c1d Added translation using Weblate (Japanese) 6 years ago
Weblate abece125f4 Merge branch 'origin/master' into Weblate 6 years ago
kaiyou d99ad5fe3e Added translation using Weblate (Hungarian) 6 years ago
kaiyou b91c7f64ee Update messages.po (POEditor.com) 6 years ago
kaiyou d929413784 Update messages.po (POEditor.com) 6 years ago
kaiyou 91c8ca1279 Update messages.po (POEditor.com) 6 years ago
kaiyou c0263a2ae9 Update messages.po (POEditor.com) 6 years ago
kaiyou 80c57b597b Update messages.po (POEditor.com) 6 years ago
kaiyou 0566b00664 Update messages.po (POEditor.com) 6 years ago
kaiyou c939b30e6b Update messages.po (POEditor.com) 6 years ago
kaiyou 308521ff9a Update messages.po (POEditor.com) 6 years ago
kaiyou 0ca18035e1 Update messages.po (POEditor.com) 6 years ago
kaiyou 8bcb4deb7e Update messages.po (POEditor.com) 6 years ago
kaiyou 65a61ad5c8 Added translation using Weblate (Icelandic) 6 years ago
kaiyou 57385df15c Deleted translation using Weblate (Icelandic) 6 years ago
kaiyou cfc224352a Added translation using Weblate (Icelandic) 6 years ago
Zhuang Yuyao 67d5c8fcb3 distinguish disabled user in user list view by row color 6 years ago
Dario Ernst e22324adcd Make aliases case-insensitive (too)
Even though RFC5321 2.4 explains that local-parts are to be case-sensitive,
this does not seem to be how EMail is used today. Thus, instead of reverting
user-emails back to being case sensitive, let’s make aliases case-insensitive
too. Not only more consistent, this also allows users to enjoy receiving EMails
from large airlines or car-rental agencies onto their already existing aliases.

For the rare case of case sensitive aliases existing, let’s query for the
forced-lowercase alias only in the event that the preserved-case one isn’t
found …

closes #867
6 years ago
hoellen 167e5a87e1 add sidebar toggle button 6 years ago