Upgrade/iRedMail/0.6.1-0.7.0

From iRedMail

Revision as of 16:18, 27 January 2011 by ZhangHuangbin (Talk | contribs)
Jump to: navigation, search

Contents




To be continued, do NOT apply below steps.


General Update, all backends should apply these changes

  • All users should apply hotfix for iRedMail-0.6.1 before go further: Hotfix for iRedMail-0.6.1
  • Upgrade Dovecot 1.1.x to 1.2.x
  • TODO:
    • Fix disclaimer issue. Works with clients in "mynetworks", not authenticated users.
    • Quarantine SPAM/Virus with Amavisd-new.
    • Replace LDAP attributes: gn -> givenName, fax ->.

OpenLDAP backend only

Support mail list of alias domain

  • Edit /etc/postfix/ldap_virtual_group_maps.cf, remove "domainName=%d" in search_base:
File: /etc/postfix/ldap_virtual_group_maps.cf
# OLD SETTING
search_base     = domainName=%d,o=domains,dc=XXX

# NEW SETTING
search_base     = o=domains,dc=XXX

Add missing value for mail users

iRedMail-0.7.0 requires enabledService=smtpsecured for SMTP over SSL. so we should add it if users doesn't have it.

Steps:

  • Download python script used to adding missing values.
Terminal:
# cd /root/
# wget http://iredmail.googlecode.com/hg/extra/update/updateLDAPValues_061_to_070.py
  • Open updateLDAPValues_061_to_070.py, config below parameters in file head:
File: updateLDAPValues_061_to_070.py
uri = 'ldap://127.0.0.1:389'
basedn = 'o=domains,dc=iredmail,dc=org'
bind_dn = 'cn=vmailadmin,dc=iredmail,dc=org'
bind_pw = 'passwd'

Tip:

    • You can find them in iRedAdmin config file or iRedMail.tips file under your iRedMail installation directory.
    • Use 'cn=Manager' instead of 'cn=vmailadmin' here is ok too.
  • Execute this script, it will add missing values for mail accounts:
Terminal:
# python updateLDAPValues_061_to_070.py

MySQL backend only

Improve backup mx support

  • Edit /etc/postfix/mysql_virtual_alias_maps.cf, change query = to below new setting:
File: /etc/postfix/mysql_virtual_alias_maps.cf
query       = SELECT goto FROM alias,domain WHERE (alias.address='%s' OR alias.address='@%d') AND alias.active='1' AND domain.backupmx='0'
  • Edit /etc/postfix/mysql_domain_alias_maps.cf, change query = to below new setting:
File: /etc/postfix/mysql_domain_alias_maps.cf
query       = SELECT goto FROM alias,alias_domain,domain WHERE alias_domain.alias_domain = '%d' and alias.address = CONCAT('%u', '@', alias_domain.target_domain) AND alias.active = 1 AND alias_domain.active='1' AND domain.backupmx='0'

Update SQL structure of vmail database

Add more columns and create indexes.

Terminal:
$ mysql -uroot -p
USE vmail;
ALTER TABLE mailbox ADD COLUMN enablesmtpsecured TINYINT(1) NOT NULL DEFAULT '1';

ALTER TABLE admin ADD COLUMN name VARCHAR(255) DEFAULT '' COLLATE utf8_general_ci;
CREATE INDEX admin_active ON admin (active);

ALTER TABLE alias ADD COLUMN name VARCHAR(255) DEFAULT '' COLLATE utf8_general_ci;
ALTER TABLE mailbox ADD COLUMN local_part VARCHAR(255) NOT NULL DEFAULT '';

ALTER TABLE domain ADD COLUMN defaultuseraliases TEXT NOT NULL DEFAULT '';
Personal tools