1. Zhang Huangbin
  2. iredmail

Commits

Zhang Huangbin  committed 519e99d

Works on Ubuntu 14.04 (LTS).

  • Participants
  • Parent commits d21f39a
  • Branches default

Comments (0)

Files changed (7)

File iRedMail/ChangeLog

View file
 iRedMail-0.9.0:
-    * Allows sasl authentication only over a TLS-encrypted smtp connection.
-    * Create Dovecot auth socket as /var/spool/postfix/private/dovecot-auth
-      instead of /var/spool/postfix/dovecot-auth.
+    * Works on new Linux/BSD distribution releases:
+        - Ubuntu 14.04 LTS
+
+    * Drop support for below releases:
+        - Ubuntu 13.04, 13.10
+
+    * Allows sasl authentication ONLY over a TLS-encrypted smtp connection.
     * Enable LMTP service in Dovecot by default.
       To use LMTP instead of Dovecot LDA as per-domain or per-user local
       deliver agent in Postfix, you need to use one of below:
         - domain.defaultpasswordscheme
         - domain.minpasswordlength
         - domain.maxpasswordlength
+
       They all are merged into column 'domain.settings'. For example:
       domain.settings='default_language:en_US;default_user_quota:1024;'
 
+      Please check iRedMail upgrade tutorial to migrate these columns:
+      http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.8.6-0.8.7
+
     * New columns for MySQL and PostgreSQL backends:
         + mailbox.enablelmtp: used by Dovecot LMTP server.
         + domain.settings: used to store per-domain settings, userd in
 
     * Fixed issues:
         + Postfix cannot resolve IP address under chroot on RHEL/CentOS.
-        + FreeBSD ports tree:
-            - Spamassassin is now mail/spamassassin.
-            - Add missing port: www/mod_php5.
 
     * Updated packages:
         + Roundcube webmail -> 1.0.0

File iRedMail/conf/awstats

View file
     # This path will be changed in 'functions/awstats.sh'.
     export AWSTATS_CGI_DIR="/usr/lib/cgi-bin"
 
-    # Prepend 'z' to let Apache load this config file after others, used to
-    # prevent setting override.
-    if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-        export AWSTATS_HTTPD_CONF="${HTTPD_CONF_DIR}/zawstats.conf"
-    fi
 elif [ X"${DISTRO}" == X"FREEBSD" ]; then
     export AWSTATS_HTTPD_ROOT="${HTTPD_SERVERROOT}/awstats"
     export AWSTATS_ICON_DIR="${AWSTATS_HTTPD_ROOT}/icon"

File iRedMail/conf/cluebringer

View file
     export CLUEBRINGER_PID_FILE='/var/run/cluebringer/cbpolicyd.pid'
     export CLUEBRINGER_HTTPD_ROOT='/usr/share/postfix-cluebringer-webui/webui'
 
-    # Prepend 'z' to let Apache load this config file after others, used to
-    # prevent setting override.
-    if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-        export CLUEBRINGER_HTTPD_CONF="${HTTPD_CONF_DIR}/zcluebringer.conf"
-    fi
 elif [ X"${DISTRO}" == X"FREEBSD" ]; then
     export CLUEBRINGER_USER='policyd'
     export CLUEBRINGER_GROUP='policyd'

File iRedMail/dialog/optional_components.sh

View file
 export DIALOG_SELECTABLE_FAIL2BAN='YES'
 export DIALOG_SELECTABLE_PHPLDAPADMIN='YES'
 
-# Detect selectable menu items
-if [ X"${DISTRO}" == X'UBUNTU' ]; then
-    # Disable Awstats on Ubuntu 13.10 due to package missing: libapache2-mod-auth-mysql/pgsql
-    if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-        export DIALOG_SELECTABLE_AWSTATS='NO'
-        export DIALOG_SELECTABLE_PHPLDAPADMIN='NO'
-    fi
-elif [ X"${DISTRO}" == X'FREEBSD' ]; then
+if [ X"${DISTRO}" == X'FREEBSD' ]; then
     export DIALOG_SELECTABLE_FAIL2BAN='NO'
-elif [ X"${DISTRO}" == X'OPENBSD' ]; then
-    # Awstats is available on OpenBSD 5.4.
-    if [ X"${DISTRO_VERSION}" == X'5.3' ]; then
-        export DIALOG_SELECTABLE_AWSTATS='NO'
-    fi
 fi
 
 # Construct dialog menu list

File iRedMail/functions/awstats.sh

View file
         [ X"${LDAP_USE_TLS}" == X"YES" ] && \
             perl -pi -e 's#(AuthLDAPUrl.*)(ldap://)(.*)#${1}ldaps://${3}#' ${AWSTATS_HTTPD_CONF}
 
-        [ X"${DISTRO}" == X'UBUNTU' -a X"${DISTRO_CODENAME}" == X'saucy' ] && \
+        # Apache-2.4 doesn't support AuthzLDAPAuthoritative directive
+        [ X"${DISTRO}" == X'UBUNTU' ] && \
             perl -pi -e 's/(.*)(AuthzLDAPAuthoritative.*)/${1}#${2}/g' ${AWSTATS_HTTPD_CONF}
 
     elif [ X"${BACKEND}" == X'MYSQL' ]; then
 
         elif [ X"${DISTRO}" == X'DEBIAN' -o X"${DISTRO}" == X'UBUNTU' ]; then
             if [ X"${DISTRO_CODENAME}" == X'wheezy' \
-                -o X"${DISTRO_CODENAME}" == X'precise' \
-                -o X"${DISTRO_CODENAME}" == X'raring' ]; then
+                -o X"${DISTRO_CODENAME}" == X'precise' ]; then
                 cat >> ${AWSTATS_HTTPD_CONF} <<EOF
     AuthMYSQL on
     AuthBasicAuthoritative Off
         fi
 
     elif [ X"${BACKEND}" == X"PGSQL" ]; then
-        if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-            perl -pi -e 's#(<Directory .*)#DBDriver pgsql\n${1}#' ${AWSTATS_HTTPD_CONF}
-            perl -pi -e 's#(<Directory .*)#DBDParams "host=$ENV{SQL_SERVER} port=$ENV{SQL_SERVER_PORT} dbname=$ENV{VMAIL_DB} user=$ENV{VMAIL_DB_BIND_USER} password=$ENV{VMAIL_DB_BIND_PASSWD}"\n${1}#' ${AWSTATS_HTTPD_CONF}
-
-            cat >> ${AWSTATS_HTTPD_CONF} <<EOF
-    AuthBasicProvider dbd
-    AuthDBDUserPWQuery "SELECT password FROM mailbox WHERE username=%s AND isglobaladmin=1"
-EOF
-
-            a2enconf awstats &>/dev/null
-            a2enmod authn_dbd &>/dev/null
-        else
-            # Use PGSQL auth.
-            cat >> ${AWSTATS_HTTPD_CONF} <<EOF
+        cat >> ${AWSTATS_HTTPD_CONF} <<EOF
     Auth_PG_authoritative on
     Auth_PG_host ${SQL_SERVER}
     Auth_PG_port ${SQL_SERVER_PORT}
     Auth_PG_encrypted on
     Auth_PG_hash_type CRYPT
 EOF
-        fi
     fi
 
-    if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
+    if [ X"${DISTRO}" == X'UBUNTU' ]; then
         a2enmod cgi &>/dev/null
-        a2enconf zawstats &>/dev/null
+        a2enconf awstats &>/dev/null
     fi
 
     # Close <Directory> container.

File iRedMail/functions/cluebringer.sh

View file
             perl -pi -e 's#(AuthLDAPUrl.*)(ldap://)(.*)#${1}ldaps://${3}#' ${CLUEBRINGER_HTTPD_CONF}
 
         # Ubuntu 13.10 ships Apache-2.4 which removes directive 'AuthzLDAPAuthoritative'.
-        [ X"${DISTRO}" == X'UBUNTU' -a X"${DISTRO_CODENAME}" == X'saucy' ] && \
+        [ X"${DISTRO}" == X'UBUNTU' -a X"${DISTRO_CODENAME}" != X'precise' ] && \
             perl -pi -e 's/(.*)(AuthzLDAPAuthoritative.*)/${1}#${2}/g' ${CLUEBRINGER_HTTPD_CONF}
 
     elif [ X"${BACKEND}" == X"MYSQL" ]; then
         fi  # DISTRO
 
     elif [ X"${BACKEND}" == X"PGSQL" ]; then
-        # Ubuntu 13.10
-        if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-            perl -pi -e 's#(<Directory .*)#DBDriver pgsql\n${1}#' ${CLUEBRINGER_HTTPD_CONF}
-            perl -pi -e 's#(<Directory .*)#DBDParams "host=$ENV{SQL_SERVER} port=$ENV{SQL_SERVER_PORT} dbname=$ENV{VMAIL_DB} user=$ENV{VMAIL_DB_BIND_USER} password=$ENV{VMAIL_DB_BIND_PASSWD}"\n${1}#' ${CLUEBRINGER_HTTPD_CONF}
-
-            cat >> ${CLUEBRINGER_HTTPD_CONF} <<EOF
-    AuthBasicProvider dbd
-    AuthDBDUserPWQuery "SELECT password FROM mailbox WHERE username=%s AND isglobaladmin=1"
-EOF
-
-            if [ X"${DISTRO_CODENAME}" == X'saucy' ]; then
-                a2enconf zcluebringer &>/dev/null
-                a2enmod authn_dbd &>/dev/null
-            fi
-        else
-            # Use mod_auth_pgsql.
-            cat >> ${CLUEBRINGER_HTTPD_CONF} <<EOF
+        # mod_auth_pgsql
+        cat >> ${CLUEBRINGER_HTTPD_CONF} <<EOF
     Auth_PG_authoritative on
     Auth_PG_host ${SQL_SERVER}
     Auth_PG_port ${SQL_SERVER_PORT}
     Auth_PG_encrypted on
     Auth_PG_hash_type CRYPT
 EOF
-        fi
 
         # Set file permission.
         chmod 0600 ${CLUEBRINGER_HTTPD_CONF}

File iRedMail/functions/iredadmin.sh

View file
     fi
 
     # Enable Apache module config file on Ubuntu 13.10.
-    if [ X"${DISTRO}" == X'UBUNTU' -a X"${DISTRO_CODENAME}" == X'saucy' ]; then
+    if [ X"${DISTRO}" == X'UBUNTU' ]; then
         a2enconf iredadmin &>/dev/null
     fi