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>
2019-05-08 11:48:37 +00:00
kaiyou
645c423d09
Update messages.po (POEditor.com)
2019-05-07 09:24:31 +02:00
kaiyou
08bdc715bb
Update messages.po (POEditor.com)
2019-05-07 09:24:29 +02:00
kaiyou
a150315c1d
Added translation using Weblate (Japanese)
2019-05-07 07:21:09 +00:00
Weblate
abece125f4
Merge branch 'origin/master' into Weblate
2019-05-07 07:21:08 +00:00
kaiyou
d99ad5fe3e
Added translation using Weblate (Hungarian)
2019-05-07 07:21:06 +00:00
kaiyou
b91c7f64ee
Update messages.po (POEditor.com)
2019-05-07 09:15:56 +02:00
kaiyou
d929413784
Update messages.po (POEditor.com)
2019-05-07 09:15:54 +02:00
kaiyou
91c8ca1279
Update messages.po (POEditor.com)
2019-05-07 09:15:50 +02:00
kaiyou
c0263a2ae9
Update messages.po (POEditor.com)
2019-05-07 09:15:47 +02:00
kaiyou
80c57b597b
Update messages.po (POEditor.com)
2019-05-07 09:15:45 +02:00
kaiyou
0566b00664
Update messages.po (POEditor.com)
2019-05-07 09:15:42 +02:00
kaiyou
c939b30e6b
Update messages.po (POEditor.com)
2019-05-07 09:15:40 +02:00
kaiyou
308521ff9a
Update messages.po (POEditor.com)
2019-05-07 09:15:37 +02:00
kaiyou
0ca18035e1
Update messages.po (POEditor.com)
2019-05-07 09:15:35 +02:00
kaiyou
8bcb4deb7e
Update messages.po (POEditor.com)
2019-05-07 09:15:32 +02:00
kaiyou
65a61ad5c8
Added translation using Weblate (Icelandic)
2019-05-07 06:39:48 +00:00
kaiyou
57385df15c
Deleted translation using Weblate (Icelandic)
2019-05-07 06:38:36 +00:00
kaiyou
cfc224352a
Added translation using Weblate (Icelandic)
2019-05-07 06:33:36 +00:00
Zhuang Yuyao
67d5c8fcb3
distinguish disabled user in user list view by row color
2019-05-06 11:00:22 +08:00
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
2019-04-14 12:02:12 +00:00
hoellen
167e5a87e1
add sidebar toggle button
2019-04-14 11:52:01 +02:00
hoellen
92ef73fa74
update AdminLTE to version 2.4
2019-04-14 11:30:55 +02:00
mariooos
253ae9fad8
Open some admin sidebar links (Antispam, Webmail, Website, Help) in a new browser tab
2019-03-08 14:11:58 +01:00
Ionut Filip
ac0fc41421
Merge branch 'master' into replace-gethostbyname
2019-03-08 14:47:21 +02:00
Ionut Filip
dd7710951e
Replaced double quotes with single ones
2019-03-08 14:45:22 +02:00
Daniel Huber
7dcb2eb006
Add authentication for email relays
2019-03-04 18:54:53 +01:00
Ionut Filip
8d34756023
Increase dovecot mail max userip
2019-02-21 17:15:56 +02:00
Florian Peschka
b9fd29a52f
Add extra newline to main.cf
...
This should prevent jinja from stripping the newline, which causes overrides to be appended after the comment section
see #941
2019-02-19 21:09:50 +01:00
Ionut Filip
0ce0b5ec02
Fix addresses in front
2019-02-18 15:41:22 +02:00
Ionut Filip
4c25c83419
HOST_* and *_ADDRESS variables cleanup
2019-02-18 14:46:48 +02:00
Ionut Filip
f9e3cd3c5d
Use corret host_* variables
2019-02-15 16:49:56 +02:00
Ionut Filip
71d63c6e45
Fix redis resolve in imap
2019-02-15 16:20:55 +02:00
Ionut Filip
ef49357eb3
Update redis urls
2019-02-15 16:07:23 +02:00
Ionut Filip
43abbf4d63
Resolve redis and add logging
2019-02-15 15:37:55 +02:00
bors[bot]
211136f9b1
Merge #934
...
934: Pass optional arguments to domain model r=mergify[bot] a=ionutfilip
## What type of PR?
bug-fix
## What does this PR do?
Passing optional args to domain model when using cli.
### Related issue(s)
Fixes #933
## 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: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
2019-02-13 21:58:49 +00:00
bors[bot]
d129733fac
Merge #919
...
919: Install bash in alpine based images. r=mergify[bot] a=firvida
This fixes #918
Bash shell is used by default in Kubernetes' dashboard console, which is very
useful for admins.
## What type of PR?
bug-fix
## What does this PR do?
### Related issue(s)
- closes #918
## 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: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: Abel Alfonso Fírvida Donéstevez <abel@merchise.org>
2019-02-13 21:31:25 +00:00
hoellen
62511b723b
Merge branch 'master' into fix-doc-commands-1
2019-02-13 19:31:39 +01:00
Ionut Filip
4d2844c1f5
Fixed arguments passed to domain
2019-02-13 16:43:45 +02:00
Roman Hoellen
1dfef1609a
add domain cli to docs
2019-02-13 10:53:40 +01:00
Ionut Filip
cebc64a280
Resolve HOST_WEBMAIL in admin
2019-02-13 11:48:32 +02:00
Roman Hoellen
bc617cf8ec
replace _ with - in cli options
2019-02-13 10:30:08 +01:00
Tim Möhlmann
111dae351a
Fix typo in migration file
...
Fixes #905
2019-02-12 18:17:38 +02:00
Abel Alfonso Fírvida Donéstevez
39444c794e
Install bash in alpine based images.
...
This fix https://github.com/Mailu/Mailu/issues/918
Bash shell is used by default in Kubernetes' dashboard console, which is very
useful for admins.
2019-02-06 15:01:02 -05:00
bors[bot]
86b4242f82
Merge #886
...
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 #844
- Fixes #827
- Hopefully helps with #829 and #834
## 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>
2019-02-06 12:56:40 +00:00
Tim Möhlmann
06457e9617
Merge branch 'master' into fix_fetches_create
2019-01-28 12:52:42 +02:00
cr1st1p
9b65a6c862
Merge branch 'master' into admin_create_user_enhancement
2019-01-25 23:36:06 +02:00
Ionut Filip
f8dffe5a19
Resolve hosts in admin
2019-01-25 17:26:45 +02:00
Ionut Filip
004a431e97
Change to mailustart functions
2019-01-25 17:26:45 +02:00
Dario Ernst
34b31727c4
Fix password validator for creating fetched accounts
2019-01-25 15:08:41 +01:00
cristi
a071181c61
Allow to automatically create admin account during startup.
2019-01-25 16:04:20 +02:00
hoellen
fba246e9a1
add wildcard option to cli (alias)
2019-01-24 21:32:22 +01:00
Ionut Filip
9684ebf33f
Use mailustart package from git
2019-01-24 14:53:02 +02:00
hoellen
808092c65e
Merge pull request #834 from hoellen/token-ipv6
...
allow ipv6 addresses for tokens
2019-01-23 21:30:13 +01:00
Tim Möhlmann
e341e0141f
Merge remote-tracking branch 'upstream/master' into token-ipv6
2019-01-22 13:55:56 +02:00
Manuel Vázquez Acosta
dfe5ddb18e
Check if sender address is not null before trying to check the domain.
2019-01-22 05:50:20 -05:00
Tim Möhlmann
fd236e4ea5
Fix syntax error
2019-01-17 18:06:40 +02:00
Tim Möhlmann
7a9685bcb9
Resolve admin during start to work around Docker DNS flaky-ness
2019-01-17 16:40:44 +02:00
nathan-sain
23bad0e042
Set value for SQLALCHEMY_DATABASE_URI in admin DEFAULT_CONFIG to SQLite URI
2019-01-17 07:58:47 -06:00
nathan-sain
db8977e17a
Update SQLite DB file in DEFAULT_CONFIG and DB_TEMPLATES
2019-01-17 00:32:12 -06:00
hoellen
6dea8b422a
Merge pull request #839 from hoellen/fix-create-onupdate-default
...
fix default value for created_at and updated_at
2019-01-16 12:11:13 +01:00
hoellen
79c4edcaf1
Merge pull request #838 from hoellen/schema-maxUserQuota-1
...
Change quota columns type to BigInteger
2019-01-16 12:07:50 +01:00
hoellen
54169db7e3
Merge branch 'master' into fix-forward-validation
2019-01-15 18:55:08 +01:00
hoellen
9721df0bc5
fix default value for created_at and updated_at
...
Use date instead of datetime for created_at and updated_at.
2019-01-15 16:41:58 +01:00
hoellen
cfa7ca3838
Merge branch 'master' into schema-maxUserQuota-1
2019-01-15 16:22:54 +01:00
hoellen
f1e1c96c3b
create migration file for changing quota to big integer
2019-01-15 15:32:00 +01:00
Ionut Filip
2d34f0ee52
Fixed auto-forward email validation
2019-01-15 14:03:09 +02:00
hoellen
c8758a6526
allow ipv6 addresses for tokens
2019-01-13 16:45:41 +01:00
hoellen
2af540a1c9
change quota columns to bigint
2019-01-13 16:40:28 +01:00
Dario Ernst
66df7a31b0
Unify and coerce booleans from env used in admin
...
At some places, the string that DOMAIN_REGISTRATION is got used like a boolean
(an easy misassumption to make while in python and dealing with the config
dict), making `DOMAIN_REGISTRATION=False` act as a truthy value. To stop such
future problems from happening, coerce environment config strings to real
bools.
closes #830
2019-01-13 10:22:32 +01:00
mergify[bot]
9175b15d49
Merge pull request #826 from Nebukadneza/reverse_user_alias_pref
...
Reverse the resolution order of user and alias
2019-01-11 16:28:35 +00:00
mergify[bot]
278bcfb13a
Merge pull request #814 from Nebukadneza/fix_delimiter_alias
...
Deliver mails to alias-stripped-of-delimeter, even if catchall exists
2019-01-11 14:06:35 +00:00
Dario Ernst
276dc3ffda
Reverse the resolution order of user and alias
...
Since it’s common for wildcard~ish systems to prefer concrete objects over
wildcards, and aliases can be broad-wildcards (think catchall, %@xxx.tld ), it
may be more intuitive for users that user-names rank higher than aliases. This
makes it impossible for user-names to be unreachable, since they can be
completely overridden by a catchall otherwise.
This changes default behavior, and is not configurable.
closes #815
2019-01-11 11:51:56 +01:00
Tim Möhlmann
8541ae2c46
Fix migration order after merge
2019-01-11 12:49:07 +02:00
mergify[bot]
99cd1d714b
Merge pull request #799 from hoellen/fix-domain-negative-values-1
...
don't allow negative values on domain creation/edit
2019-01-11 09:57:15 +00:00
Tim Möhlmann
2567646f47
Merge branch 'master' into fix-domain-negative-values-1
2019-01-11 11:32:30 +02:00
Ionut Filip
50343f354e
Merge remote-tracking branch 'upstream/master' into feat-psql-support
2019-01-11 11:21:22 +02:00
Dario Ernst
b8d1beed29
Simplify alias-wildcard detection to not consider actual % anymore
2019-01-10 23:06:56 +01:00
Dario Ernst
10d2601963
Unsimplify alias precedence handling
...
As discussed with hoellen on matrix, since postfix indeed supports including
the recipient delimiter character in a verbatim alias, we should support so too
— and handle its precedence correctly. The clearer and simpler formulation of
the precedence-clauses are credit to @hoellen. Thanks!
2019-01-10 17:30:11 +01:00
mergify[bot]
b4822ad43e
Merge pull request #821 from HorayNarea/fix-remove-fts
...
remove (broken) FTS
2019-01-10 11:38:37 +00:00
mergify[bot]
161394a774
Merge pull request #817 from hoellen/fix-fetch-passwordfield-1
...
fix edit of fetched acc without changing password
2019-01-10 11:10:46 +00:00
Thomas Sänger
492f3867d8
remove (broken) FTS
2019-01-10 12:09:08 +01:00
Dario Ernst
ac64a75743
Simplify alias precedence handling; Remove bogus changelog
2019-01-10 10:28:57 +01:00
mergify[bot]
520ebbb97d
Merge pull request #819 from hoellen/move-spam-1
...
Mark messages as seen when reporting them as spam
2019-01-10 02:08:12 +00:00
hoellen
7247b4b10c
Merge branch 'master' into fix-password-on-user-edit
2019-01-09 21:14:18 +01:00
hoellen
b65d70cf1e
mark spam as seen
2019-01-09 20:12:17 +01:00
hoellen
a59d5dad23
fix edit of fetched acc without changing password
2019-01-09 12:52:05 +01:00
hoellen
f08491dc46
fix forced password on user edit
2019-01-09 12:09:14 +01:00
Ionut Filip
2b0a2d561b
Fix connection to mysql db
2019-01-09 12:53:59 +02:00
Dario Ernst
291f8a457b
Deliver mails to alias-stripped-of-delimeter, even if catchall exists
...
This fixes delivery to an alias minus recipient delimiter in cases where a
wildcard alias would also match. For example,
* foo@xxx.tld
* %@xxx.tld
Sending to foo+spam@xxx.tld would get eaten by the catchall before this fix.
Now, the order of alias resolution is made clearer.
closes #813
2019-01-09 11:41:22 +01:00
hoellen
732b5fe161
change password field type in fetch creation/edit and add validators.
2019-01-08 19:44:27 +01:00
mergify[bot]
4204facd85
Merge pull request #810 from usrpro/feat-logging
...
Implement some degree of logging
2019-01-08 15:53:31 +00:00
Tim Möhlmann
049ca9941f
Cleanup syntax and fix typo
2019-01-08 05:21:03 +02:00
Tim Möhlmann
0ac3cf9617
Don't recursivly chown on mailboxes.
...
This fixes #776 .
Recursion is not needed, as the permissions will only need to be set on the first invocation.
2019-01-08 05:00:15 +02:00
Tim Möhlmann
71cda7983e
Merge branch 'master' into feat-logging
2019-01-08 01:54:33 +02:00
Tim Möhlmann
7d01bb2a4d
LOG_LEVEL docs and changelog entry
2019-01-08 00:58:01 +02:00
Tim Möhlmann
b04a9d1c28
Implement debug logging for template rendering
2019-01-08 00:38:06 +02:00
Tim Möhlmann
b9313488dd
Add logging for tenacity.retry
...
In the process we found that the previous way of tenacity syntax caused it not to honor any args.
In this commit we've refactored to use the @decorator syntax, in which tenacity seems to behave better.
2019-01-07 23:49:10 +02:00
mergify[bot]
3b5f3af207
Merge pull request #778 from Nebukadneza/fix_recipient_delimiter
...
Attempt stripping recipient delimiter from localpart
2019-01-07 19:01:44 +00:00
Ionut Filip
9077bf7313
Merge remote-tracking branch 'upstream/master' into feat-psql-support
2019-01-07 16:29:50 +02:00
Tim Möhlmann
5636e7f5a7
Remove to avoid matching webroot
2019-01-07 14:08:00 +02:00
Ionut Filip
953aa04354
Added postgresql-libs to admin
2019-01-07 14:04:39 +02:00
Tim Möhlmann
561e2fda67
Merge remote-tracking branch 'upstream/master' into fix-favicon
2019-01-07 12:20:06 +02:00
hoellen
501ecf13c1
add migration script
2019-01-06 15:36:57 +01:00
Tim Möhlmann
a358b5305f
Merge pull request #797 from Mailu/upgrade-pyyaml
...
Upgrade PyYAML
2019-01-06 15:56:18 +02:00
Tim Möhlmann
4f93e09028
Implement favicon package
...
Credit to:
- https://stackoverflow.com/a/19590415/1816774
- https://realfavicongenerator.net/
2019-01-06 15:49:40 +02:00
Tim Möhlmann
284d54190a
Upgrade PyYAML to 4.2b4
2019-01-06 14:40:29 +02:00
hoellen
dda64fe91e
allow to disable aliases or users for domains and don't allow negativ values on domain creation/edit
2019-01-05 13:52:13 +01:00
hoellen
8fe1e788b3
add missing route fixes
2019-01-04 21:18:51 +01:00
Tim Möhlmann
3c7bf58211
Upgrade PyYAML
...
CVE-2017-18342
Vulnerable versions: < 4.2b1
Patched version: 4.2b1
In PyYAML before 4.1, the yaml.load() API could execute arbitrary code. In other words, yaml.safe_load is not used.
2019-01-04 21:52:43 +02:00
hoellen
d5d4d6c337
harden email address validation and fix routes with user_email
2019-01-04 18:05:56 +01:00
Ionut Filip
01ec6e7bf3
Removed undefined function
2019-01-04 16:48:51 +02:00
mergify[bot]
d483ef3c2a
Merge pull request #792 from hoellen/admin-broken-links-1
...
fix broken webmail and logo url in admin
2019-01-02 17:18:46 +00:00
Tim Möhlmann
74fe177297
Merge pull request #785 from TheLegend875/feat-displayed-name
...
Feature: send auto reply with displayed name
2019-01-02 19:14:17 +02:00
hoellen
f617e82c06
fix broken webmail and logo url in admin
2019-01-02 14:08:03 +01:00
Tim Möhlmann
4068c5b751
Versioning for mysqlclient and psycopg2
2018-12-31 18:22:24 +02:00
Tim Möhlmann
b2823c23b8
Merge remote-tracking branch 'upstream/master' into feat-psql-support
2018-12-31 18:20:39 +02:00
Tim Möhlmann
9eaeb80a27
Finalize merge with kaiyou/feat-multiple-db
2018-12-31 18:02:07 +02:00
TheLegend875
999d2a9557
changed default.sieve to send displayed name
2018-12-30 22:06:36 +01:00
TheLegend875
2954d84790
added necessary ui elements
2018-12-30 22:06:36 +01:00
TheLegend875
56f4d4c894
fixed auto-forward
2018-12-30 22:05:33 +01:00
TheLegend875
5bdbbf60d7
fixed display of username when not logged in
2018-12-28 19:30:23 +01:00
Dario Ernst
c2d45a47fe
Attempt stripping recipient delimiter from localpart
...
Since postfix now asks us for the complete email over podop, which
includes the recipient-delimiter-and-what-follows not stripped, we need
to attempt to find both the verbatim localpart, as well as the localpart
stripped of the delimited part ….
Fixes #755
2018-12-27 16:31:59 +01:00
Tim Möhlmann
19df86f13f
Merge pull request #764 from usrpro/fix-alias-bug
...
Added regex validation for alias username
2018-12-27 11:54:43 +02:00
Tim Möhlmann
3a5b763018
Option to disable full text search (lucene)
...
This is a workaround for the bug in issue #751
2018-12-25 13:52:12 +02:00
mergify-bot
983c388150
Merge branch 'master' into 'fix-localpart-chars'
2018-12-21 14:48:36 +01:00
mergify-bot
6cfb74e96c
Merge branch 'master' into 'fix-localpart-chars'
2018-12-21 14:25:19 +01:00
Tim Möhlmann
af086bbdbe
Include DKIM in VOLUME
2018-12-20 17:47:15 +02:00
hoellen
c041a9d45c
allow all characters for username in dovecot
2018-12-19 16:19:37 +01:00
Tim Möhlmann
24828615cf
Webmail on root, fixes #757
2018-12-19 16:20:24 +02:00
Ionut Filip
8fc2846924
Added regex validation for alias username
2018-12-18 17:06:39 +02:00
Tim Möhlmann
3c4ee1b31e
Merge pull request #743 from kaiyou/master
...
Fixes #738 regarding application context
2018-12-14 11:09:27 +02:00
ofthesun9
97b3a85090
Merge pull request #737 from hoellen/fix-alias-match-behaviour
...
fix alias match behaviour
2018-12-13 20:34:09 +01:00
mergify-bot
09a50b6cfc
Merge branch 'master' into 'master'
2018-12-13 19:14:20 +01:00
kaiyou
4060ac2223
Remove some forgotten debugging
2018-12-13 15:19:34 +01:00
kaiyou
087841d5b7
Fix the way we handle the application context
...
The init script was pushing an application context, which maked
flask.g global and persisted across requests. This was evaluated
to have a minimal security impact.
This explains/fixes #738 : flask_wtf caches the csrf token in the
application context to have a single token per request, and only
sets the session attribute after the first generation.
2018-12-13 14:23:17 +01:00
kaiyou
b5f51b0e2e
Update python dependencies
2018-12-13 14:10:43 +01:00
kaiyou
8707b0fcd7
Use a dictionary of db connection string templates
2018-12-10 15:30:53 +01:00
kaiyou
19f18e2240
Lowercase relays as well as other tables
2018-12-10 15:16:30 +01:00
kaiyou
7e388e472a
Handle relay name as an Idna domain
2018-12-10 15:16:30 +01:00
kaiyou
871aa14c9a
Lowercase every domain name and email
2018-12-10 15:16:30 +01:00
kaiyou
3df9b3962d
Add default columns to the configuration table
2018-12-10 15:16:30 +01:00
kaiyou
b88f61f183
Name all constraints when creating them
...
Prefious commit set the constraint names for existing databases.
New databases can now have named constraints from the ground up.
2018-12-10 15:16:30 +01:00
kaiyou
b8282b1d46
Support named constraints for multiple backends
...
Supporting multiple backends requires that specific sqlite
collations are not used, thus lowercase is applied to all non
case-sensitive columns. However, lowercasing the database requires
temporary disabling foreign key constraints, which is not possible
on SQLite and requires we specify the constraint names.
This migration specific to sqlite and postgresql drops every
constraint, whether it is named or not, and recreates all of them
with known names so we can later disable them.
2018-12-10 15:16:30 +01:00
kaiyou
e022513a94
Fix support for postgres and mysql
2018-12-10 15:16:30 +01:00
kaiyou
a881a1a839
Revert "Make current migrations work with postgresql"
...
This reverts commit 9b9f3731f6
.
2018-12-10 15:03:12 +01:00
kaiyou
76925e82f3
Revert "Implement CIText as NOCASE alternative in postgresql"
...
This reverts commit 0f3c1b9d15
.
2018-12-10 15:01:27 +01:00
kaiyou
f52ae5535c
Revert "Created function for returning email type"
...
This reverts commit 436055f02c
.
2018-12-10 14:58:18 +01:00
kaiyou
f6520eace6
Merge branch 'feat-psql-support' of https://github.com/usrpro/Mailu into usrpro-feat-psql-support
2018-12-10 14:50:38 +01:00
hoellen
8fe9e695f3
prefer non-wildcard aliases over wildcard aliases
2018-12-10 08:40:10 +01:00
Tim Möhlmann
c7dcfee882
Merge pull request #713 from pgeorgi/extend-nginx
...
nginx: Allow extending config with overrides
2018-12-09 21:44:24 +02:00
hoellen
79768c09f6
fix alias matching behaviour
2018-12-09 19:49:23 +01:00
Tim Möhlmann
6ca8ed437d
Merge pull request #732 from Nebukadneza/add_front_certificate_reload
...
Add certificate watcher for external certs to reload nginx
2018-12-08 20:11:09 +02:00
Dario Ernst
1aa97c9914
Add certificate watcher for external certs to reload nginx
...
In case of TLS_FLAVOR=[mail,cert], the user supplies their own certificates.
However, since nginx is not aware of changes to these files, it cannot
reload itself e.g. when the certs get renewed.
To solve this, let’s add a small daemon in the place of
`letsencrypt.py`, which uses a flexible file-watching framework and
reloads nginx in the case the certificates change ….
2018-12-07 16:20:42 +00:00
Tim Möhlmann
c00910ca4b
Merge remote-tracking branch 'upstream/master' into extend-nginx
2018-12-07 16:48:50 +02:00
Tim Möhlmann
97d338e68a
Rectify 'endif' placement
2018-12-07 16:44:42 +02:00
Tim Möhlmann
425cdd5e77
Fix syntax errors
2018-12-07 16:29:41 +02:00
Tim Möhlmann
20f1faf6d0
Send 404 when nothing server at '/'
...
Prevents Nginx welcome screen
2018-12-07 16:10:52 +02:00
Tim Möhlmann
2de4995fec
Don't redirect when webmail is served on '/'
2018-12-07 15:17:04 +02:00
Tim Möhlmann
f0906073e3
Merge remote-tracking branch 'upstream/master' into feat-subnet2
2018-12-07 11:08:28 +02:00
mergify[bot]
a634c7b72d
Merge pull request #725 from usrpro/fix-outlook2019-smtp
...
Add login method to smtp_auth under ssl
2018-12-06 16:02:35 +00:00
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.
2018-12-06 12:08:22 +02:00
kaiyou
b6aaf57be1
Merge branch 'refactor-config' of github.com:kaiyou/mailu into refactor-config
2018-12-06 10:33:21 +01:00
kaiyou
d0f07984b0
Merge remote-tracking branch 'upstream/master' into refactor-config
2018-12-06 10:23:43 +01:00
Tim Möhlmann
9dd447e23b
Add login method to smtp_auth under ssl
...
Fixes #704
2018-12-06 01:00:16 +02:00
Patrick Georgi
eac4d553a9
nginx: Allow extending config with overrides
...
To facilitate this, the default redirect at / can be disabled, even if
the default remains at redirecting to the webmailer.
The extensions are within the host scope and are read from
$ROOT/overrides/nginx/*.conf.
2018-12-05 23:54:52 +01:00
mergify[bot]
2d4bac03ad
Merge pull request #723 from usrpro/clean-healthcheck-logs
...
Admin: Prevent redirects during health checking
2018-12-05 18:09:14 +00:00
mergify[bot]
a382f74680
Merge pull request #705 from usrpro/fix-recaptcha
...
Fix recaptcha
2018-12-05 18:05:22 +00:00
mergify[bot]
37027cfce7
Merge pull request #633 from kaiyou/fix-sender-checks
...
Improve sender checks
2018-12-05 16:03:24 +00:00
Tim Möhlmann
d18cf7cb25
Prevent redirects during health checking
2018-12-05 17:43:42 +02:00
Tim Möhlmann
c9df311a0d
Set forward_destination to an empty list
...
The value of `None` resulted in an error, since a list was expected.
2018-12-04 16:22:18 +02:00
Tim Möhlmann
eff6c34632
Catch asterisk before resolve_domain
...
Asterisk results in IDNA error and a 500 return code.
2018-12-04 15:40:07 +02:00
Ionut Filip
7b8835070d
Added tenacity retry fir migrations connection
2018-12-03 15:25:10 +02:00
David Rothera
88c174fb7a
Query alternative table for domain matches
...
At present postfix checks this view for matches in the domain table and is used to accept/deny messages sent into it however it never checks for matches in the alternative table.
Fixes #718
2018-12-02 11:21:42 +00:00
Ionut Filip
436055f02c
Created function for returning email type
2018-11-21 13:43:06 +01:00
Tim Möhlmann
47a3fd47b5
Fix DB_FLAVOR condition testing for models.py
2018-11-20 18:18:33 +02:00
Tim Möhlmann
0f3c1b9d15
Implement CIText as NOCASE alternative in postgresql
2018-11-20 14:41:17 +02:00
Tim Möhlmann
9b9f3731f6
Make current migrations work with postgresql
2018-11-19 19:10:38 +02:00
Tim Möhlmann
8bdc0c71af
Allow for setting a different DB flavor
2018-11-14 14:58:54 +02:00
Ionut Filip
fed7146873
Captcha check on signup form
2018-11-09 12:30:49 +02:00
Tim Möhlmann
4783e61693
Fix password context
...
Fixes the following error:
```
admin_1 | [2018-11-09 09:44:10,533] ERROR in app: Exception on /internal/auth/email [GET]
admin_1 | Traceback (most recent call last):
admin_1 | File "/usr/lib/python3.6/site-packages/flask/app.py", line 2292, in wsgi_app
admin_1 | response = self.full_dispatch_request()
admin_1 | File "/usr/lib/python3.6/site-packages/flask/app.py", line 1815, in full_dispatch_request
admin_1 | rv = self.handle_user_exception(e)
admin_1 | File "/usr/lib/python3.6/site-packages/flask/app.py", line 1718, in handle_user_exception
admin_1 | reraise(exc_type, exc_value, tb)
admin_1 | File "/usr/lib/python3.6/site-packages/flask/_compat.py", line 35, in reraise
admin_1 | raise value
admin_1 | File "/usr/lib/python3.6/site-packages/flask/app.py", line 1813, in full_dispatch_request
admin_1 | rv = self.dispatch_request()
admin_1 | File "/usr/lib/python3.6/site-packages/flask/app.py", line 1799, in dispatch_request
admin_1 | return self.view_functions[rule.endpoint](**req.view_args)
admin_1 | File "/usr/lib/python3.6/site-packages/flask_limiter/extension.py", line 544, in __inner
admin_1 | return obj(*a, **k)
admin_1 | File "/app/mailu/internal/views/auth.py", line 18, in nginx_authentication
admin_1 | headers = nginx.handle_authentication(flask.request.headers)
admin_1 | File "/app/mailu/internal/nginx.py", line 48, in handle_authentication
admin_1 | if user.check_password(password):
admin_1 | File "/app/mailu/models.py", line 333, in check_password
admin_1 | context = User.pw_context
admin_1 | AttributeError: type object 'User' has no attribute 'pw_context'
```
2018-11-09 11:45:08 +02:00
kaiyou
72e1b444ca
Merge alembic migrations
2018-11-08 21:55:39 +01:00
kaiyou
5b769e23da
Merge branch 'master' into refactor-config
2018-11-08 21:43:05 +01:00
kaiyou
02995f0a15
Add a mailu command line to flask
2018-11-08 21:29:30 +01:00
kaiyou
f9e30bd87c
Update the dockerfile and upgrade dependencies
2018-11-08 21:29:11 +01:00
kaiyou
4a7eb1eb6c
Explicitely declare flask migrate
2018-11-08 20:32:23 +01:00
kaiyou
2a8808bdec
Add the configuration table migration
2018-11-08 20:32:06 +01:00
kaiyou
f57d4859f3
Provide an in-context wrapper for getting users
2018-11-08 20:30:41 +01:00
kaiyou
f6013aa29f
Fix an old migration that was reading configuration before migrating
2018-11-08 20:30:20 +01:00
kaiyou
206cce0b47
Finish the configuration bits
2018-11-08 20:29:52 +01:00
Ionut Filip
1bbf3f235d
Using a new class when captcha is enabled
2018-11-07 09:58:49 +02:00
mergify[bot]
12689965bd
Merge pull request #699 from usrpro/fix-admin-bug
...
Fixed admin_1 errors in the logs
2018-11-06 18:10:52 +00:00
hoellen
680ad4b67a
Catching only ValueError
...
Co-Authored-By: ionutfilip <ionut.philip@gmail.com>
2018-11-05 19:36:28 +02:00
mergify[bot]
e08f3e81d0
Merge pull request #680 from usrpro/feat-startup
...
Standarize images
2018-11-02 17:36:28 +00:00
Ionut Filip
6dcc33e390
Fixed admin_1 errors in the logs
...
Fixed errors when trying to log in with an account without domain.
This closes #585
2018-11-02 12:14:23 +02:00
Tim Möhlmann
42e2dbe35d
Standarize image by using shared / similair layers
2018-10-31 19:17:23 +02:00
Tim Möhlmann
5fa2aac569
Fix imap login when no webmail selected
2018-10-31 17:47:05 +02:00
Tim Möhlmann
903bb70c5b
Merge remote-tracking branch 'upstream/master' into standarize-images
2018-10-31 16:22:21 +02:00
Scott
56fb74c502
Fix typo (duplicate self). Fixes #683
2018-10-23 10:47:31 -05:00
Ionut Filip
8a44a44688
Merge branch 'master' into feat-startup
2018-10-23 12:51:32 +03:00
Ionut Filip
1187cac5e1
Finished up switching from .sh to .py
2018-10-23 11:58:36 +03:00
Tim Möhlmann
ed81c076f2
Take out "models" path, as we are already in it
2018-10-23 11:53:52 +03:00
Tim Möhlmann
aed80a74fa
Rectify decleration of domain_name
2018-10-23 11:52:15 +03:00
Tim Möhlmann
2d382f2d67
Merge branch 'master' into fix-sender-checks
2018-10-23 10:58:29 +03:00
Ionut Filip
0e5606d493
Changed start.sh to start.py
2018-10-22 18:01:59 +03:00
Ionut Filip
eb7dfb5771
Cleaning up start.py
2018-10-22 17:02:43 +03:00
Thomas Sänger
603b6e7390
Merge pull request #2 from usrpro/fix-nginx-healthcheck
...
Fix nginx healthcheck
2018-10-21 22:44:44 +02:00
Tim Möhlmann
81b24f61e8
Merge branch 'master' into feat-healthchecks
2018-10-21 20:58:59 +03:00
Tim Möhlmann
a2fea36c79
Increase HEALTHCHECK start time for services that need to wait for host resolving during startup.
...
In Docker Swarm mode the services listed below can get stuck in their start script, while they
are waiting for other services become available. Now, with HEALTHCHECK enabled, docker does not resolve
names of services that not pass HEALTHCHECK yet. Meaning that if one of the depenend services is not yet
available, it will create a chain of failing services.
The services below retry to resolve 100 time, with an average of 3.5 seconds. Hence, the --start-time
flag is now set at 350 seconds.
- dovecot (imap)
- postfix (smtp)
- rspamd (antispam)
2018-10-21 20:49:01 +03:00
Tim Möhlmann
c3e89967fb
Fix front health checking
...
- Specified seperated /health path in order to allow for healthcheck even if webmail and admin are not seletectd. This also allows healthchecking fom external services like DNS load balancers;
- Make curl not to fail on TLS because localhost is not included in the certificates.
2018-10-21 20:45:41 +03:00
mergify[bot]
90b8c3cc1f
Merge pull request #665 from kaiyou/feat-reply-startdate
...
Implement a start date filter for autoreply, fixes #362
2018-10-20 23:18:06 +00:00
mergify[bot]
bce1487338
Merge pull request #576 from hacor/master
...
Kubernetes fixed for production
2018-10-20 22:30:38 +00:00
kaiyou
1fcaef7c7e
Merge branch 'master' into fix-sender-checks
2018-10-20 10:18:36 +02:00
Paul Williams
78bd5aea1c
enable http2, because it's that easy
2018-10-19 22:46:36 -06:00
hoellen
72d4fa2bc9
remove empty line from merge conflict
2018-10-19 22:13:38 +02:00
hoellen
857ad50509
Merge branch 'master' into feat-reply-startdate
2018-10-19 22:06:56 +02:00
mergify[bot]
4a5c0a6d21
Merge pull request #667 from kaiyou/fix-password-performance
...
Improve password checking performance
2018-10-19 18:56:26 +00:00
mergify[bot]
80658c30da
Merge pull request #669 from hoellen/fix-webmail-root
...
Fix nginx conf if webmail is on root path
2018-10-19 15:18:40 +00:00
Hans Cornelis
f10416e85a
Merged with new PRs
2018-10-19 13:40:17 +02:00
mergify[bot]
118ea0f3fb
Merge pull request #604 from ofthesun9/feature-swarm
...
Enabling swarm deployment on master branch
2018-10-19 09:18:34 +00:00
mergify[bot]
727970514d
Merge pull request #527 from ofthesun9/feat-fuzzyhashes
...
Trying to enable fuzzy hashes for rspamd
2018-10-18 21:59:08 +00:00
kaiyou
82069ea3f0
Clean most of the refactored code
2018-10-18 17:55:07 +02:00
kaiyou
f40fcd7ac0
Use click for the manager command
2018-10-18 16:20:56 +02:00
kaiyou
fc24426291
First batch of refactoring, using the app factory pattern
2018-10-18 15:57:43 +02:00
hoellen
d4f32c3e7d
remove rewrite if webmail is on root
2018-10-18 14:27:28 +02:00
kaiyou
01fa179767
Update the user password in database when needed
2018-10-17 21:22:22 +02:00
kaiyou
988e09e65e
Add a profiler in debug mode for improving performance
2018-10-17 21:22:15 +02:00
kaiyou
dba8f1810d
Do not check the password another time in Dovecot
2018-10-17 21:22:09 +02:00
kaiyou
d5162328ec
Allow dovecot to write the source configuration directory for compiling sieve scripts
2018-10-17 18:48:59 +02:00
kaiyou
ce0bf3366d
Learn fuzzy hashes automatically
2018-10-17 18:48:28 +02:00
kaiyou
0a5dbf6230
Re-enable local dovecot sieve scripts
2018-10-17 17:41:21 +02:00
Hans Cornelis
ef55ca525c
Deleted conflicting merge files
...
Signed-off-by: Hans Cornelis <hacornelis@gmail.com>
2018-10-17 07:48:52 +02:00
Hans Cornelis
e67a0d464b
Deleted old folder
2018-10-17 07:44:21 +02:00
Hans Cornelis
3098343360
Merged conflicts
2018-10-17 07:32:56 +02:00
hacor
4ea12deae7
Added kubernetes to Mailu
2018-10-17 07:22:55 +02:00
kaiyou
ed3388ed6e
Merge branch 'master' into feat-reply-startdate
2018-10-16 23:53:43 +02:00
kaiyou
7c82be904f
Merge branch 'master' of github.com:mailu/mailu
2018-10-16 23:50:07 +02:00
Thomas Sänger
a412951a30
simpler healthcheck for postfix
2018-10-16 23:12:02 +02:00
Thomas Sänger
0bc901a722
add healthcheck for dovecot
2018-10-16 23:11:20 +02:00
Thomas Sänger
1fc40bf932
add healthcheck for postfix
2018-10-16 22:57:25 +02:00
Thomas Sänger
39272ab05c
add healthcheck for http services
2018-10-16 21:38:12 +02:00
kaiyou
e784556330
Fix an edge case with old values containing None for coma separated lists
2018-10-16 20:47:38 +02:00
kaiyou
f647d1a0bc
Merge branch 'master' into fix-sender-checks
2018-10-16 20:41:18 +02:00
kaiyou
5ada669f43
Rebase reply startdate on master
2018-10-16 20:38:18 +02:00
mergify[bot]
bee81d1a54
Merge pull request #647 from HorayNarea/bcrypt
...
support bcrypt and use it as default
2018-10-16 17:50:44 +00:00
mergify[bot]
9fd7851cb6
Merge pull request #648 from HorayNarea/apk-no-cache
...
remove apk-warning about cache
2018-10-16 06:35:09 +00:00
kaiyou
15eb2806bf
Merge branch 'master' into feat-reply-startdate
2018-10-15 22:10:08 +02:00
kaiyou
5035975c41
Remove Postfix debugging
2018-10-15 22:07:38 +02:00
kaiyou
c6846fd8db
Merge branch 'master' into feat-reply-startdate
2018-10-15 21:52:06 +02:00
mergify[bot]
a91a54b5f1
Merge pull request #651 from usrpro/fix-certbot
...
Front: move to Alpine:3.8 and fixing #522
2018-10-11 14:15:04 +00:00
Tim Möhlmann
de43060ef8
Move to Alpine:3.8 and fixing #522
2018-10-11 14:06:26 +03:00
Thomas Sänger
bdfcc5b530
pin alpine-version for 'none'-image
2018-10-11 03:20:19 +02:00
Thomas Sänger
6aafef88bd
remove apk-warning about cache
2018-10-11 02:57:13 +02:00
Thomas Sänger
c8b39c5d4a
support bcrypt and use it as default
2018-10-10 19:29:23 +02:00
kaiyou
10ec2f999a
Another (embarrassing) fix for a merge typo
2018-10-10 11:39:41 +02:00
kaiyou
2e1aa079c1
Fix one (hopefully) last merge typo
2018-10-10 11:24:51 +02:00
kaiyou
4b9dbf00a8
Fix yet another merge-time typo
2018-10-10 09:51:50 +02:00
kaiyou
e8e133b53d
Fix a merge typo in postfix build
2018-10-10 08:54:57 +02:00
kaiyou
00b5ae11db
Merge branch 'master' into feat-abstract-db
2018-10-10 08:41:56 +02:00
ofthesun9
13146be57e
Merge branch 'master' into feature-swarm
2018-10-07 16:42:25 +00:00
kaiyou
508e519a34
Refactor the postfix views and implement sender checks
2018-10-07 16:24:48 +02:00
kaiyou
8b189ed145
Separate senderaccess and senderlogin maps
2018-10-07 16:23:53 +02:00
ofthesun9
74796201ec
Merge branch 'master' into feature-swarm
2018-10-07 08:00:12 +00:00
kaiyou
fc99eb7b34
Re-enable sender access check to prevent source spoofing
2018-10-07 01:52:01 +02:00
kaiyou
f3f0b98755
Fix relay restrictions so email gets delivered correctly
2018-10-07 01:28:22 +02:00
Tim Möhlmann
0817629869
Increase attempts as it failed on fresh Swarm host
2018-10-07 02:10:13 +03:00
Tim Möhlmann
716ed16f34
Fix typo
2018-10-07 01:52:52 +03:00
Tim Möhlmann
16469d7282
Upgrade to newer pip version
2018-10-07 01:40:22 +03:00
Tim Möhlmann
1bae5968ad
Import tenacy and fix syntax errors
2018-10-07 01:39:02 +03:00
Tim Möhlmann
c457ccfa60
Use tenacity for resolver retries
2018-10-07 00:32:05 +03:00
Tim Möhlmann
d6c386651d
Merge branch 'master' into fix-swarm-start
2018-10-06 23:48:32 +03:00
ofthesun9
09d77bc2de
Handle the case where the variable REJECT_UNLISTED_RECIPIENT is not set
2018-10-04 18:55:56 +00:00
ofthesun9
cc17962c86
fixes #583
2018-10-04 18:55:56 +00:00
kaiyou
4d70a8737e
Expose the data volume for admin container
2018-09-28 17:42:10 +02:00
kaiyou
2cba045013
Explicitely declare required volumes, fixes #568
2018-09-28 17:28:46 +02:00
kaiyou
fcad52b145
Implement a start date filter for autoreply, fixes #362
2018-09-27 22:45:16 +02:00
kaiyou
82bb8c2fd9
Merge remote-tracking branch 'github/master' into feat-abstract-db
2018-09-27 17:06:21 +02:00
kaiyou
f5668dea51
Handle relays as virtual transports through podop
2018-09-27 16:30:20 +02:00
kaiyou
9890e1fb2a
Fix the dovecot configuration path
2018-09-27 16:13:02 +02:00
kaiyou
42c6bdb4df
Split the internal blueprint into multiple view files
2018-09-27 16:09:38 +02:00
kaiyou
dc4b0d21ea
Clean the dovecot configuration dir
2018-09-27 16:01:21 +02:00
kaiyou
f9c6c98180
Remove fetchmail dependency to the databse
2018-09-27 15:54:08 +02:00
kaiyou
43b6547e1c
Lower the loglevel of podop
2018-09-27 14:53:58 +02:00
kaiyou
542793260b
Handle wildcard aliases using podop
2018-09-27 14:53:23 +02:00
kaiyou
0d52364eac
Fix alias resolution through podop
2018-09-27 14:38:10 +02:00
kaiyou
6d088504bd
Adjust podop debug level based on environment
2018-09-27 14:37:47 +02:00
kaiyou
6ba55ee377
Implement the sieve script name resolution pattern
2018-09-27 14:10:53 +02:00
kaiyou
3c725bf634
Only support generating the default sieve script
2018-09-27 08:18:22 +02:00
kaiyou
ca6c0bc8fd
Fix the user sieve script generation
2018-09-27 08:18:03 +02:00
kaiyou
4d25083847
Move sieve script generation to the admin container
2018-09-27 08:11:26 +02:00
kaiyou
cfeaa189f9
Use proper 404 return codes for missing objects
2018-09-27 08:00:31 +02:00
kaiyou
d8365bfbcf
Use simpler routes for Dovecot
2018-09-27 07:55:54 +02:00
kaiyou
697caaab81
Update podop access and mail restrictions
2018-09-26 00:15:24 +02:00
kaiyou
7143fb8c47
Implement some basic views for podop
2018-09-26 00:15:03 +02:00
kaiyou
39cd0d5034
Upgrade to alpine 3.8 for smtp and imap
2018-09-26 00:14:30 +02:00
kaiyou
68aa797720
Merge branch 'master' into feat-abstract-db
2018-09-25 21:46:12 +02:00
ofthesun9
f5f09fad6e
Reverting the patch for dovecot.conf, as it is not needed
2018-09-25 18:54:40 +00:00
Thomas Sänger
0b885548ab
bind to any protocol
2018-09-25 06:29:53 +02:00
kaiyou
73ca5fb3d3
Provide a more generic skeletton for postfix virtual lookups
2018-09-24 23:19:06 +02:00
ofthesun9
23e288aadc
Enabling swarm deployment on master branch:
...
-Extends the usage of POD_ADDRESS_RANGE
-Provides documentation
2018-09-24 17:29:31 +00:00