mailcow mailserver suite
News and notes
We just fixed SOGo theme switching again. There is a chance we did it, I promise...
Knight1 made us aware of a critical bug, that led to mailcow accepting custom X-FORWARDED-FOR headers. This bug was introduced with the last update.
Important change: We disabled "any" and "all authenticated" ACL settings in Dovecot and removed the box in SOGos ACL editor (big thanks to the SOGo devs, please help them, buy a subscription!).
You can find information about how to re-enable it here.
We will add an easy way to enable your SOGo subscription soon.
Please don't forget supporting mailcow. :-)
Some updates, primarily aimed at mailcow UI, were pushed today.
Most improvements were made to the logging interface.
Please consider supporting mailcow. :-)
Learning methods for bayes and fuzzy hashes (new) changed on todays update, I recommend to run...
bash helper-scripts/reset-learns.sh...to start over with a clean hash database.
Spam/ham is no more auto-learned, please move mails into/out of the junk folder to train the filter _or_ use the new spam/ham alias target.
The logging method changed slightly, some more changes will follow.
A new section "mailcow UI" was added to the logs panel. IPs are logged but anonymized by default, please see ANONYMIZE_IPS in "vars.inc.php".
Users now see their last login.
Redis logs are now trimmed by a cronjob in "dovecot-mailcow", that will move to "watchdog-mailcow" in the future => much less hammering.
SYSCTL_IPV6_DISABLED was removed, please see the docs about how to disable IPv6.
Sync jobs are now unlocked when the job was abruptly interrupted.
Sync jobs in mailcow UI can now contain custom parameters.
Some previously hard-coded parameters were removed!
"subscribeall", "timeout1" and "timeout2" can now be defined in the job details.
"buffersize", "split1", "split2", "fastio1", "fastio2" were removed and can be used in custom parameters.
The SOGo theme switching bug is hopefully fixed. I will probably find a better way to fix it than using "sed" to replace the hard-coded colors.
PS: If you like to, please consider supporting us. :-)
Docker Compose now recognizes "-" and "_" in compose project names, while it used to ignore them.
In case you run update.sh and are now missing your beloved data, just run these commands to fix the issue:
cd /your/mailcow-dockerized-path docker-compose down sed -i 's#COMPOSEPROJECT_NAME#COMPOSE_PROJECT_NAME#g' mailcow.conf sed -i '/COMPOSE_PROJECT_NAME=/s/-//g' mailcow.conf docker-compose up -d
update.sh was fixed to auto-correct mailcow.conf
We merged new code the other day and pushed new images.
A changelog will follow.
We merged new code the other day and pushed new images.
We still need a better way to publish changelogs, anyways...
mailcow now comes with a quarantaine function, that is disabled by default. Our quarantaine is special, it will still reject mails in pre-queue mode. I disliked the idea of having to check the quarantaine for mails the sender assumed were transfered and received properly, that's a very old and odd model we won't support. Our server accepted a mail and so it needs to be delivered to a mailbox. Auto-replies are dangerous in case of "ping" spam to check wether a mail address is actively used.
Thanks for your donations, it really helps mailcow a lot.
We just merged new code and pushed new images.
Watchdog has no docs available yet, I am working on it!
Update: Thanks to Antoine Sirinelli we now have French language support!
We will merge dev to master soon. Checkout the new screenshots for new features! Ratelimit per domain and user, customisations and much more. A new watchdog will be introduced to check the health of your cow and restart unhealthy containers automatically (still a WIP). 😊
We just merged new code! Please join our IRC channel if you have any questions.
First of all I would like to thank you for your donations! I very much appreciate your help and cannot thank you enough for this. Thanks, thanks and thanks again. 😊
Some interesting and useful features were changed or added to mailcow over the past weeks.
A very interesting change was made to the Fail2ban-like system, that now reads logs from a Redis channel to not be dependent on Dockers Json logging driver anymore.
Another feature was introduced with an update script you will find in your mailcow root directory. It will update itself before executing any code. Most conflicts will be auto-resolved (in favor for the mailcow repository).
Other features include the ability to import private keys for DKIM and ARC (yes, we have ARC support!), SKIP_CLAMD to not run ClamAV and save some (a lot) memory - which by the way will be auto-detected as down by Rspamd -, updated Dovecot + Pigeonhole code, SKIP_FAIL2BAN option, a ACME-client to auto-request Let's Encrypt CA signed certificates, settings for Fail2ban in the Web UI (whitelist, ban time, retry time frame etc.) and more...
I hope we can switch to a better mailcow.email website soon, which should then parse the commits as some kind of changelog. Let's also look forward to implement SOGo 3.2.10, which will introduce EAS v16 support!
Please ignore a previous announcement to use a DNSSEC enabled local DNS server. We decided to replace Bind9 by Unbound instead of removing it from mailcow: dockerized.
There were slight changes to the reverse proxy configuration. So if you use such a setup in front of mailcow: dockerized, you should update your configuration after pulling the latest changes from Git.
Until changes and improvements made to mailcow: dockerized are merged to the non-dockerized mailcow, it is recommended to use mailcow: dockerized.
Please excuse the huge delay, my time is very limited and development is primarily done in my free time.
11 containers and 4 volumes combine to a Docker conform mailcow installation.
mailcow: dockerized will be a rolling release in the master branch @ GitHub. There will be a dev branch soon, which should not be used.
Learn more about mailcow: dockerized below, please visit us on IRC @ Freenode in #mailcowLink to GitHub
Link to Docs
A fresh installation is recommended!
- WebUI per mailbox: Enforce in- and outbound TLS
- ! Works best with Postfix >=3.0 (*uses smtp_dsn_filter to turn temp. TLS errors to perm. errors to notify client instantly)
- WebUI per mailbox: Set black- and whitelist records for spam filter
- WebUI: Drag and drop Postfix restrictions
- Switched WebUI to PDO database interface
- Added some options to /var/www/mail/inc/vars.inc.php (please use
vars.local.inc.phpto overwrite settings)
- Multi-language Web UI (English, Portuguese and German)
- Fixed errors in Web UI
- Removed backup from Web UI and added "mailcow-backup-mail" script
- (Hopefully) RFC compliant email addresses
- Z-Push removed - choose between SOGo (ActiveSync + DAV) and Roundcube
- Better Sender ACL (find it at "edit mailbox")
- Fail2ban was removed and should be setup according to your own setup
- letsencrypt.sh/dehydrated was added to provide a signed certificate (optional)
Thanks to Brad we now have a Discourse instance online for you to find help installing/configuring mailcow!
We can finally stop using Github as our forum and keep using it for real issues and bugs. :-)Visit forum
Für deutschsprachige Kunden bietet Servercow nun eine gehostete mailcow-Instanz an.Mehr lesen
Demo / Installation
↪ admin / moohoo bzw.
↪ department / moohoo
↪ firstname.lastname@example.org / moohoo
Please find more information about mailcow: dockerized in the official documentation linked above.
mailcow: dockerized is based on Postfix, Dovecot, Nginx, PHP, MariaDB, Rspamd and more!
Please find us on IRC: Freenode, #mailcow for community support.
Remote hands-on support
Installation, Update und Änderungen nach besonderen Wünschen.
Installation, updates and customizations to fit your needs.
Hosted mailcowVisit Servercow for a hosted mailcow solution in Germany
KVM virtual machines for
mailcow @ servercow.de (DE)