XMS Mail Server Documentation
Table of Contents
- I. Installation and Configuration
- 1. Installing XMS Mail Server
- Installing XMS Messaging Server on Windows
- Optimized TCP/IP Registry Settings
- Installing XMS Mail Server on UNIX
- 2. Configuring XMS Mail Server
- The config.xml file
- Documentation for config.xml
- The log4j.xml file
- Setting the log level
- Log4j appenders
- The xms-wrapper.conf file
- Memory Settings
- Java Virtual Machine
- 3. Management and Monitoring
- Enabling Web Based Monitoring
- Enabling File Based Monitoring
- II. XMS Mail Server Examples
- 4. XMS Mail Server Examples
- Template Job Service Examples
- Example Database Structure
- Example Template
- Template Job Configuration
- Template Engines
- Setting up DomainKeys on XMS
- Signing Email with DomainKeys on XMS Email Server
- Setting up XMS Mail Server as an Incoming Gateway
- Ensuring that your mail server is not setup as an Open Relay
- Rejecting Recipients
- Redirecting mail to a local delivery SMTP server
- Setting Up the SpamAssassin anti-spam filter on XMS
- Installing Spam Assassin
- Configuring the SpamAssassin Filter in XMS
- Load Balancing SpamAssassin
- What does the XMS Spam Assassin Filter Do?
- Virus Scanning Email with Clam AntiVirus
- Installing ClamAV
- Configuring the XMS ClamAV filter
- Load Balancing ClamAV AntiVirus Filter
- What does the ClamAV Virus Scanning Filter do?
- Configuring a DataSource
- Finding a JDBC Driver for your Database Server
- JDBC Driver Class Names
- JDBC URL's
- Installing the JDBC Driver
- Adding a DataSource to XMS in config.xml
- Working with the StringList Service
- Creating a list in the config.xml file
- Creating a list in a separate file
- Using a Database as a List
- Handling Bounce Emails on XMS
- Configuring the Bounce Filters, and Handlers
- III. Configuration Reference
- I. actions
- Database Query Action - Action that executes a database query
- Log Action - Action that stores information in a log file
- Null Action - Action that does absolutely nothing
- Test Action - Test action that dumps the context to the console
- II. authenticators
- Configuration File Authenticator - An authenticator for the AuthenticationService that allows you to speicfy users from the config.xml file
- Unix Password File Authenticator - Unix Password File Authenticator
- III. engines
- Freemarker Template Engine - Provides an interface to the Freemarker template engine
- Token Template Engine - Provides token parsing for the template engine
- IV. filters
- Bounce Filter - The bounce filter filters bounces
- Header Filter - Example filter that adds a Yo header
- RegEx Line Filter - Regular Expression filter that matches expressions on a line, and then applies an action to them.
- Simple Forwarder - Forwards mail for one address to another
- Upper Case Filter - Converts message text to upper case
- Blacklist Filter - Blocks IP addresses listed in blacklists
- Simple Connection Filter - Blocks or allows connections based on the connecting IP address
- Verp Bounce Filter - Provides VERP services and bounce scanning for incoming and outgoing mail
- Attribute Map Filter - Filter for mapping headers into attributes
- ClamAV Filter - Scans emails for viruses using clamd
- From List Blocker - Blocks an email if its from address is found in the given list
- From List Filter - Applies an action to an email based on if the source address is found in a list or not.
- Habeas Filter - Filter for adding Habeas accredidation headers
- SpamAssassin Filter - Sends email to a spamd server for checking
- DKIM Signature Filter - Signs emails using DKIM, and adds a DKIM-Signature header to emails
- DomainKeys Verification Filter - Verifies the signatures of a email signed with DomainKeys, currently in development.
- DomainKeys Signature Filter - Signs emails using Yahoo DomainKeys spec, and adds a DomainKeys-Signature header to emails
- DomainKeys Verification Filter - Verifies the signatures of a email signed with DomainKeys, currently in development.
- Forwarding Filter - Redirect email
- Relay Filter with StringList attributes - Allows email to come through for a specified list of local domains, or by connection ip. Supports StringList types for the list of domains, accept and reject addresses.
- Local Delivery Filter - Changes the message target for recipient domains found in the localdomains attribute.
- Multiplexer Map Filter - Maps domains to a multiplexer target.
- Recipient List Filter - Applies an action to an email based on if a recipient is found in a list or not.
- Recipient Reject Filter - Rejects mail to a given recipient
- Simple Relaying Filter - Allows email to come through for a specified list of local domains, or by connection ip
- Seed Filter - SeedFilter sends messages to defined pop addresses at specified intervals within a distribution list. Deliverabiliy issues can be identified and addressed using the data returned by the deliverability service vendor based on the results of the delivery attempts to seed accounts.
- V. keystores
- Key Store - Key Stores hold security keys (public and private keys)
- Key Store - Key Stores hold security keys (public and private keys)
- VI. lists
- Configuration File String List - Allows you to define StringList data from within the configuration (config.xml) file. Note that the list can be modified at server runtime (if readonly=false), but any changes are lost when the server is restarted.
- Database String List - A String List
- File String List - A String List
- File String List - A String List
- VII. maps
- Database String Map - A string map maps string keys to string values
- Property File String Map - A String Map that stores its values in a properties file
- VIII. policys
- Default delivery policy manager - Exponentially increases deferral time within a minimum and maximum window
- Fire and Forget Delivery Policy - Delivery policy that does not generate DSN's and only retries a specified number of times
- IX. printers
- Printer Config -
- X. providers
- Database provider - A Database provider for the template service
- Debug Provider - A debug provider for the template service
- File Provider - A file provider for the template service
- Loop Provider - A provider that stores the results of it's contained providers in a sublist
- Merge Provider - A provider that merges the results of contained providers.
- Push Provider - Provides data pushed via HTTP
- Simple Provider - A simple provider for the template service
- Status Provider - A provider that provides the last N values for specified variables
- Template Provider - Provider that processes templates and assigns them to variables
- XML Provider - Provides XML documents from a specified URL
- XI. services
- Configuration Genius - This service provides an interface for automated initial configuration.
- Configuration Service - The configuration service hosts the online configuration documentation.
- Datasource Service - XMS Server implementation of a DataSourceService. Manages datasource connections
- String Map Service - XMS String Map Service implementation
- String List Service - XMS implementation of ListService
- XMS DSN Generator Service - XMS DSN Generator Service
- Active Message Generator Service - Active Message Generator Service Generates Active Messages?
- Console Target Service - Console Target Service
- Null Target Service - Null Target Service
- Printer Service -
- Management Service - The management service provides web based management of server resources
- XMS SOAP Service - Provides access to service APIs via SOAP
- XMS Telnet debug service - Runs a debug server on port 8023 that you can telnet to
- Monitoring Service - Provides resource monitoring services
- Domain Monitoring Service - Enables extended monitoring capabilities at a per-domain resolution
- Domain Name Service - A service that exposes methods to query DNS Servers
- XMS Connection Authority Service - Connection authority provides controls and limits on how the server connects to other servers.
- Authentication Service - Provides authenticators that authenticate usernames and passwords
- Key Store Service - Provides access to key stores which hold public and private keys used for encryption
- IQ Spool Service - Stores messages to disk.
- XMS Template Job Service - Template job service allows you to send personalized email campaigns
- Thread Pool Service - Threading and Scheduling Services for XMS Server
- Deferral Multiplexer - Multiplexer for offsetting deferrals to a separate target
- Load Balancer - Load Balancer for balancing outgoing IPs
- Multiplexer - Multiplexer for switching between targets
- SMTP Client Service - SMTP Client service takes messages and sends them to other smtp servers
- SMTP Service - SMTP Server Service
- SQL Delivery Service - Message transport that delivers to an SQL database.
- Update Service - Provides automatic updates for XMS