Commit Graph

278 Commits

Author SHA1 Message Date
Marcel Hofer
dd6d253ac0 add random masterpass for sogo admin login
add required headers for sogo proxy auth with password
add SOGoEncryptionKey
add SOGoTrustProxyAuthentication only conditionally if feature is enabled
2019-02-26 09:02:35 +01:00
Marcel Hofer
cac67db203 add config ALLOW_ADMIN_EMAIL_LOGIN and implement password-less SOGo login admins 2019-02-23 17:59:18 +01:00
andryyy
52eb6e48f2
[Compose] New Dovecot image
[Dovecot] Fix very stupid error in quarantine_notify.py - thanks to @DevTek314
2019-02-19 15:02:18 +01:00
Aaron Larisch
5cae935485 Fix empty maildir_gc.sh 2019-02-12 17:11:04 +01:00
andryyy
4e97da197e
[Dovecot] Fix quarantine notificatin script
[Compose] Update Dovecot image
2019-02-08 10:06:28 +01:00
andryyy
c438411a3d
[Dovecot] Extend quarantine template: add score and release/delete buttons - depending on acl 2019-02-06 09:21:54 +01:00
andryyy
2a5f6413fa
[Dovecot] Derive text part in quota/quarantine notification mails from html 2019-02-05 10:38:28 +01:00
andryyy
c7c1422095
[Dovecot] Add quota_notify script
[Dovecot] Some minor changes to quarantine notification script to catch more errors
2019-02-05 00:00:22 +01:00
andryyy
3bfd2c8885
[Dovecot] Once again... finally fixed? 2019-01-31 22:18:38 +01:00
andryyy
dcd6b2268e
[Dovecot] Various fixes for quarantine notifications, many thanks to @DevTek314 for reporting them! 2019-01-31 21:45:58 +01:00
andryyy
3aef412669
[Dovecot] Fix type of last_notification 2019-01-31 20:53:08 +01:00
andryyy
c456fe12b3
[Dovecot] Fix last_notification in quarantine_notify.py 2019-01-29 12:13:26 +01:00
andryyy
f493d3a957
[Dovecot] Simplify Docker image
[Dovecot] Set Dovecot plugins dynamically via file and exclude Solr if not enabled
[Dovecot] Add new quarantine notification script
2019-01-29 00:11:12 +01:00
André Peters
b2bb593656
[Dovecot] imapsync: Connect to database via socket 2019-01-19 11:57:48 +01:00
Dirk Weise
23c2249fa7
Log imapsync cronjob errors
Errors from the imap sync cronbjob are currently dropped silently.
2019-01-18 18:25:43 +01:00
Dirk Weise
630bce5f29
imapsync: Connect to database via socket
Make the imapsync script connect to mysql via socket and not tcp like all other services do.

Reasoning: consistency. 🤓  And in my case the database does not listen on tcp; just on the socket.
2019-01-18 17:36:30 +01:00
André Peters
f3dfe346bf [Dovecot] Allow setting ACL_ANYONE in mailcow.conf 2019-01-16 19:08:19 +01:00
Markus Heberling
9750ec5bec
Merge branch 'master' into master 2019-01-01 14:20:22 +01:00
andryyy
b7c9af5e75 [Dovecot] Give master user a uid and gid, fixes #2093 2018-12-13 19:52:50 +01:00
andryyy
d8906e3d6c [Dovecot] Trim more logs 2018-12-12 22:51:55 +01:00
Markus Heberling
4755bb323b Allow setting ACL_ANYONE in the configuration 2018-12-11 11:32:36 +01:00
andryyy
5153623539 [Dovecot] Add master user to userdb (to be used in SOGo)
[SOGo] Use sieve.creds to authenticate against Dovecot and send email reminders
2018-12-10 23:23:56 +01:00
andryyy
b710cb751b [Dovecot] Split imapsync cron by -- 2018-12-10 13:24:51 +01:00
andryyy
2a6320b86e [Netfilter] Disable aborted login without auth as fail2ban trigger
[Dovecot] passdb query ignored active attribute in mailbox table
[PHP-FPM] Add default release format for spam
2018-12-06 16:49:28 +01:00
andryyy
a695bdd2ee [Dovecot] Update Dovecot to 2.3.4, update Pigeonhole to 0.5.4
[Dovecot] Remove UTF-8 attribute
2018-11-26 09:44:41 +01:00
andryyy
c82f8165d8 [Dovecot] Fix maildir_gc, build with ldap support 2018-11-26 09:11:22 +01:00
andryyy
b3518b0749 [Dovecot] Remove dedicated index (wip)
[SOGo] Fix sogo_view
2018-11-12 20:59:39 +01:00
andryyy
244ab191bd [Dovecot] Dovecot 2.3.3, Pigeonhole 0.5.3
[Dovecot] Use "--enable-hardening" flag
[Dovecot] Fix cronjobs
[Dovecot] Use /var/volatile to prevent locking files from being written to NFS storage (if vmail is on NFS)
[Dovecot] Change userdb query
[Dovecot] Use /var/attachments for mdbox attachment deduplication and /var/index for index files
[Dovecot] Fix sieve user creation
[Dovecot] Make console writable
[Dovecot] Fix trim_logs.sh
2018-11-12 09:49:23 +01:00
andryyy
800eebd117 [Dovecot] Use events to kill supervisord when main proc dies
[Postfix] Use events to kill supervisord when main proc dies
[SOGo] Use events to kill supervisord when main proc dies
2018-10-25 22:35:07 +02:00
André
23e6e52f4f [Postfix] Proper permissions for sql config files
[Dovecot] Proper permissions for sql config files
2018-10-12 10:57:00 +02:00
André
aa39be7ea6 [SOGo] Use mysqladmin status instead of ping to determine readiness
[PHP-FPM] Use mysqladmin status instead of ping to determine readiness
[PHP-FPM] Init database in entrypoint
[PHP-FPM] Change API credential injection
[Dovecot] Use mysqladmin status instead of ping to determine readiness
2018-10-11 11:53:22 +02:00
André
ad63552951 [Dovecot] Check file size of mail crypt key pair, fixes #1859
[Compose] New Dovecot image
2018-10-07 15:10:17 +02:00
André
cf28727376 [Dovecot] Add timeouts to sa-rules script, remove with -f flag to return 0 2018-10-03 23:27:31 +02:00
André
2af2f7836d [Dovecot] Remove fixed uid and gid 2018-10-02 10:31:22 +02:00
André
62b27aeacb [Dovecot] Check garbage hourly
[Dovecot] Update SA rules once when container starts
2018-10-02 09:34:21 +02:00
André
ca1e950c61 [Dovecot] Do not query gid and uid 2018-10-02 09:13:33 +02:00
André
4396be2938 [Rspamd] Place socket in _rspamd home and fix permissions
[Compose] Remove volume for Rspamd socket
[Web] Do not exit loop on fuzzy errors when learning a message as spam
2018-09-30 09:53:25 +02:00
André
0fb43f4916 [Docker API] Use TLS encryption for communication with "on-the-fly" created key paris (non-exposed)
[Docker API] Create pipe to pass Rspamd UI worker password
[Dovecot] Pull Spamassassin ruleset to be read by Rspamd (MANY THANKS to Peer Heinlein!)
[Dovecot] Garbage collector for deleted maildirs (set keep time via MAILDIR_GC_TIME which defaults to 1440 minutes)
[Web] Flush memcached after mailbox item changes, fixes #1808
[Web] Fix duplicate IDs, fixes #1792
[Compose] Use SQL sockets
[PHP-FPM] Update APCu and Redis libs
[Dovecot] Encrypt maildir with global key pair in crypt-vol-1 (BACKUP!), also fixes #1791
[Web] Fix deletion of spam aliases
[Helper] Add "crypt" to backup script
[Helper] Override file for external SQL socket (not supported!)
[Compose] New images for Rspamd, PHP-FPM, SOGo, Dovecot, Docker API, Watchdog, ACME, Postfix
2018-09-29 22:01:23 +02:00
sriccio
5e56a46c84 [dovecot] Enhancement to allow to use auth_default_realm
When using auth_default_realm in dovecot configuration to setup a default domain name (to allow users to login with only a username instead of the full e-mail address), it breaks the compatibility with imapsync and sogo/sieve vacation.

Adding a domain name to dovecot master user/pass fixes this.

This never made it do the master branch, so I'm trying a PR again :)

See: https://github.com/mailcow/mailcow-dockerized/pull/1331#issuecomment-386534307
2018-08-28 17:14:05 +02:00
André
e678292447 [Dovecot] Trim autodiscover logs 2018-08-02 12:19:58 +02:00
André
04b43d0a3b [Dovecot] Add new imapsync + dependencies
[Dovecot] Syslog-ng: Do not trim after each push to Redis
[Dovecot] Add new cronjob to trim all Redis logs every minute (will be moved in the future)
2018-08-02 12:14:13 +02:00
André
15b80760b2 [Postfix] Add scripts to learn from spam/ham traps
[Dovecot] Learn fuzzy when moving mails from/to junk
2018-07-29 00:36:08 +02:00
André
1115b826f9 [Dovecot] Various fixes for imapsync_cron, new imapsync version 2018-07-27 22:19:14 +02:00
André
d9df322eda [Dovecot] Remove additional hash scheme and let Dovecot decide the hash by prefix 2018-07-12 00:46:17 +02:00
André
2aef18d130 [Dovecot] Remove user queries from passdb + add a second passdb for additional algorithms + create userdb without password queries 2018-07-12 00:23:12 +02:00
André
055183257d [Dovecot] v2.3.2.1 + remove some dev packages 2018-07-11 19:07:26 +02:00
André
3b5df979e9 [Dovecot, Compose] New Dovecot image, upgrade to 2.3.2 (0.5.2 PH), fixes various bugs including replication over TCP 2018-07-02 10:35:04 +02:00
André
4a403e9323 [Dovecot] Imapsync: Set is_running = 0 on restart 2018-06-03 19:22:44 +02:00
André
b26aa04a9b [Dovecot] Imapsync: Increase timeout1 value 2018-05-24 17:34:43 +02:00
André
f53006f6ab [Dovecot] Dovecot 2.3.1, Pigeonhole 0.5.1
[ClamAV] 0.100.0, new log method without pipes
[Compose] New images for Dovecot and ClamAV, add persistent tty to clamd-mailcow
2018-04-26 12:36:13 +02:00
André Peters
bf5b6732cf [Dovecot] Fix passdb query 2018-02-27 20:55:12 +01:00
André Peters
6a01411460 [Dovecot] Fix imapsync 2018-02-27 15:12:21 +01:00
André Peters
39f289fc3c [Web, Dovecot, Postfix] Fix JSON attribute for login 2018-02-19 10:17:29 +01:00
André Peters
1f09544f32 Fix conflict 2018-02-16 22:44:02 +01:00
André Peters
2865c892a6 [Multi] Fixes #1058 by including a 'force password update' option and also introduces a attributes json object to be used for further mailbox configurations in the future 2018-02-16 22:40:51 +01:00
eXtremeSHOK
8eb05d1450
Fix for large Mailboxes to avoid timeouts 2
Missing ' (sorry my editor keeps correcting the '" to " )
2018-02-14 14:02:56 +02:00
eXtremeSHOK
a37a8e3b2a
Fix for large Mailboxes to avoid timeouts
** I agree to the code of conduct and the contributory guidelines **

Tested with 80+GB single inbox via imap

``` --nofoldersizes --skipsize --fast ``` file and folder sizes are only used for statistics, which are completely useless. Before the actual data is transfered the message and folder sizes need to be calculated on a 200 000+ message inbox, this will almost never complete.

``` --buffersize 8192000 ``` sets the io buffer to 8mb, the default buffer is 4kbyte, this is speeds up syncs.

```  --skipheader 'X-*' ``` X headers vary wildly from system to system and do not ensure message uniqueness, they are not needed.

```  --split1 3000 --split2 3000 ```    split the requests in several parts on the server, 3000 is the number of messages handled per request.

``` --fastio1 --fastio2 ``` use fastio
2018-02-14 13:27:30 +02:00
André Peters
ac4982d706 [Dovecot] Use socket to pipe to Rspamd 2018-02-08 22:56:43 +01:00
André Peters
a2ca550aa0 [Dovecot] Use socket instead of worker IP 2018-02-08 22:29:43 +01:00
Joshua Hesketh
2fc13bdfbe Fix imapsync for large mailboxes
Where there is a lot of folders in a mailbox the output may be larger
than TEXT will allow (64KiB). Instead use MEDIUMTEXT (16MiB) which
should be ample.

Additionally check that a sync isn't already running before starting
a new one.

Fixes: #1011
2018-02-08 15:24:04 +11:00
andre.peters
3f9e0a8023 [Dovecot] Fixes CVE-2017-15132 - take 2 2018-02-01 23:36:06 +01:00
andre.peters
ae4ccd4d17 [Dovecot] Fixes CVE-2017-15132 - take 2 2018-02-01 23:35:55 +01:00
andre.peters
6ebcd00521 [Dovecot] Fixes CVE-2017-15132 2018-02-01 22:43:28 +01:00
andre.peters
04f9d74339 [Web, Dovecot] Add new options to imapsync, other minor changes to forms, partly fixes #955 2018-01-24 12:59:11 +01:00
andre.peters
5d5d36fc60 [Dovecot] Revert to 2.2 to fix various errors 2018-01-14 10:44:06 +01:00
andre.peters
38aaeeb30b [Dovecot] Dovecot 2.3 from git for temp fixes
[ACME] Use -a switch (thanks to jas8522!)
2018-01-14 10:34:06 +01:00
andre.peters
42923698fd [Dovcot] Fixes for v2.3 2018-01-13 22:49:50 +01:00
andre.peters
ceef6d6fd3 [Dovecot] Dovecot 2.3, Pigeonhole 0.5
[Watchdog] Fix Dovecot health check
2018-01-09 11:15:52 +01:00
andre.peters
1e9cae9084 [Compose] New images with LOG_LINES
[Update] Do not add empty line in each loop
2018-01-08 22:00:54 +01:00
andre.peters
a771d66889 [Dovecot] Update imapsync 2017-12-17 17:45:05 +01:00
André
60e97503f7 [Web, Dovecot] Show wether a sync job is running, validate min max input attr and validate these values 2017-11-08 11:07:32 +01:00
André
a36a8828c2 [Dovecot] Specify supervisord user 2017-11-05 12:19:18 +01:00
André
b32e5adcc5 [Dovecot] sieve_before/after maps in sql, changed dict names 2017-11-03 20:25:38 +01:00
andryyy
7c46d6548b [Dovecot] Ignore watchdog IP in logs, filter by syslog-ng 2017-10-11 11:23:20 +02:00
andryyy
1f90433429 [Dovecot, Postfix, SOGo] Fix redis log cleanup, fixes #542 2017-09-03 11:57:58 +02:00
andryyy
008d500f4d [Compose, Dovecot] Fixed missing ltrim 2017-09-01 23:39:51 +02:00
andryyy
08d6b97ffa [Dovecot] New Dovecot and Pigeonhole versions; include delete2 option in imapsync 2017-08-31 10:36:10 +02:00
andryyy
2eed7c05a1 [Dovecot] Push version, fix cronjob (fixes #310) 2017-08-01 14:02:00 +02:00
andryyy
c7484434dd [Dovecot] Remove master.pid if not running; Check for active imapsync besides lock file; Reconnect MySQL connection in imapsync_cron.pl 2017-07-31 08:19:02 +02:00
andryyy
9e92c4a2ad [Dovecot] Do not keep persistent logs in a container 2017-07-11 17:09:31 +02:00
andryyy
69da02c144 [Dovecot] Important fix for Pigeonhole (downgrade) 2017-07-05 19:13:07 +02:00
andryyy
dc463c3dda [Multiple] Push multiple logs to Redis channel for fail2ban-mailcow to read. Enables Fail2ban independently of used Docker logging driver. 2017-07-04 18:08:20 +02:00
andryyy
ae5ce6568d [Dovecot] Dovecot 2.2.31, Pigeonhole 0.4.19 2017-06-30 20:30:30 +02:00
NuVivo314
601f3b6947 Change select Priority
Simple change, for Select Older
2017-06-21 11:54:03 +02:00
andryyy
428140d34f Version update 2017-06-20 20:06:35 +02:00
Markus Frosch
4be67ccd64 dovecot/imapsync_cron: Use passfiles to hide passwords from ps 2017-06-19 11:43:07 +02:00
andryyy
5321ebe707 Push to Dovecot 2.2.30 2017-06-12 10:42:48 +02:00
andryyy
4b875d1468 Remove some tools after installation 2017-05-14 14:24:55 +02:00
Michael Käufl
766a986f27 [Dockerfiles] Do not install both curl and wget
curl is used in rspamd-pipe-*, so I kept curl
2017-05-13 18:10:04 +02:00
Michael Käufl
7fd982f948 [Dockerfiles] Do not persist DEBIAN_FRONTEND=noninteractive in images
According to https://github.com/moby/moby/issues/4032#issuecomment-163689851
(and some other comments in the issue) it's not recommended to set
`DEBIAN_FRONTEND` via `ENV` in a Dockerfile.  `ARG` has the same
effect at build time but does not change `DEBIAN_FRONTEND` in the
final image, so I switched to it.  It should also work to remove it
completely.
2017-05-13 18:10:04 +02:00
Michael Käufl
559d9dda71 [Dockerfiles] Run rm as early as possible 2017-05-13 18:10:04 +02:00
Michael Käufl
85be7aa973 [Dockerfiles] Sorted list of packages 2017-05-13 18:10:04 +02:00
Michael Käufl
9ab9d76240 [Dockerfiles] Used best practices for apt-get
See https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/#apt-get

- Replaced `-y install` with `install -y` (unification)

- Put every package on its own line

- Moved `rm -rf /var/lib/apt/lists/*` in the same `RUN` statement as `apt-get`

- Removed unnecessary `apt-get clean`
  See 03e2923e42/contrib/mkimage/debootstrap (L82-L105)
2017-05-13 18:09:53 +02:00
Michael Käufl
d0d0961006 [Dockerfiles] Replaced deprecated MAINTAINER with LABEL
Used format proposed in
https://docs.docker.com/engine/reference/builder/#maintainer-deprecated
2017-05-13 18:09:45 +02:00
Michael Käufl
6cd97c46c5 Used tabs for indentation in Dockerfiles 2017-05-12 20:59:27 +02:00
andryyy
93046dea45 Fixes #261 2017-05-09 21:29:51 +02:00
andryyy
d614aaf617 Add Json logger 2017-05-06 23:42:18 +02:00
andryyy
dfee8efa97 Fix DBUSER in entrypoint 2017-04-28 12:24:14 +02:00
andryyy
77992be9fc Update Dovecot and Pigeonhole 2017-04-28 10:53:04 +02:00
andryyy
06928ec841 imapsync: added option to delete from source after transfer 2017-04-10 13:08:02 +02:00
andryyy
5bee39dc95 Use fixed IDs 2017-04-05 22:25:34 +02:00
andryyy
13cd5e0b1d Run sievec after adding keys, use fixed IDs for users 2017-04-05 22:25:16 +02:00
andryyy
58d86dadce Rebase Dovecot on Stretch slim, build from stable source with latest stable Pigeonhole for antispam replacement 2017-04-03 20:06:49 +02:00
andryyy
276e370989 Rspamd tag check for non-spam only (post-filter), remove sql files from repository" 2017-03-08 17:58:00 +01:00
Michael Käufl
9762176810 [Dockerfiles] From -> FROM 2017-03-07 15:48:22 +01:00
andryyy
c283c85d51 Update Postfix and Dovecot, add ignore 2017-03-06 10:33:44 +01:00
andryyy
d891bc8894 Docs 2017-03-02 11:23:23 +01:00
andryyy
5f7fb2e7c2 Deployed dfc88cc with MkDocs version: 0.16.1 2017-03-02 11:21:46 +01:00
andryyy
2c04a77e17 Revert change, directory is already created 2017-01-25 19:10:31 +01:00
André Peters
f392a0da81 Merge pull request #20 from psi-4ward/dovecot-volume-fix
Fixed: Dovecot depend on sogo volumes
2017-01-23 23:22:46 +01:00
andryyy
1587c73dad Dovecot imapsync changes 2017-01-15 17:38:54 +01:00
andryyy
89b5d9bde6 Easier container names, allow to set HTTPS port, Typo fix 2017-01-12 21:40:42 +01:00
andryyy
c403933017 Add imapsync tool to Dovecot and change container layout 2017-01-12 20:16:37 +01:00
Christoph Wiechert
32f1b672fc Fixed: Dovecot depend on sogo volumes
Volume mount from sogo should be optional
2017-01-11 19:59:46 +01:00
andryyy
5d0081a0ec Base all on xenial to save some space loading chunks, clean-up images 2016-12-23 10:27:48 +01:00
andryyy
b0db732e87 Needs lowercase master user with SHA1 2016-12-23 07:07:50 +01:00
andryyy
de36fe1571 Be more compatible... 2016-12-21 09:38:19 +01:00
andryyy
5aa3ede06e Typo... 2016-12-21 09:34:08 +01:00
andryyy
eef81c58ae Add random created master at each startup to handle SOGo features 2016-12-21 08:25:47 +01:00
andryyy
60fca24d1b Create sieve_after handler 2016-12-19 15:19:35 +01:00
andryyy
7ef70e4c81 Move dkim data, vmail and dbs to volumes, changed README 2016-12-17 20:31:59 +01:00
andryyy
9ce260fbe0 Use entrypoint to sed some vars 2016-12-15 10:07:09 +01:00
andryyy
1910e3bc29 Fix dovecot for Docker 2016-12-13 20:53:42 +01:00
andryyy
5ec67211d8 Move dovecot 2016-12-13 20:52:57 +01:00
andryyy
36b09f339b Pipe to rspamd 2016-12-13 13:38:45 +01:00
andryyy
7e25826d4e Antispam plugin for Dovecot + rspamd pipe script 2016-12-13 12:26:10 +01:00
andryyy
e3f0058f4f Changes... 2016-12-11 14:13:17 +01:00
andryyy
5f04dc0b04 mailcow dockerized 2016-12-09 20:39:02 +01:00