Difference between revisions of "Manual Installation"

From Scalix Wiki
Jump to: navigation, search
(Downloading the Scalix Packages)
(Setting Tomcat memory allocation)
Line 320: Line 320:
 
=== Setting Tomcat memory allocation ===
 
=== Setting Tomcat memory allocation ===
 
Edit the following line in '''/etc/opt/scalix-tomcat/scalix-tomcat.conf''' so that '''JAVA_OPTIONS''' on a small server has parameters that allocate 50% of your RAM or 512MB, whichever is less, to your Tomcat application server, e.g.
 
Edit the following line in '''/etc/opt/scalix-tomcat/scalix-tomcat.conf''' so that '''JAVA_OPTIONS''' on a small server has parameters that allocate 50% of your RAM or 512MB, whichever is less, to your Tomcat application server, e.g.
  JAVA_OPTS="-server -Xms256m -Xmx256m"
+
  JAVA_OPTS="-server -Xms512m -Xmx512m"
 
for a machine with 512 MB of RAM and a 32bit OS.
 
for a machine with 512 MB of RAM and a 32bit OS.
  

Revision as of 07:07, 22 January 2014

Scalix Wiki -> How-Tos -> Manual Install Debian 4.0 & Ubuntu 8.04 Hardy Heron

Contents

Important Note

Please note that these manual installation instructions should only be used on unsupported platforms, such as debian. It is highly recommended to perform installation using the Scalix Installer on all supported platforms. If you manually install any version of Scalix, this may invalidate your ability to receive Scalix support for that software. Thank you for your understanding and compliance.

This document is under construction. Do not trust this document.

Scalix Installer (Debian 7( Wheezy), Ubuntu 12.04 and 13.04)

LAST UPDATE OF THIS SECTION: January 2014. It's quite accurate!

There is a Scalix installer available at,

https://github.com/scalix/Debian-installer

The installer:

  • works for Scalix Version 12 and possibly earlier versions
  • is tested on Debian 7 and Ubuntu 12.04 and 13.04.
  • needs some more testing on various platforms.

END OF UP-TO-DATE SECTION

Scalix Installer (Ubuntu 10.04 Lucid Lynx )

look at Ubuntu Lucid


Applicable Environments

These Installation instructions have been tested with

  • Scalix CE 12.0.3

They might not apply unmodified to any other version of Scalix.

System Prerequisites

Available Hardware Platforms

Scalix Community Edition software is currently available as an i386 build only. It will run on i386 and x86_64 Intel and AMD platforms.

Minimum System Requirements

  • Pentium 4 or better CPU
  • 1 GB RAM
  • 1 GB of free diskspace after OS Installation
  • Network Interface

Linux Distributions

  • Red Hat Enterprise Linux 5
  • Red Hat Enterprsie Linux 6
  • Fedora Core 19
  • OpenSuSE Linux 10.0
  • Debian 7 (Wheezy)
  • Ubuntu 12.04
  • Ubuntu 13.04

System Preparation

The following items may be helpful in preparing your system for Scalix Installation:

Network Configuration

  • Make sure you have at least one properly configured network interface.
  • It is best to use a static IP address; running a Scalix server on a machine using DHCP is not recommended.
  • Correct hostname resolution/DNS setup is vital. It is also best to use DNS in a Scalix/mail environment. File-based hostname resolution can be used (/etc/hosts). However, the following should always be true:
    • Your system should have a fully-qualified hostname, i.e. scalixraw.company.com or myraw.home.local
    • The "hostname" command should return the short hostname, while the "hostname --fqdn" command should return the fully-qualified hostname
    • Both the hostname and the fully-qualified hostname should resolve to the system's IP address (not the loopback 127.0.0.1 IP address).
      Note: RedHat and Fedora default installations setup /etc/hosts incorrectly. This must be changed manually after installation.
    • The special name "localhost" should resolve to 127.0.0.1
    • The IP address of the system should reverse-resolve to the fully-qualified hostname (not the short hostname or localhost)

Disk/File System Configuration

  • Scalix Software is installed in /opt. You need 200 MB in this directory
  • Scalix Data is kept in /var/opt/scalix. You need a minimum of 200 MB plus the size of any mailboxes. It is best to make /var/opt/scalix a separate file system
  • It is recommended that you put /var/opt/scalix on an LVM logical volume for online backup (this needs Snapshot functionality) and size management
  • Most Scalix systems are installed using an ext3 file system on Linux; however, most local file systems (XFS, Reiser) should work as well
  • For performance reasons (small, synchronous I/O operations), it is not recommended that you run Scalix off an NFS file system

Disabling Conflicting Services

Scalix comes with its own POP3, IMAP, LDAP and SMTP services. These might conflict with components already installed on the system.

  • To check for processes listening on the POP3 and IMAP ports, use the
    lsof -i :110  or  netstat -anp|grep 110
    and
    lsof -i :143  or  netstat -anp|grep 143 
    commands. If you see any process/service running, shut it down and disable it from starting with system startup
  • To check for processes listening on the standard LDAP port, use the
    lsof -i :389  or  netstat -anp|grep 389
    command. If you see any process/service running, use an alternate port number for Scalix LDAP. Please see below for details.
  • To check for processes listening on the standard SMTP port, use the
    lsof -i :25  or netstat -anp|grep 25
    command. With Sendmail installed (required), it is normal that Sendmail listens on 127.0.0.1:25. However, it should not listen on your external IP address. If you see any process/service listening on the external IP address, reconfigure your MTA. If your current MTA is not Sendmail, retry after removing your current MTA and replacing it with Sendmail.

Software Selection

The following additional packages that come with the OS distribution are usually needed after base installation (all references to Debian package names are from the Sarge stable release; Ubuntu package search was based on the 12.04 wheezy release ).

Note: On Ubuntu, you will have to add the multiverse repository and uncomment the universe repository configuration in /etc/apt/sources.list and run the
apt-get update
command.
  • Shortcuts
    • Ubuntu including Java
      apt-get install apache2 gawk krb5-config krb5-doc krb5-user libkadm55 libkrb53 libglib2.0-0 libstdc++2.10-glibc2.2 libxml2 sgml-base xml-core postgresql-8.1 libsasl2-modules libsasl2-modules-gssapi-mit sendmail elinks sun-java5-jre
    • Debian Sarge, excluding Java
      apt-get install apache2 gawk krb5-config krb5-doc krb5-user libkadm55 libkrb53 libglib2.0-0  libstdc++2.10-glibc2.2 libxml2 sgml-base xml-core postgresql libsasl2-modules libsasl2-gssapi-mit sendmail elinks
  • Apache Webserver 2.x
    • on Debian, SUSE and Ubuntu, this is the apache2 package
    • on RedHat, this is the httpd package
  • Gnu AWK
    • on Debian, RedHat, SUSE and Ubuntu, this is the gawk package
  • Kerberos (MIT Kerberos 5)
    • on Debian and Ubuntu, these are the krb5-config, krb5-doc, krb5-user, libkadm55 and libkrb53 packages
    • on SUSE, these are the krb5, krb5-apps-clients, krb5-apps-servers, krb5-client, krb5-server, and pam_krb5 packages
    • on RedHat, these are the krb5-libs and krb5-workstation packages
  • libglib2
    • on Debian and Ubuntu, this is the libglib2.0-0 package
    • on SUSE, this is the glib2 package
    • on RedHat, this is the glib2 package
  • libstdc++
    • on Debian and Ubuntu, this is the libstdc++2.10-glibc2.2 package
    • on Ubuntu the gcc-4.3-base and libstdc++5 packages are also required
    • on SUSE, these are the libstdc++ and compat packages
    • on RedHat, this is the compat-libstdc++-296 package
  • libxml2
    • on Debian, RedHat and Ubuntu, these are the libxml2, sgml-base and xml-core packages
    • on SUSE, these are the libxml2, sgmltool, and xml-commons packages
  • Postgres
    • on Debian, this is the postgresql package
    • on Ubuntu, this is the postgresql-9.1 package
  • SASL2 and modules for plain, crammd5 and gssapi (for MIT Kerberos)
    • on Debian and Ubuntu, these are the libsasl2-modules and libsasl2-gssapi-mit packages
    • on SUSE, these are the cyrus-sasl-plain, cyrus-sasl-digestmd5, cyrus-sasl, cyrus-sasl-saslauthd, cyrus-sasl-gssapi, and cyrus-sasl-crammd5 packages
    • on RedHat, these are the cyrus-sasl, cyrus-sasl-md5, cyrus-sasl-plain and cyrus-sasl-gssapi packages
  • Sendmail (possibly replacing default-install Postfix or Exim)
    • on Debian, SUSE, and RedHat, this is the sendmail package
  • text-based web browser
    • on Debian, RedHat and Ubuntu, this is the elinks package
    • on SUSE, the default is w3m, but you can use links if you like
  • script-language
    • on Debian, Ubuntu, this is the gawk package

Required 3rd Party Software

The following third party software is required to run a Scalix server:

Apache requirements

For integration with Apache, either Apache 2.2 using mod_proxy_ajp or Apache 2.0 with mod_jk is required. A version of libapache2-mod-jk for debian Sarge stable is provided with the Scalix debian installation package.

Creating a Scalix Group and User (optional)

Installation of the Scalix server package will automatically create a Unix group called "scalix" and a Unix user with the same name. The user id for this user will be automatically chosen and most files associated with Scalix data will be owned by this user. If you want to have control over the user id, you can create the user manually before installing the Scalix server package.

If you create the group and/or user manually, make sure the following applies:

  • The group must be called "scalix"
  • The user must be called "scalix"
  • The user must have a home directory of /var/opt/scalix
  • There should not be any files (profile files, etc.) copied to the user's home directory
  • The user should have it's primary group set to "scalix"
  • It is recommended to use /bin/true as the login shell for the "scalix" user so that the user cannot login to the system interactively. In addition, the password for the user should be locked.
  • If your OS offers the concept of a "server" or "service" user, the Scalix user should be created as one.

Setting up your user's environment

It is recommended to add the /opt/scalix/bin and /opt/scalix/diag directories to your admin user's (initially root!) PATH. It is also recommended to add /opt/scalix/share/man to your MANPATH to be able to access the reference man pages that come with Scalix server.


Downloading the Scalix Packages

The Scalix 12 packages can be downloaded from [downloads.scalix.com/scalix-12.0.3-GA-enterprise-suse-intel.bin]. You will need packages for the following modules appropriate for your platform:

  • scalix-server-*: the actual Scalix Server software
  • scalix-swa-*: the Scalix Web Access webclient; this can be installed on the same machine as the Scalix server or on a separate webserver
  • scalix-sac-*: the Scalix Management Services; if you want to use the Scalix Management Console, this must be installed on the Scalix server machine
  • scalix-res-*: the Scalix Remote Execution Service; this is the management agent used by Scalix Management Services. This is required on all systems that are managed by a Scalix Admin Server. As Scalix CE is limited to single server configurations, this must be installed on the single Scalix server machine.
  • libical: this is a Scalix adaption/compile based on an OpenSource implementation of a RFC-compliant ical library available from the Free Association project. The projects homepage is on SourceForge. Scalix provides source and binary packages in .rpm and .deb format within the respective Scalix tarballs.
  • scalix-mobile-*: the Scalix Web Access Mobile webclient; this can be installed on the same machine as the Scalix server or on a separate server
  • scalix-platform-*: the Scalix Messaging Services API platform; this can be installed on the same machine as the Scalix server or on a separate server, though the former is typical. It uses the Postgres database and is being used by both SWA and SWA Mobile.
  • scalix-sis-*: the Scalix Search and Indexing Services - based on Apache Lucene, this provides full-text and attachment indexing for Scalix data
  • scalix-tomcat-*: a customized version of Apache Tomcat adapted for Scalix use
  • scalix-postgres-*: the Scalix database integration pacakge

Copy all the .rpm or .deb files to a temporary directory location on your server.

Installing the Scalix Server package

Install the Scalix Server package.

Make sure you use the rpm's for your Linux distribution!

  • For rpm-based systems, use
    rpm -ivh scalix-server*.rpm
  • For deb-based systems, use
    dpkg -i scalix-server*.deb

In case of any missing dependencies or other errors, these should be resolved and the Scalix package installation retried before continuing.

Please note that under some circumstances the (re)installation will fail when not all prerequisites were met. Before retrying the installation, please remove all scalix packages (run within the directory where all Scalix .deb-files are located)

apt-get remove `ls |cut -d'_' -f1|xargs echo`

Creating and Configuring the Initial Scalix Server Instance

The following assumes you have added /opt/scalix/bin to your PATH. If not, you must use absolute pathnames for all commands.

Initialize the Scalix Message Store

On Debian and Ubuntu, before initialising the Scalix message store, you should install the libssl0.9.7 package if it is available. If it is not available, you can try sym-linking the libcrypto.so.0.9.8 library to libcrypto.so.0.9.7 instead. Sym-linking is not recommended however as there are significant changes between the two versions of OpenSSL in question.

To initialize the Scalix message store, use the
ommakeom
command. This creates an empty message store in /var/opt/scalix and also adds config file templates for all components into this directory tree. The process takes 3-15 minutes, depending on the speed of your system. Please check the screen output for any errors or problems during the process. A log of the message store creation is located in /var/opt/scalix/sys/install/log. In case of error, correct the problem and restart message store creation by using the
ompatchom
command.

Set Generation Rules for Display Name, Login Name and Internet Address

Before creating any new user, set the default rules for generating the display name (shown in 'From' email headers and address book display), the login name (used to log in to Scalix clients) and the Internet address.

The following is a list of user attributes you can use in those rules:
G represents the given name in mixed/original casing
S represents the surname in mixed/original casing
I represents the middle initial(s) in mixed/original casing
C represents the common name/display name in mixed/original casing (this cannot be used in the display name generation)
g, s, i and c represent the first character of the given name/surname/initials/common name in lower case
f and l represent the full given name/last name in lowercase

    • To set up generation rules for the display name, use the
      sxconfig --set -t general.usrl_cn_rule='<rule>'
      command, e.g.
      sxconfig --set -t general.usrl_cn_rule='S, G'
      to set the display name generation rule to Last, First.

    • To set up generation rules for the login name, use the
      sxconfig --set -t general.usrl_authid_rule='<rule>'
      command, e.g.
      sxconfig --set -t general.usrl_authid_rule='gs@'
      to set the login name generation rule to use the initials of the user in lowercase. If you omit the @ character from this rule, the fully-qualified domain name of the server appends to the login name. This is useful in multi-server environments (which are not supported for Scalix CE Raw). Please see the
      man omaddu
      for details.

    • To set up generation rules for the Internet address, use the
      sxconfig --set -t orniasys.name_part_<n>='<rule>' -t orniasys.domain_part_<n>='<domain>'
      command, e.g.
      sxconfig --set -t orniasys.name_part_1='"C" <G.S>' -t orniasys.domain_part_1='mycompany.com'
      to set the Internet address generation rule to generate addresses in the form "Last, First" <First.Last@mycompany.com> (provided that the display name generation rule is Last, First, as C maps to the display name). Please see
      man omiam
      for details.

      Note: You can set up to five Internet address-generation rules for the system by specifying different values from 1 to 5 for <n>.

Creating the Default Mailnode

The mailnode is a organizational unit grouping users. This becomes important in multi-server setups supported for Scalix Enterprise Edition. For single-server systems, creating a single, default mailnode is usually sufficient. It is best to use the organization name (without any 8-bit or special characters) as the mailnode name. To create the initial mailnode and make it the default, use the
omaddmn -m <mailnode>
command, e.g.
omaddmn -m mycompany
.

Setting up a Non-Default LDAP Port Number

If the system already has some LDAP service using the standard LDAP TCP port (389), change to another port number now. Edit the /var/opt/scalix/<instance>/s/sys/slapd.conf and change the port number to a different value. Scalix recommends using port 3890. The line to be changed should look like this:
portNum          3890

Starting the Server Daemons

Before creating the first set of users, start the server daemons. To do this, use the
omrc -n
command. The -n option prevents mail delivery and user signon services from starting because these are not usable at this time.

Creating the Default Admin User

To create a default admin account, use the
omaddu -n <fullname>/<mailnode> --class <class> -c admin -p <password> <loginname>
command, e.g.
omaddu -n sxadmin/mycompany --class limited -c admin -p secret sxadmin
Note 
Don't forget to quote if the name contains spaces, eg:
omaddu -n "Admin User/mynode" --class limited -c admin -p secret sxadmin

where

  1. sxadmin is the full name of the admin user as displayed in the address book
  2. mycompany is the default mailnode created in the previous step
  3. limited is either full or limited. When creating the admin user as a full user, this will use one of the 25 free premium mailboxes available in Scalix CE raw. However, if created as a limited user, the user won't be able to use Outlook to log in or access public folder information through SWA.
  4. -c admin sets full admin capabilities for the user
  5. secret is the users initial password
  6. sxadmin is the users login name

Note 
When creating the user fails with error like this "omaddu : [OM 8154] No more id's are available from the system id pool" then you have to create a new user-space like this:
First check for possibly existing users: omshowu -m all
Then add new user space for e.g. 1000 user: omadmidp -a -s 66000 -n 1000 (Each Scalix mailbox that is added will require a Unix/Linux ID. In this example Unix-ID pool 66000-66999 is added.)

Configuring the Admin User

Set up the Admin user as "Postmaster" to receive system error messages:
omconfenu -n "sxadmin/mycompany"
. This user is excluded from system-wide inbox quota checking:
omlimit -u "sxadmin/mycompany" -o -i 0 -m 0

Creating the LDAP Query User

To allow the Scalix Admin Server and Admin Console to access user information through Scalix LDAP, create a system user as follows:

omaddu -n sxqueryadmin/<mailnode> --class limited -c admin -p <passwd> sxqueryadmin@<fqdn>

This user's password can be anything, but the username (sxqueryadmin) and the user's login name must match the values provided where <fqdn> is the FQDN of your server as returned by the hostname --fqdn command. The user can always be created as a limited user because the only server he is allowed to log in to is LDAP, which does not require a premium user account.

Creating the Standard Scalix Admin Groups

Next, create the standard Scalix Admin groups for the Scalix Admin server. The names of these groups are fixed, so you must create them as follows:

omaddpdl -l ScalixUserAdmins/mycompany
omaddpdl -l ScalixUserAttributesAdmins/mycompany
omaddpdl -l ScalixGroupAdmins/mycompany
omaddpdl -l ScalixAdmins/mycompany

NOTE: Depending on your Generation Rules, these commands may complain with "omaddpdl : [OM 18043] The Internet Address is already assigned" but it seems to work anyway.

Adding Standard Tweak Settings

We recommend adding the following tweak settings to /var/opt/scalix/<instance>/s/sys/general.cfg . For details on these settings, please refer to the Scalix Administration Guide.

#
# The CDA service (used for "type down" in some clients) is more
# efficient if it can check the directory change log before attempting
# to update the access tables that it uses.   One slow machines, it may
# also be worth uncommenting the CDA_CHECKTIME tweak to reduce the check
# interval from five minutes to an hour.
#
CDA_USE_CHANGE_LOG=TRUE
# CDA_CHECKTIME=60
#
# These tweaks limit the number and rate of IMAP connections to the
# server. The IMAP_CONNECTION_LIMIT simply restricts the total number of
# connections to the server. Note that many IMAP clients have several
# connections for each IMAP session. The IMAP_CONNRATE_LIMIT restricts
# the rate at which clients can connect to the server, in this case, at
# most 10 connections per second. If clients try to connect faster
# than that, the IMAP server simply slows down the rate at which it will
# accept new connections.
#
IMAP_CONNECTION_LIMIT=500
IMAP_CONNRATE_LIMIT=10
#
# The IMAP_IDLE_TIMEOUT tweak is the maximum time an IMAP connection
# will wait for a command before terminating the connection. The default
# setting, and the minimum required setting, is 30 minutes. Some
# clients "refresh" their connection once every thirty minutes
# exactly -- but if they are a little bit late, the server drops their
# connection. Setting a timeout of 31 minutes avoids this problem.
#
IMAP_IDLE_TIMEOUT=31
#
# This tweak arranges for Local Delivery to automatically create a
# message store for users created without one.
# Users added with the bulk-add mechanism used by the
# wizard do not have a message store. So setting this tweak allows
# them to receive mail before they are initially signed on.
#
LD_CREATE_MESSAGE_STORE=TRUE
#
# These three tweaks allow users to sign on using an alias. Only
# system-defined aliases are permitted and it the alias name is ignored
# for the purposes of message creation and so on.
# 
# Note that changing these settings normally requires restarting Scalix.
#
UAL_SIGNON_ALIAS=YES
UAL_SIGNON_ALIAS_CONFIG=SYS
UAL_USE_SIGNON_ALIAS=FALSE

Starting Scalix Services

As a final step, start all services now using the following command:
omon -s all

Installing the Scalix Application packages

Now install the remaining packages

Make sure you use the rpm's for your Linux distribution!

  • For rpm-based systems, use
    rpm -ivh scalix-<package>*.rpm
  • For deb-based systems, use
    dpkg -i scalix-<package>*.deb

where package is one of mobile, platform, postgres, res, sac, sis, swa, tomcat, tomcat-connector.

In case of any missing dependencies or other errors, these should be resolved and the Scalix package installation retried before continuing.

Setting up Scalix-Tomcat

Setting Tomcat memory allocation

Edit the following line in /etc/opt/scalix-tomcat/scalix-tomcat.conf so that JAVA_OPTIONS on a small server has parameters that allocate 50% of your RAM or 512MB, whichever is less, to your Tomcat application server, e.g.

JAVA_OPTS="-server -Xms512m -Xmx512m"

for a machine with 512 MB of RAM and a 32bit OS.

For a large server, with 8Gb of RAM and a 64bit OS, you would allocate more memory:

JAVA_OPTS="-server -Xms1024m -Xmx2048m"

Setting up Scalix-Postgres

/opt/scalix-postgres/bin/sxpsql-init                  # To create the database and tables
/opt/scalix-postgres/bin/sxpsql-setpwd mypassword     # This is a database password you select
/opt/scalix-postgres/bin/sxpsql-whitelist 192.168.1.1 # This is the IP address matching the 
                                                      # hostname of the machine as used above

Configuring Scalix Applications

You will need to follow a few simple steps to integrate Scalix Applications into your Tomcat application server.

Configuring Scalix Web Access

Now, you must set up a number of parameters in /var/opt/scalix/<instance>/webmail/swa.properties:

# Add your main domain here
swa.email.domain=mycompany.com
# FQDN of your Scalix server
swa.email.imapServer=scalix.mycompany.com
# FQDN of your Scalix server                         
swa.email.smtpServer=scalix.mycompany.com
swa.settings.rulesWizardURL=/Scalix/rw
# FQDN of your Scalix server
swa.ldap.1.server=scalix.mycompany.com
# The port number of your 
# Scalix LDAP server; if you 
# have changed this from the
# default during server install,
# this needs to be reflected                           
swa.ldap.1.port=389
# FQDN of your Scalix server                     
swa.ldap.2.server=scalix.mycompany.com
# The port number of your
# Scalix LDAP server; if you
# have changed this from the
# default during server install,
# this needs to be reflected                        
swa.ldap.2.port=389                                                                                                                 
# Points to Platform Host                                                                  
swa.platform.url=http://scalix.mycompany.com/api
# use the platform                  
swa.platform.enabled=true
# default timeout
swa.soap.soapRequestTimeout=60

Configuring Scalix Ubermanager Admin Server

Next, you must set up a number of parameters in /var/opt/scalix/<instance>/caa/scalix.res/config/ubermanager.properties :

ubermanager.query.server=scalix.mycompany.com                # FQDN of your Scalix server
ubermanager.kerberos.mode=false                              # N/A for single server
ubermanager.kerberos.principalName=                          # "   "   "      "
ubermanager.kerberos.kdc=                                    # "   "   "      "
ubermanager.kerberos.realm=                                  # "   "   "      "
ubermanager.console.externalAuth=false                       # default value
ubermanager.console.allowExternalAuthChoice=false            # default value
ubermanager.console.maxListSize=100                          # default value
ubermanager.console.localDomains=mycompany.com               # Your email domain(s)
ubermanager.console.authDomains=                             # default value
ubermanager.console.modifyExternalSyncedAuthId=false         # default value
ubermanager.query.server.port=389                            # Scalix LDAP port number
ubermanager.configured=true                                  # to indicate file has been touched
ubermanager.version=11.0.1                                   # Please use your correct Scalix version

Also, create a file called /var/opt/scalix/<instance>/caa/scalix.res/config/psdata and put in the sxqueryadmin password. Make sure the file is only readable by root:

cd /var/opt/scalix/<instance>/caa/scalix.res/config
echo "<sxqueryadmin-password>" >psdata
chown root:root psdata
chmod 400 psdata

Configuring Scalix RES Admin Agent

You will need to adjust a few parameters in /var/opt/scalix/<instance>/res/config/res.properties :

res.kerberos.mode=                                           # Leave empty for single server
res.kerberos.kdc=                                            # "     "     "   "      "     
res.kerberos.realm=                                          # "     "     "   "      "     
res.kerberos.allowedclients=ubermanager/scalix.mycompany.com # FQDN of your Scalix server
res.ubermanager.host=scalix.mycompany.com                    # FQDN of your Scalix server
res.tomcat.tcp.port=80                                       # http port number of Tomcat
res.configured=true                                          # to indicate file has been touched
res.version=11.0.1                                           # Please use your correct Scalix version

Configuring Scalix Messaging Services API Platform

You will need to adjust a few parameters in /var/opt/scalix/<instance>/platform/platform.properties :

imap.host=scalix.mycompany.com                                                # FQDN of your Scalix server
smtp.host=scalix.mycompany.com                                                # FQDN of your Scalix server
ldap.port=389                                                                 # Scalix LDAP port
hibernate.connection.url = jdbc:postgresql://scalix.mycompany.com:5733/scalix # DB server or localhost
                                                                              # Note Scalix specific PG port
hibernate.connection.password = <Postgres-password>                           # as assigned on DB creation

Configuring Scalix Web Access Mobile

You will need to adjust a few parameters in /var/opt/scalix/<instance>/mobile/mobile.properties:

platform.url=http://scalix.mycompany.com/api                 # URL to Messaging Services Platform

Configuring Scalix Search and Indexing Services

You will need to adjust a few parameters in /var/opt/scalix/<instance>/sis/sis.properties:

index.language=English                        # Default language for indexing, 
                                              # analysis, stemming search
index.client.whitelist=192.168.1.1            # IP of your Scalix server
search.client.whitelist=192.168.1.1           # IP of your Scalix server

Restarting Tomcat

After making all these changes, restart Tomcat with the following command:
/etc/init.d/scalix-tomcat restart

Integrating the Web-based Scalix Rules Wizard into Apache

You will just need to link the Apache config file into your Apache config directory:

  • For debian and SUSE, execute
    ln -s /opt/scalix/global/httpd/scalix-web-client.conf /etc/apache2/conf.d
    and restart apache using
    /etc/init.d/apache2 restart
  • For Redhat, execute
    ln -s /opt/scalix/global/httpd/scalix-web-client.conf /etc/httpd/conf.d
    and restart apache using
    /etc/init.d/httpd restart

Testing Your Newly-Installed System

Installation is now complete. Before starting with the new system, run these tests:

  • Reboot your server. All services (Scalix Server, Tomcat and Apache) should come up on their own.
  • Check the output of omstat -a and omstat -s commands. Item Structure Server may display as stopped. All other daemons and services should be up and running.
  • Try to access Scalix Admin Console from a browser using the http://scalix.mycompany.com/sac URL. Log in using your sxadmin login name and password. Create a new user.
  • Try to access Scalix Web Access from a browser using the http://scalix.mycompany.com/webmail URL. Log in using your newly-created user. Try address book lookups. Send an email message to yourself. Try to access the Web-based Scalix Rules Wizard from your Extras menu.
  • Download and install the Outlook connector. Setup a premium user. Install the Outlook connector on a Windows PC. Set up an Outlook profile and access your Scalix mailbox from Outlook.

If all these work, your Scalix server is in good shape and you're ready to take it to the next level.

What's next?

  • Read the docs. Check out the Administration Guide and Administration Console Guide. If you need more information, manpages contain a lot of valuable data. Start with
    man scalix-server
    * Setup Tomcat to run as a non-root user for more security. This is described in the Tomcat Technote.
  • Setup your sendmail with correct Smarthost and routing information for outbound Internet email.
  • Setup fetchmail if your email is hosted with a provider
  • Setup stunnel if you require secure SSL communication for POP, IMAP, LDAP or SMTP
  • Setup Spam Assassin for better Spam protection
  • Setup ClamAV for good open-source virus protection
  • Integrate with an external LDAP directory such as OpenLDAP, eDirectory or Active Directory
  • Setup Online Backup using LVM Snapshots