2014-08-16 17:30:53 +00:00
|
|
|
#!/bin/bash
|
|
|
|
#########################################################
|
|
|
|
# This script is intended to be run like this:
|
|
|
|
#
|
2014-09-21 20:37:04 +00:00
|
|
|
# curl https://.../bootstrap.sh | sudo bash
|
2014-08-16 17:30:53 +00:00
|
|
|
#
|
|
|
|
#########################################################
|
|
|
|
|
2014-08-25 12:18:46 +00:00
|
|
|
if [ -z "$TAG" ]; then
|
v0.14
v0.14 (November 4, 2015)
------------------------
Mail:
* Spamassassin's network-based tests (Pyzor, others) and DKIM tests are now enabled. (Pyzor had always been installed but was not active due to a misconfiguration.)
* Moving spam out of the Spam folder and into Trash would incorrectly train Spamassassin that those messages were not spam.
* Automatically create the Sent and Archive folders for new users.
* The HTML5_Notifier plugin for Roundcube is now included, which when turned on in Roundcube settings provides desktop notifications for new mail.
* The Exchange/ActiveSync backend Z-Push has been updated to fix a problem with CC'd emails not being sent to the CC recipients.
Calender/Contacts:
* CalDAV/CardDAV and Exchange/ActiveSync for calendar/contacts wasn't working in some network configurations.
Web:
* When a new domain is added to the box, rather than applying a new self-signed certificate for that domain, the SSL certificate for the box's primary hostname will be used instead.
* If a custom DNS record is set on a domain or 'www'+domain, web would not be served for that domain. If the custom DNS record is just the box's IP address, that's a configuration mistake, but allow it and let web continue to be served.
* Accommodate really long domain names by increasing an nginx setting.
Control panel:
* Added an option to check for new Mail-in-a-Box versions within status checks. It is off by default so that boxes don't "phone home" without permission.
* Added a random password generator on the users page to simplify creating new accounts.
* When S3 backup credentials are set, the credentials are now no longer ever sent back from the box to the client, for better security.
* Fixed the jumpiness when a modal is displayed.
* Focus is put into the login form fields when the login form is displayed.
* Status checks now include a warning if a custom DNS record has been set on a domain that would normally serve web and as a result that domain no longer is serving web.
* Status checks now check that secondary nameservers, if specified, are actually serving the domains.
* Some errors in the control panel when there is invalid data in the database or an improperly named archived user account have been suppressed.
* Added subresource integrity attributes to all remotely-sourced resources (i.e. via CDNs) to guard against CDNs being used as an attack vector.
System:
* Tweaks to fail2ban settings.
* Fixed a spurrious warning while installing munin.
2015-11-04 22:56:31 +00:00
|
|
|
TAG=v0.14
|
2014-08-25 12:18:46 +00:00
|
|
|
fi
|
2014-08-21 17:23:47 +00:00
|
|
|
|
2014-08-16 17:30:53 +00:00
|
|
|
# Are we running as root?
|
|
|
|
if [[ $EUID -ne 0 ]]; then
|
|
|
|
echo "This script must be run as root. Did you leave out sudo?"
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Clone the Mail-in-a-Box repository if it doesn't exist.
|
2014-10-15 16:22:48 +00:00
|
|
|
if [ ! -d $HOME/mailinabox ]; then
|
2015-06-10 13:33:47 +00:00
|
|
|
if [ ! -f /usr/bin/git ]; then
|
|
|
|
echo Installing git . . .
|
|
|
|
apt-get -q -q update
|
|
|
|
DEBIAN_FRONTEND=noninteractive apt-get -q -q install -y git < /dev/null
|
|
|
|
echo
|
|
|
|
fi
|
2014-09-21 20:37:04 +00:00
|
|
|
|
2014-10-15 16:22:48 +00:00
|
|
|
echo Downloading Mail-in-a-Box $TAG. . .
|
2014-10-05 17:32:52 +00:00
|
|
|
git clone \
|
|
|
|
-b $TAG --depth 1 \
|
|
|
|
https://github.com/mail-in-a-box/mailinabox \
|
|
|
|
$HOME/mailinabox \
|
|
|
|
< /dev/null 2> /dev/null
|
|
|
|
|
|
|
|
echo
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Change directory to it.
|
|
|
|
cd $HOME/mailinabox
|
2014-08-16 17:30:53 +00:00
|
|
|
|
2014-10-05 17:32:52 +00:00
|
|
|
# Update it.
|
|
|
|
if [ "$TAG" != `git describe` ]; then
|
2014-08-25 12:18:46 +00:00
|
|
|
echo Updating Mail-in-a-Box to $TAG . . .
|
2014-10-15 16:22:48 +00:00
|
|
|
git fetch --depth 1 --force --prune origin tag $TAG
|
2014-08-21 17:23:47 +00:00
|
|
|
if ! git checkout -q $TAG; then
|
2014-08-16 17:30:53 +00:00
|
|
|
echo "Update failed. Did you modify something in `pwd`?"
|
|
|
|
exit
|
|
|
|
fi
|
2014-10-05 17:32:52 +00:00
|
|
|
echo
|
2014-08-16 17:30:53 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Start setup script.
|
|
|
|
setup/start.sh
|
2014-09-21 20:37:04 +00:00
|
|
|
|