1
0
mirror of https://github.com/mail-in-a-box/mailinabox.git synced 2025-04-06 00:37:06 +00:00
Commit Graph

976 Commits

Author SHA1 Message Date
downtownallday
603b716ac2 add additional protections to the management daemon's runtime environment 2022-09-18 15:43:10 -04:00
downtownallday
c33153c646 update roundcube contacts url 2022-09-17 21:54:42 -04:00
downtownallday
45d5b7cb25 Merge branch 'jammyjellyfish2204' of https://github.com/mail-in-a-box/mailinabox into jammyjellyfish2204
# Conflicts:
#	setup/webmail.sh
#	tools/editconf.py
2022-09-17 19:54:52 -04:00
kiekerjan
d584a41e60
Update Roundcube to 1.6.0 (#2153) 2022-09-17 09:20:20 -04:00
downtownallday
56074ae035 Tighten roundcube session config (#2138)
Merges #2138.
2022-09-17 09:09:00 -04:00
Steve Hay
84da4e6000 Update dovecot to use same DH parameters file as the other services
Originally from #2157.
2022-09-17 09:07:54 -04:00
Steve Hay
3fd2e3efa9
Replace Flask built-in WSGI server with gunicorn (#2158) 2022-09-17 08:03:16 -04:00
downtownallday
2461e9a36c tighten the cipher list 2022-09-07 16:17:22 -04:00
downtownallday
80decc3f71 fix python error "cannot pickle 'dict_keys' object"
a deep copy of a dictionary with values of type `dict_keys`, required by the underlying ldap3 python3 library, is no longer allowed. they must be a `list` type

actual error:

Traceback (most recent call last):
  File "/mailinabox/setup/migrate.py", line 461, in <module>
    run_miabldap_migrations()
  File "/mailinabox/setup/migrate.py", line 440, in run_miabldap_migrations
    raise e
  File "/mailinabox/setup/migrate.py", line 431, in run_miabldap_migrations
    migration_func(env)
  File "/mailinabox/setup/migrate.py", line 249, in migration_miabldap_1
    users=m13.create_users(env, conn, ldap, ldap_base, ldap_users_base, ldap_domains_base)
  File "/mailinabox/setup/migration_13.py", line 137, in create_users
    dn = add_user(env, ldapconn, ldap_base, ldap_users_base, ldap_domains_base, email, password, privs.split("\n"), totp)
  File "/mailinabox/setup/migration_13.py", line 90, in add_user
    ldapconn.add(dn, objectClasses, attrs)
  File "/usr/lib/python3/dist-packages/ldap3/core/connection.py", line 947, in add
    _attributes = deepcopy(attributes)  # dict could change when adding objectClass values
  File "/usr/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.10/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle 'dict_keys' object
2022-09-05 17:20:41 -04:00
downtownallday
cc0a6d25cb z-push hack for php 8.0: change a debug print statement and make a policies.ini change 2022-09-05 15:32:24 -04:00
downtownallday
9783b8bbbc sync should be true for a nextcloud backend 2022-09-05 15:29:39 -04:00
downtownallday
cb50405864 roundcube 1.6 2022-09-05 14:12:52 -04:00
downtownallday
ae173fcdc6 Update app hashes for NC 21 and 22 upgrades 2022-09-05 14:12:29 -04:00
downtownallday
f63488aa1a Merge branch 'master' into jammyjellyfish2204
# Conflicts:
#	setup/management.sh
#	setup/mods.available/connect-nextcloud-to-miab.sh
#	setup/start.sh
#	setup/webmail.sh
#	tests/lib/carddav.sh
#	tests/lib/system.sh
#	tests/system-setup/setup-defaults.sh
#	tests/system-setup/setup-funcs.sh
#	tests/system-setup/upgrade.sh
2022-09-05 10:30:45 -04:00
downtownallday
549fdbf97a Merge branch 'jammyjellyfish2204' of https://github.com/mail-in-a-box/mailinabox into jammyjellyfish2204
# Conflicts:
#	setup/management.sh
2022-09-05 09:30:19 -04:00
Joshua Tauberer
91fc74b408 Setup fixes for Ubuntu 22.04
Nextcloud:
* The Nextcloud user_external 1.0.0 package for Nextcloud 21.0.7 isn't available from Nextcloud's releases page, but it's not needed in an intermediate upgrade step (hopefully), so we can skip it.
* Nextcloud updgrade steps should not be elifs because multiple intermediate upgrades may be needed.
* Continue if the user_external backend migration fails. Maybe it's not necessary. It gives a scary error message though.
* Remove a line that removes an old file that hasn't been in use since 2019 and the expectation is that Ubuntu 22.04 installations are on fresh machines.

Backups:
* For duplicity, we now need boto3 for AWS.
2022-09-03 07:50:36 -04:00
downtownallday
72bee52bd7 fix detection of installation status of contacts app - the grep for "contacts" should not match app "contactsintegration" 2022-08-18 10:36:09 -04:00
downtownallday
cac187756d Merge branch 'jammyjellyfish2204' of https://github.com/mail-in-a-box/mailinabox into jammyjellyfish2204
# Conflicts:
#	CHANGELOG.md
#	README.md
#	management/ssl_certificates.py
#	setup/bootstrap.sh
#	setup/dns.sh
#	setup/management.sh
#	setup/nextcloud.sh
#	setup/preflight.sh
#	setup/start.sh
#	setup/webmail.sh
#	tests/test_mail.py
#	tools/editconf.py
2022-07-28 17:20:57 -04:00
David Duque
e0c0b5053c Upgrade Nextcloud External User Backend to v3.0.0
Co-Authored-By: Joshua Tauberer <jt@occams.info>
2022-07-28 14:42:51 -04:00
Joshua Tauberer
268b31685d Ensure STORAGE_ROOT has a+rx permission since processes run by different system users need to access files within it 2022-07-28 14:42:51 -04:00
Joshua Tauberer
ab71abbc7c Update to latest cryptography Python package, add missing source at top of management.sh so it can run standalone (needs STORAGE_ROOT) 2022-07-28 14:42:51 -04:00
Joshua Tauberer
87e6df9e28 Fix roundcube dependency missing imap and unneeded ldap 2022-07-28 14:42:51 -04:00
Felix Matouschek
558f2db31f system.sh: Remove no longer needed haveged (#2090)
Starting from kernels 5.6 haveged is obsolete. Therefore remove it in
Ubuntu 22.04.

See https://github.com/jirka-h/haveged/issues/57
2022-07-28 14:42:51 -04:00
Joshua Tauberer
0a7b9d5089 Update dovecot, spampd settings for Ubuntu 22.04
* dovecot's ssl_protocols became ssl_min_protocol in 2.3
* spampd fixed a bug so we can remove lmtp_destination_recipient_limit=1 in postfix
2022-07-28 14:34:45 -04:00
Joshua Tauberer
1eddf9a220 Upgrade to Nextcloud 23.0.4
The first version supporting PHP 8.0 is Nextcloud 21. Therefore we can add migrations only to Nextcloud 21 forward, and so we only support migrating from Nextcloud 20 (Mail-in-a-Box versions v0.51+). Migration steps through Nextcloud 21 and 22 are added.

Also:

* Fix PHP APUc settings to be before Nextcloud tools are run.
2022-07-28 14:34:45 -04:00
Joshua Tauberer
78d71498fa Upgrade from PHP 7.2 to 8.0 for Ubuntu 22.04
* Add the PHP PPA.
* Specify the version when invoking the php CLI.
* Specify the version in package names.
* Update paths to 8.0 (using a variable in the setup scripts).
* Update z-push's php-xsl dependency to php8.0-xml.
* php-json is now built-into PHP.

Although PHP 8.1 is the stock version in Ubuntu 22.04, it's not supported by Nextcloud yet, and it likely will never be supported by the the version of Nextcloud that succeeds the last version of Nextcloud that supports PHP 7.2, and we have to install the next version so that an upgrade is permitted, so skipping to PHP 8.1 may not be easily possible.
2022-07-28 14:02:46 -04:00
Joshua Tauberer
b41a0ad80e Drop some hacks that we needed for Ubuntu 18.04
* certbot's PPA is no longer needed because a recent version is now included in the Ubuntu respository.
* Un-pin b2sdk (reverts 69d8fdef99 and d829d74048).
* Revert boto+s3 workaround for duplicity (partial revert of 99474b348f).
* Revert old "fix boto 2 conflict on Google Compute Engine instances" (cf33be4596) which is probably no longer needed.
2022-07-28 14:02:46 -04:00
Daniel Mabbett
8cb360fe36 Configure nsd listening interfaces before installing nsd so that it does not interfere with bind9 2022-07-28 14:02:46 -04:00
Joshua Tauberer
f534a530d4 Update and drop some package and file names for Ubuntu 22.04
* Fix path to bind9 startup options file in Ubuntu 22.04.
* tinymce has not been a Roundcube requirement recently and is no longer a package in Ubuntu 22.04
* Upgrade Vagrant box to Ubuntu 22.04
2022-07-28 14:02:46 -04:00
Joshua Tauberer
2abcafd670 Update Ubuntu version checks from 18.04 to 22.04 2022-07-28 14:02:44 -04:00
downtownallday
27dcb5d7ca Enable fail2ban for z-push and add a test for it 2022-07-18 15:52:04 -04:00
downtownallday
9b8fc905f6 rename script "remote-nextcloud-use-miab.sh" to "connect-nextcloud-to-miab.sh" 2022-06-28 16:43:27 -04:00
downtownallday
f1cddb5bd1 Tighten roundcube session config 2022-06-28 07:43:11 -04:00
downtownallday
6be8d732aa Fix comment 2022-06-27 11:03:58 -04:00
downtownallday
8838d5af82 Eliminate the manual firewall configuration step when connecting a remote Nextcloud's user_ldap 2022-06-27 11:00:36 -04:00
downtownallday
5de40fc9b1 Fixes for upgrading nextcloud; update calendar and contacts version 2022-06-26 22:04:05 -04:00
downtownallday
33d81e56ae Changed rcmcarddav release containing fix for guzzlehttp dependency 2022-06-26 21:55:51 -04:00
downtownallday
c47807776b Update roundcube config for changes introduced in 1.6 2022-06-25 16:56:01 -04:00
downtownallday
9537282203 Roundcube 1.6-rc
includes update to rcmcarddav plugin v4.4.1
2022-06-25 12:39:52 -04:00
downtownallday
7c67ad49d0 nsd.log must exist or rsyslog won't write to it 2022-06-24 08:22:38 -04:00
downtownallday
577a39be85 Upgrade to user_external v3.0.0 required for Nextcloud 23+ 2022-06-24 07:49:14 -04:00
downtownallday
7f18e6ca3c Upgrade persistent login plugin to version 5.3.0 2022-06-23 17:45:40 -04:00
downtownallday
c135bf1f77 Merge branch 'jammyjellyfish2204' of https://github.com/mail-in-a-box/mailinabox into jammyjellyfish2204
# Conflicts:
#	CHANGELOG.md
#	README.md
#	conf/nginx-top.conf
#	management/backup.py
#	setup/bootstrap.sh
#	setup/management.sh
#	setup/nextcloud.sh
#	setup/system.sh
#	setup/web.sh
#	setup/webmail.sh
#	setup/zpush.sh
#	tests/test_mail.py
2022-06-21 23:58:17 -04:00
downtownallday
37a7088531 Merge branch 'main' of https://github.com/mail-in-a-box/mailinabox
# Conflicts:
#	README.md
#	setup/management.sh
2022-06-21 20:38:01 -04:00
Joshua Tauberer
3c3d62ac27 Version 57a 2022-06-19 08:58:09 -04:00
Joshua Tauberer
a6ae0e6da1 Update to latest cryptography Python package, add missing source at top of management.sh so it can run standalone (needs STORAGE_ROOT) 2022-06-19 07:31:07 -04:00
Joshua Tauberer
9ef330e6eb Fix roundcube dependency missing imap and unneeded ldap 2022-06-19 07:31:07 -04:00
Felix Matouschek
b4099f49c3 system.sh: Remove no longer needed haveged (#2090)
Starting from kernels 5.6 haveged is obsolete. Therefore remove it in
Ubuntu 22.04.

See https://github.com/jirka-h/haveged/issues/57
2022-06-19 07:31:07 -04:00
Joshua Tauberer
3599bbbf2e Update dovecot, spampd settings for Ubuntu 22.04
* dovecot's ssl_protocols became ssl_min_protocol in 2.3
* spampd fixed a bug so we can remove lmtp_destination_recipient_limit=1 in postfix
2022-06-19 07:31:07 -04:00
Joshua Tauberer
96bab10b53 Upgrade to Nextcloud 23.0.0
The first version supporting PHP 8.0 is Nextcloud 21. Therefore we can add migrations only to Nextcloud 21 forward, and so we only support migrating from Nextcloud 20 (Mail-in-a-Box versions v0.51+). Migration steps through Nextcloud 21 and 22 are added.
2022-06-19 07:31:07 -04:00