Zimbra on Ubuntu Server

From GridTrak

Jump to: navigation, search

Updated Oct 25, 2010 ajs


Contents

What is Zimbra?

"Modern, Innovative Email & Collaboration
Make email manageable again, change the way you work with others"

Most of the meaningful text you see "quoted" in this article is cut/paste from the zimbra website. Most of the comments are probably my own or a wiki contributor's.

Open Source Edition 6.0

Yahoo Public License - YPL

"ZCS Open Source Edition is available for you to test, evaluate, deploy, customize, and improve. In doing so we also hope you will participate in the Zimbra Community, so that we can work together to make ZCS a better product for everyone. It is free in perpetuity (providing you comply with the associated licensing terms). It does not, however, include Zimbra Support or software subscription."

Dedicated Server Required

"The Zimbra Collaboration Suite is designed to be the only application suite installed on the server. The Zimbra Collaboration Suite bundles and installs, as part of the installation process various other third party and open source software, including Apache Jetty, Postfix, OpenLDAP®, and MySQL®."

Infrastructure Setup

  • Install Ubuntu Server 8.04.3 on a computer or virtual machine. Note: Zimbra is Not Compatible with Ubuntu Server 9.04 (yet).
  • For reference, we will call our server 'zmail'
  • Install OpenSSH
  • Configure the zmail server for a static IP address: /etc/network/interfaces
    For example (yours will be different):
      # Local network interface
      auto eth0
      iface eth0 inet static
      address 192.168.30.72
      netmask 255.255.255.0
      network 192.168.30.0
      broadcast 192.168.30.255
      gateway 192.168.30.1
      dns-nameservers 192.168.30.80
  • Configure your Internet and Intranet DNS type A and MX records.
 For Example:
  DNS Record     Host Name     LAN IP     WAN IP  
  A - Host     zmail     192.168.30.72     69.17.69.101  
  MX - Mail Exchanger     zmail.mydomain.com  

  • Make sure that the /etc/hosts file includes the IP address specified in the /etc/network/interfaces
 For Example:
 127.0.0.1      zmail.mydomain.com  zmail
 192.168.30.72  zmail.mydomain.com  zmail
  • Configure your Firewall/Router appropriately. Note: You may want to block WAN access to the server until it is ready for production.
  Zimbra Port Mapping
  Remote Queue Manager  22 
  Postfix  25 
  HTTP  80 
  POP3  110 
  IMAP  143 
  LDAP  389 
  HTTPS  443
  SMTPS  587  (e.g. COMCAST SMTP Relay)
  Mailboxd IMAP SSL  993 
  Mailboxd POP SSL  995 
  Mailboxd LMTP  7025 
  Admin Console 7071
  • Add OpenSSH to the zmail server
 sudo apt-get install ssh
  • Add PuTTY to a remote system for remote access to the new system.

Dependencies

  • For Ubuntu 6.06 or 8.04 (we will watch for these during our 8.04 install)
 Sudo 
 libidnll 
 libpcre3 
 libexprt1 
 libstd++6  
 libstd++5 
 libgmp3C2
  • Ubuntu 8.04.3 requires installation of the following 3 prerequisites
 sudo apt-get install libpcre3 libgmp3c2 libstdc++5 sysstat
 sudo apt-get update

Installation

 For Example:  
 1.  In  PuTTY on the server, create and go to a temporary folder like /var/tmp
 2.  On the remote workstation, find the URL for the download
 3.  Copy the URL to your clipboard.  Note: The URL hasn't changed in at least 3 days now, so you can probably try the one below.
 4.  In PuTTY, enter a wget command and right-click to paste the
     URL after it.
 
 /var/tmp$ wget http://files2.zimbra.com/downloads/7.2.0_GA/zcs-7.2.0_GA_2669.UBUNTU10_64.20120410002303.tgz
 5.  Sudo Extract the tgz file and run its intall script  
 /var/tmp$ sudo tar zxvf zcs-7.2.0_GA_2669.UBUNTU10_64.20120410002303.tgz
 /var/tmp$ cd zcs-7.2.0_GA_2669.UBUNTU10_64.20120410002303
 /var/tmp/zcs-7.2.0_GA_2669.UBUNTU10_64.20120410002303$ sudo ./install.sh

Problem: Uses host name as the domain name

  • Resolve by specifying the correct domain name
 DNS ERROR resolving MX for zmail.mydomain.net
 It is suggested that the domain name have an MX record configured in DNS
 Change domain name? [Yes]
 Create domain: [zmail.mydomain.net] mydomain.net
       MX: zmail.mydomain.net (192.168.30.72)
       Interface: 192.168.30.72
       Interface: 127.0.0.1

Complete the Installation

  • At this point we are presented with a console menu that highlights items that still need to be configured.
  • Assign an admin password
  • Set Time Zone to 89 New York
  • Zimbra now finishes the installation and starts the servers
  • After Zimbra completes the installation, it appears to be ready for administration.

Problem: Ubuntu Uses sudo

  • Managing the Zimbra services requires executing zmcontrol commands while logged in as the zimbra user.
  • Problem: the zimbra user will not authenticate!
 $ su - zimbra
   -> Password: *****
   su: Authentication failure
  • Because login as the zimbra user fails, the zmcontrol commands do not work.

Work Around Commands

 sudo -u zimbra /opt/zimbra/bin/zmcontrol stop
 sudo -u zimbra /opt/zimbra/bin/zmcontrol start
 sudo -u zimbra /opt/zimbra/bin/zmcontrol status

It Works - We Think!

The Administrator:  Console https://zmail.mydomain.net:7071

Screenshot-Zimbra(TM) Administration Console Server Statistics.png

The Web Client:  http://zmail.mydomain.net

Screenshot-Zimbra(TM) WebMail.png

Configuration

Global Configuration

  • General Information
    • Maximum size for an uploaded file for Documents or Briefcase: Increase from 10240 to 204800
  • MTA
    • Maximum Message Size: Increase from 10000 to 204800
  • IP Tables for Multiple SMTP Port Listening
 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 465 -j REDIRECT --to-port 25

Zimbra Desktop

Oct 19, 2009

Installation

  • Download Zimbra Desktop for Linux, change to execute permissions and run. Note: do not run as root or sudo.
 chmod +x zdesktop_1_0_3_build_1691_linux_i686.sh
 ./zdesktop_1_0_3_build_1691_linux_i686.sh

Configuration

  • For SSL configuration, we need to enable https on the Zimbra server. The following command enables both http and https service connections. Zmtlsctl Reference
 sudo -u zimbra /opt/zimbra/bin/zmtlsctl mixed
 sudo reboot

Note 1: We have to reboot because the logger service will not restart if we simply restart the Zimbra services (see Bugs section below).

Note 2: Zimbra Client does not behave as documented for zmtlsctl both so it will not work for self signed SSL certificates.


Maintenance

Regenerate Self Signed Certificates

 sudo zmcertmgr createca -new
 sudo zmcertmgr deployca
 sudo zmcertmgr deploycrt self -new

Rename the Server

Changing the Hostname and DNS is not enough. Use the following command to update the Zimbra server name.


Bugs

 Created an attachment (id=18631)  
 replacement for /opt/zimbra/libexec/zmrrdfetch
  • Replacement Procedure
 cd /opt/zimbra/libexec
 sudo wget http://bugzilla.zimbra.com/attachment.cgi?id=18631
 sudo mv zmrrdfetch zmrrdfetch.bkup1
 sudo mv attachment.cgi?id=18631 zmrrdfetch
 sudo chmod +rwx zmrrdfetch
  • Verify Permissions are the same as all of the other zm* files
 ls -l -> -rwxr-xr-x 1 root root   8219 2009-10-01 09:10 zmrrdfetch
 sudo reboot
  • bug: zmcontrol stop, zmcontrol start will not restart the logger service. Reboot seems to work.
  • This patch may have fixed the problem.
  • The charts require FLASH to be installed in the client's browser



About the Author - Arnold

The author is still a Linux novice and needs to put this article here so he can remember how he did it. This is especially important if the task cannot be completed in one session.