Live Chat
773 598 5800
Search Results
  • Search Results

Table of Contents

3. Mail Server Architecture

3.1. Generic Server Configuration

3.1.1. Running Services

3.1.2. Other Generic Server Parameters

3.1.3. DNR Settings

3.2. Services and Modules

3.2.1. SMTP Receiving

3.2.2. Processing

3.2.3. SMTP Sending

3.2.4. POP3

3.2.5. IMAP

3.2.6. Logging

3.2.7. Reporting

3.2.7.1. Reporting Parameters

3.2.8. WebMail

3.2.9. Storage

3.2.10. FTP Backup Service

3.2.11. RPOP Service

3.3. Connectivity and Threading

3.3.1. Listeners

3.3.2. Rules

3.3.3. Threads

3.4. Clustering Support

3.4.1. Cluster Overview

3.4.1.1. LDAP Introduction

3.4.1.1.1. Basic Directory Setup

3.4.1.1.2. LDAP Entry Structure

3.4.1.1.3. LDAP Authentication

3.4.1.2. LDAP Synchronization

3.4.1.2.1. Minimum requirements

3.4.1.2.2. Feature Design & Data Flow

3.4.1.2.2.1. LDAP Integration Design

3.4.1.2.2.2. Active Directory Integration Design

3.4.1.2.2.3. Synchronization options

3.4.1.2.2.4. Categories of synced data

3.4.1.2.3. Integration Processes

3.4.1.2.3.1. Important Notices

3.4.1.2.3.2. Axigen LDAP Connector Configuration

3.4.1.2.3.3. Active Directory Integration

3.4.1.2.3.4. OpenLDAP Integration

3.4.1.3. AXIGEN Mapping System

3.4.1.4. AXIGEN Authentication System

3.4.1.5. AXIGEN Front-End Services Setup

3.4.1.5.1. The SMTP Proxy

3.4.1.5.2. The IMAP and POP3 Proxies

3.4.1.5.3. The WebMail Proxy

3.4.1.5.4. Mapping Setup

3.4.1.6. AXIGEN Back-End Services Setup

3.4.2. LDAP Routing

3.4.2.1. Configuring Mapping Parameters

3.4.2.2. POP3 Proxy Service

3.4.2.3. IMAP Proxy Service

3.4.2.4. Webmail Proxy Service

3.4.3. AXIGEN LDAP Authentication

3.4.4. Integrating Active Directory into a cluster environment

3.4.5. Exotic Cluster Setups

3.5. Groupware and collaboration

3.5.1. Personal Organizer & AXIGEN Outlook Connector

3.5.2. Folders and permissions

3.5.3. iCalendar Functionality

3.5.3.1. Minimum requirements

3.5.3.2. Feature Design

3.5.3.3. Axigen Configuration

3.6. ActiveSync

3.6.1. Minimum requirements

3.6.2. ActiveSync Configuration

3.6.2.1. ActiveSync Provisioning

3.6.2.2. ActiveSync Special Licensing Notes

3.4.1.2.3.4. OpenLDAP Integration

The integration between the Axigen Mail Server and the OpenLDAP software package and service is rather straight-forward in the sense that only some initial configuration is involved for the latter solution with the rest of the details being synced from the mail server database automatically. To set up the LDAP service appropriately you must first make sure the version you are running is compatible with Axigen. You need to be using a LDAP version newer than 2.4. If you are not running a correct version you have to upgrade your LDAP server before attempting to run the sync. It is important to run the latest version of LDAP to make sure the integration is performed as smoothly as possible.

Warning: The sync process in OpenLDAP can generate a lot of stress for the application. The LDAP protocol and database structure was created and optimized for few writes and many reads and therefore can generate problems with performance in case a flood of updates (syncs) takes place.

Once you have a supported LDAP version, you need to configure it appropriately before populating the database. The configuration file should include the correct schemas for the objects to be created and managed:

include /etc/openldap/schema/core.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/axigen.schema


Also very important, you have to enable support for the second version of the LDAP protocol:

allow bind_v2

Following are the recommended database options, as well as the indexing options that are normally used for the Axigen entry value (expected) contents:

serverID 1
database bdb
suffix "dc=localdomain,dc=test"
checkpoint 32 30
rootdn "cn=admin,dc=localdomain,dc=test"
rootpw secret
directory /var/lib/openldap-data
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index entryUUID,entryCSN eq


Of course, you always have to replace the “dc=” sections with the domain name you plan on using and the administrative password which is only provided here for reference purposes. The indexing options should be specified at all times if you plan on having a decent performance for your lookups. Failure to set the indexing options before populating the database may result in additional future configuration overhead to apply this change.

To enable replication support, you need to enable the following configuration options in the LDAP configuration file:

overlay syncprov
syncprov-checkpoint 100 30
syncprov-sessionlog 1000


In the above example, the “syncprov-checkpoint” arguments create a new checkpoint every 30 minutes or every 100 operations. Also, the “sessionlog” will be limited to 1.000 entries and if you plan on making (or expect) a lot of syncs to take place in a short while (or at once), you should consider increasing this number of kept records.

Lastly, you have to enable support for “Member-of” support (for groups) if you plan on using this feature:

moduleload memberof.la
overlay memberof
memberof-refint true


This concludes the LDAP configuration file contents and requirements. On top of this initial setup you will have to consider a couple of more details before moving on with the integration. First off, if you already have a populated LDAP database you should either use another (different) database for Axigen related syncs or upgrade the current entry layout to match the following design:
  • Root node layout:
    dn: dc=localdomain,dc=test
    objectclass: organization
    objectclass: dcObject
    o: localdomain.test
    dc: localdomain

  • Organization node layout:
    dn: o=localdomain, dc=localdomain,dc=test
    objectclass: organization
    o: localdomain

  • Groups unit layout:
    dn: ou=Groups, o=localdomain, dc=localdomain,dc=test
    objectclass: organizationalUnit
    ou: Groups

  • User unit layout:
    dn: ou=Users, o=localdomain, dc=localdomain,dc=test
    objectclass: organizationalUnit
    ou: Users

Based on the node and unit (entry) layout above you should be able to generate the appropriate LDIF files for your specific scenario. Relevant information on the actual properties attached to the Axigen entries in LDAP can be found in the LDAP schema file called “axigen.schema”.

In addition to this approach you may also choose to let the Axigen Mail Server sync the data and automatically create the entries in the LDAP server through the regular update process of the database. In fact the second approach is the recommended one in most cases, except of course if you already have a populated database that may be corrupted during this process.