11 Configuring Messaging Server
This chapter provides information on how to perform an Oracle Communications Messaging Server initial configuration, as well as how to perform configurations for Messaging Server's individual components.
For information about performing a Cassandra message store initial configuration, see Messaging Server Installation and Configuration Guide for Cassandra Message Store.
Designing for Service Availability
Once you have decided on your Messaging Server logical architecture, the next step is deciding what level of service availability is right for your site. The level of service availability you can expect is related to hardware chosen as well as the software infrastructure and maintenance practices you use. The following information discusses several choices, their value, and their costs.
High-level Overview of Configuring Messaging Server
Performing an initial run-time configuration of Messaging Server involves the following high-level steps:
-
Creating a UNIX system user and group for Messaging Server
-
Checking that DNS is properly configured
-
Preparing Directory Server for Messaging Server configuration by running the comm_dssetup.pl script
-
Creating the initial Messaging Server runtime configuration by running the init-config command
Additionally, other steps to perform include the following:
-
Installing tools to provision Messaging Server
-
Modifying SMTP relay blocking configuration
-
Enabling Messaging Server startup after a reboot
-
Becoming familiar with best practices for performance tuning
Configuring Messaging Server
You must configure Messaging Server to complete the installation. You use the Messaging Server configuration command-line script, init-config, to perform this initial runtime configuration. It is meant to create an initial runtime configuration to set up a generic functional Messaging Server configuration. Thus it gives you a base working configuration from which you can make your specific customizations. The program is only meant to be run once. Subsequent running of this program overwrites the existing configuration. To modify your initial runtime configuration, use the configuration utilities described here and in Messaging Server System Administrator's Guide.
When running init-config on a Linux system that runs portreserve, it is possible that some ports that are commonly used by Messaging Server are pre-reserved. In that case, you may see a message like this during the configuration process:
WARNING: The following ports are currently reserved in /etc/portreserve 143 (IMAP) is currently reserved by dovecot 110 (POP) is currently reserved by dovecot
If you see such a message, you should investigate your proposed use of Messaging Server to see whether the ports listed would actually conflict. For example, if you are configuring an MTA relay only, the IMAP and POP port conflicts may be irrelevant because those ports would not be used by Messaging Server.
If you receive this warning, you should also investigate your operating system configuration to resolve the conflict including potentially disabling the reported services, if appropriate.
The init-config command detects mismatches in certain critical LDAP attributes when performing second and subsequent initial configurations using the same LDAP server. The critical attributes are:
-
default domain: inetDomainBaseDN, preferredMailHost, and sunPreferredDomain
-
admin user: userPassword, mailHost, and mail
The admin's userPassword must match unless the --novalidate or --noldap options are used with init-config (in which case the new value will replace the old one when the LDIF generated by init-config is applied). In interactive mode, the admin may select whether to preserve or replace the other attributes. The default behavior is replace (as with previous versions), but the new --preserveCritical option changes the default behavior to preserve. If a state file is used, the default behavior is applied to all attributes except userPassword.
The initial runtime configuration must be completed for each Messaging Server components. Once this has been completed, you can configure Messaging Server's individual components.
The tasks to configure Messaging Server are as follows:
Running the Messaging Server Initial Configuration Script
You must run the Messaging Server initial configuration script before completing the installation. Follow the steps below to run the configuration script.
To Run the Messaging Server Configure Script:
-
Log in as or become the superuser (root).
-
Invoke the Messaging Server initial runtime init-config command.
It is recommend to use Unified Configuration for new Messaging Server deployments. For more information on Unified Configuration, see Messaging Server System Administrator's Guide.
For information on options you can set with your init-config program, see Messaging Server Reference Guide.
After running the init-config command, the welcome text appears.
-
Select the directory where you want to store the Messaging Server configuration and data files.
Symbolic links are created under the MessagingServer_home directory to the configuration and data directory. For more information on these symbolic links, see "Post-Installation Directory Layout".
Make sure you have large enough disk space set aside for these files.
The “Overwrite the existing configuration" prompt appears if you have an existing configuration.
-
If you do receive the “Overwrite" message, to accept the default of yes, press Enter.
-
Otherwise, type n to enter a different directory path.
-
-
Select the user name for server processes.
To accept the default user name mailsrv, press Enter. Otherwise, type the user name for the server processes.
-
Select the group name for server processes.
To accept the default group name mail, press Enter. Otherwise, type the group name for the server processes. This question appears only if the UNIX user name has not yet been created.
-
Select the fully-qualified local host name.
This is the machine on which Messaging Server runs. When you installed the server, you might have specified the physical host name. However, if you are installing a cluster environment, use the logical host name. Here is the chance to change what you originally specified.
-
Type the default mail domain.
-
Select the host name for the LDAP Directory Server.
-
Select the LDAP administrator login.
The Directory Manager has overall administrator privileges on the Directory Server and all servers (for example, Messaging Server) that make use of the Directory Server, and has full administration access to all entries in the Directory Server. The default and recommended Distinguished Name (DN) is cn=Directory Manager and is set during Directory Server configuration.
If you are installing against a replicated Directory Server instance, you must specify the credentials of the replica, not the master directory.
-
Type the LDAP administrator password.
Messages similar to the following appear:
==Checking Directory Server Setup from comm_dssetup Domain Suffix: o=isp User/Group Suffix: o=isp Mail List User Suffix: o=mlusers Schema Type: 2
-
Type a mail address for postmaster notices.
Select an address that your administrator actively monitors. For example, pma@example.com for a postmaster on the example domain. This address cannot begin with “Postmaster."
Note:
The user of the email address is not automatically created (although the default “admin" user is automatically created). Therefore, you need create it later by using a provisioning tool.
-
Type the IP addresses of hosts that are permitted to relay mail without authentication.
You can use the $(IP-pattern/significant-prefix-bits) syntax. This information creates the appropriate mapping entries. It is important that you modify your configuration to match the needs of your site. Specifically, your Messaging Server should recognize its own internal systems and subnets from which SMTP relaying should always be accepted. If you do not update this configuration, you might encounter problems when testing your MTA configuration. For more information, see "Configuring SMTP Relay Blocking".
-
Type the password for administrator accounts.
Type an initial password to be used for service administrator, server, user/group administrator, end user administrator privileges as well as PAB administrator and SSL passwords.
After creating the initial runtime configuration, you might change this password for individual administrator accounts. For more information, see the discussion on how to modify your passwords in the Messaging Server System Administrator's Guide.
-
Verify the password for administration.
-
Retype the administration password.
-
The program displays the changes that it makes as well post-configuration changes that you might want to make.
Note:
Refer to "Information Requirements" for information about the values you must provide during initial configuration.
Configuring the Message Transfer Agent (MTA)
Once you have followed the steps in Running the Messaging Server Initial Configuration Script you can finish configuring Messaging Server's MTA component.
To configure the Message Transfer Agent (MTA):
-
Disable the webmail server and message store.
msconfig set store.enable 0 msconfig set http.enable 0
-
Configure the relay for the kind of traffic you are dealing with and the kind of traffic shaping you need.
For example, if your inbound relay needs to use LMTP, configure your deployment accordingly.
Configuring the Messaging Multiplexor (MMP)
Once you have followed the steps in Running the Messaging Server Initial Configuration Script you can finish configuring Messaging Server's Messaging Multiplexor (MMP) component.
To configure the Messaging Multiplexor (MMP) and disable other product components:
msconfig set mmp.enable 1 msconfig set store.enable 0 msconfig set mta.enable 0 msconfig set http.enable 0
Configuring the Webmail Server
Once you have followed the steps in Running the Messaging Server Initial Configuration Script you can finish configuring Messaging Server's Webmail Server component.
To Configure the Webmail Server:
-
Disable the message store and MTA on the webmail server host.
msconfig set store.enable 0 msconfig set mta.enable 0
-
(Optional) Set the following options.
If you want to use a different store administrator or a non-standard IMAP port, use the options Table 11-1 for the back-end IMAP server(s):
Table 11-1 Configuration Options for Back-End IMAP Server(s)
Unified Configuration Option Description base.proxyadminpass
Default store administrator password. (Restart of HTTP service required and restart of IMAP service required.)
Syntax: string
Default: admin.password
base.proxyimapport
Default IMAP port number for backend store servers. (Restart of HTTP service required and restart of IMAP service required.)
Syntax: integer
Default: 143
base.proxyadmin
Default back-end store administrator login name. (Restart of HTTP service required and restart of IMAP service required.)
Syntax: string
Default: admin
The Webmail Server can communicate with multiple back-end IMAP servers. If the IMAP servers use different values for these options, you must set individual values for each host, as shown in Table 11-2:
Table 11-2 Individual Configuration Values for Hosts
Unified Configuration Option | Description |
---|---|
proxy:hostname.admin proxy:hostname.adminpass proxy.hostname.imapport |
Controls aspects of proxy connection authentication and port and hosts. Note that since such options are set under a named proxy group, where the group name is a host name. |
where hostname is the name of the host on which each back-end IMAP server is running.
Note:
In general in Unified Configuration, for proxy-related options there should be two scopes for the same option:
-
base.option is the global scope.
-
proxy:hostname.option is the host-specific scope.
Currently, an error in Unified Configuration causes the same option to have two different names depending on the scope. Thus, base.proxyimapport is equivalent to proxy:hostname.imapport, base.proxyimapport is equivalent to proxy:hostname.imapport, and base.proxyimapadminpass is equivalent to proxy:hostname.imapadminpass. In addition, there is no host-specific form for base.proxyimapssl. It is a single global setting.
Configuring Oracle Communications Messaging Server Individual Ports
When multiple instances of the Messaging Server are installed on one host, they are initially configured to use the same ports. If you run both instances of the product simultaneously, the ports conflict.
To avoid conflicts, configure the ports for additional instances of the product so that they differ. (The initial instance can retain the original port settings as long as other instances are modified so that port numbers aren't re-used.)
Messaging Server can change the ports for the following processes:
-
SMTP
-
IMAP
-
IMAP SSL
-
POP
-
POP over SSL
-
HTTPD
-
ENS
-
job_controller
-
watcher
The SSL versions of the ports must also be unique between instances. There may be additional ports to reconfigure that are not listed here, such as SMTP SUBMIT.
To look for MTA-related processes, you can use the following techniques:
-
In Unified Configuration:
msconfigmsconfig > show *port*
In addition, you can identify ports by taking these actions:
-
See Table 9-1 for information on Default Port Numbers.
-
See configuring POP, IMAP, and HTTP services in the Messaging Server System Administrator's Guide.
-
You can grep for the word “port" in the masterconfig file (lib/config.meta).
-
Query the following options as shown in Table 11-3:
Table 11-3 Port Options
Service Unified Configuration Option Legacy Configuration configutil Option Default Value watcher
watcher.port
local.watcher.port
49994
metermaid
metermaid.port
metermaid.config.port
63837
IMAP
imap.port
service.imap.port
143
IMAP SSL
imap.sslport
service.imap.sslport
993
POP
pop.port
service.pop.port
110
POP over SSL
pop.sslport
service.pop.sslport
995
Webmail
http.port
service.http.port
80
Webmail SSL
http.sslport
service.http.sslport
443
ens
notifytarget:name.ensport
local.store.notifyplugin.ensport
7997
jmq
notifytarget:name.jmqport
local.store.notifyplugin.jmqport
7676
Configuring an Oracle Communications Messaging Server Host to be Multi-Homed
When you install multiple instances of Messaging Server on the same host, the different product instances use the same ports. If you run both instances of Messaging Server simultaneously, the ports conflict.
This information describes how to sue a different IP address for each installation and configure the host to be multi-homed (accepting multiple IP addresses).
This section includes the following topics:
To Change the IP Address for Each Installation
-
Run the HAConfig.rcp recipe. You must configure each installation to use a specific IP address, since the out-of-the-box default is to respond to any IP address (INADDR_ANY).
Note:
The ENS service needs a separate step to change the IP address it responds to. A workaround is to either disable the ENS server for one of the installations (Unified Configuration uses ens.enable, legacy configuration uses local.ens.enable), or to change the port used by the ENS server. If you don't do this, one of the ENS servers does not start up. This may not be a huge issue at this time because the other ENS server handles the requests.
To Configure the Host to be Multi-Homed
To configure a host to be multi-homed, see the Oracle Solaris documentation.
To Configure Multiple Addresses Per Interface
To configure multiple addresses per interface, see the Oracle Solaris documentation.
Multi-Home Example
The following example creates a multi-home on the host myhost.
-
Create the new interface:
ifconfig -a lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 10.1.110.114 netmask ffffff80 broadcast 10.1.110.127 ether 0:c:f1:8e:fb:4 ifconfig e1000g0:1 plumb ifconfig -a lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 10.1.110.114 netmask ffffff80 broadcast 10.1.110.127 ether 0:c:f1:8e:fb:4 e1000g0:1: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 0.0.0.0 netmask 0 ifconfig e1000g0:1 10.1.110.16 up
-
Set the IP address for the Messaging Server on the alternate root (on /var/tmp/altroot/opt/sun/comms/messaging64 in the following examples):
Unified Configuration example:
cd /var/tmp/altroot/opt/sun/comms/messaging64/bin msconfig run /opt/sun/comms/messaging64/lib/recipes/HAConfig.rcp Logical HA IP address of the cluster: 10.1.110.16
Legacy configuration example:
cd /var/tmp/altroot/opt/sun/comms/messaging64/bin msconfig run HAConfig.rcp Please specify the IP address assigned to the HA logical host name. Use dotted decimal form, a.b.c.d Logical IP address: 10.1.110.16 Please specify the path to the top level directory in which Messaging Server is installed. Messaging Server server root: /var/tmp/altroot/opt/sun/comms/messaging64 The Messaging Server server root directory does not contain any slapd-* subdirectories. Skipping configuration of LDAP servers. Logical IP address: 10.1.110.16 Messaging Server server root: /var/tmp/altroot/opt/sun/comms/messaging64 Do you wish to change any of the above choices (yes/no) [no]? Updating the file /var/tmp/altroot/opt/sun/comms/messaging64/config/dispatcher.cnf Updating the file /var/tmp/altroot/opt/sun/comms/messaging64/config/job_controller.cnf Setting the service.listenaddr configutil option Setting the service.http.smtphost configutil option Setting the local.watcher.enable configutil option Setting the local.autorestart configutil option Setting the metermaid.config.listenaddr configutil option Setting the metermaid.config.serverhost configutil option Setting the local.ens.port configutil option Configuration successfully updated
-
Do the same for the Messaging Server:
Unified Configuration:
cd /opt/sun/comms/messaging64/bin msconfig run HAConfig.rcp Please specify the IP address assigned to the HA logical host name. Use dotted decimal form, a.b.c.d Logical IP address: 10.1.110.114 Please specify the path to the top level directory in which Messaging Server is installed. Messaging Server server root: /opt/sun/comms/messaging64 The Messaging Server server root directory does not contain any slapd-* subdirectories. Skipping configuration of LDAP servers. Logical IP address: 10.1.110.114 Messaging Server server root: /opt/sun/comms/messaging64 Do you wish to change any of the above choices (yes/no) [no]? Updating the file /opt/sun/comms/messaging64/config/dispatcher.cnf Updating the file /opt/sun/comms/messaging64/config/job_controller.cnf Setting the base.listenaddr msconfig option Setting the http.smtphost msconfig option Setting the watcher.enable msconfig option Setting the base.autorestart.enable msconfig option Setting the metermaid.listenaddr msconfig option Setting the metermaid_client.server_host msconfig option Setting the ens.port msconfig option Configuration successfully updated
Legacy configuration:
cd /opt/sun/comms/messaging64/bin msconfig run HAConfig.rcp Please specify the IP address assigned to the HA logical host name. Use dotted decimal form, a.b.c.d Logical IP address: 10.1.110.114 Please specify the path to the top level directory in which Messaging Server is installed. Messaging Server server root: /opt/sun/comms/messaging64 The Messaging Server server root directory does not contain any slapd-* subdirectories. Skipping configuration of LDAP servers. Logical IP address: 10.1.110.114 Messaging Server server root: /opt/sun/comms/messaging64 Do you wish to change any of the above choices (yes/no) [no]? Updating the file /opt/sun/comms/messaging64/config/dispatcher.cnf Updating the file /opt/sun/comms/messaging64/config/job_controller.cnf Setting the service.listenaddr configutil parameter Setting the service.http.smtphost configutil option Setting the local.watcher.enable configutil option Setting the local.autorestart configutil option Setting the metermaid.config.listenaddr configutil options Setting the metermaid.config.serverhost configutil options Setting the local.ens.port configutil option Configuration successfully updated
-
Disable the ENS Server on one of the installation by setting ens.enable (Unified Configuration) or local.ens.enable (legacy configuration) to 0:
Unified Configuration:
msconfig -o ens.enable -v 0
Legacy configuration:
configutil -o local.ens.enable -v 0
-
Configure the netmask and broadcast on the new IP address:
ifconfig e1000g0:1 down ifconfig e1000g0:1 netmask 0xffffff80 ifconfig e1000g0:1 e1000g0:1: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 10.1.110.16 netmask ffffff80 broadcast 10.255.255.255 ifconfig e1000g0:1 broadcast 10.1.110.127 ifconfig -a lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 10.1.110.114 netmask ffffff80 broadcast 10.1.110.127 ether 0:c:f1:8e:fb:4 e1000g0:1: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 10.1.110.16 netmask ffffff80 broadcast 10.1.110.127 ifconfig e1000g0:1 up
-
Edit /etc/hosts to add the new IP address 10.1.110.16 to it:
cat /etc/hosts 127.0.0.1 localhost 10.1.110.114 myhost.west.example.com myhost loghost 10.1.110.4 elegit.west.example.com multi-home - second IP address on ethernet port 10.1.110.16 myhost2.west.example.com myhost2