如果后端存储要通过 LMTP 接收邮件,则它们不需要 MTA。这意味着它们没有作业控制器,并且没有与 MTA 相关联的任何地址重写机制。但是,它们确实仍需要分发程序和简单的 MTA 配置。特别是需要 dispatcher.cnf 文件和 mappings 文件,这两个文件将构成 MTA 配置的唯一重要部分。
dispatcher.cnf 文件必须包含以下内容:
! rfc 2033 LMTP server - store ! [SERVICE=LMTPSS] PORT=225 IMAGE=IMTA_BIN:tcp_lmtp_server LOGFILE=IMTA_LOG:tcp_lmtpss_server.log PARAMETER=CHANNEL=tcp_lmtpss STACKSIZE=2048000 ! Uncomment the following line and set INTERFACE_ADDRESS to an ! appropriate host IP (dotted quad) if the dispatcher needs to ! listen on a specific interface (e.g. in a HA environment). ! INTERFACE_ADDRESS=! ! rfc 2033 LMTP server - native ! [SERVICE=LMTPSN] PORT=226 IMAGE=IMTA_BIN:tcp_lmtpn_server LOGFILE=IMTA_LOG:tcp_lmtpsn_server.log PARAMETER=CHANNEL=tcp_lmtpsn STACKSIZE=2048000 ! Uncomment the following line and set INTERFACE_ADDRESS to an ! appropriate host IP (dotted quad) if the dispatcher needs to !listen on a specific interface (e.g. in a HA environment). !INTERFACE_ADDRESS= |
请注意,默认情况下,dispatcher.cnf 文件中的 LMTP 服务被注释掉。您必须取消其注释才能使 LMTP 工作。
还可以设置 MAX_CONNS、MAX_PROCS、MAX_LIFE_CONNS 和 MAX_LIFE_TIME 的常规分发程序选项,但是需要针对您的硬件相应地进行设置。
PORT_ACCESS 映射很重要。后端服务器的 LMTP 实现旨在用作 Sun Java System Messaging Server 中继和后端存储之间的专用协议。您必须使用 PORT_ACCESS 映射以确保只有此类中继可以连接到这些服务。您的映射文件应类似于此:
PORT_ACCESS TCP|*|225|1.2.3.4|* $Y TCP|*|226|1.2.3.4|* $Y TCP|*|225|1.2.3.5|* $Y TCP|*|226|1.2.3.5|* $Y TCP|*|*|*|* $N500$ Do$ not$ connect$ to$ this$ machine |
您应该用连接到后端存储的网络中的中继 IP 地址替换此处在 PORT_ACCESS 映射表中指定的示例 IP 地址。
必须有一个 imta.cnf 文件,但是它只用于完成配置。最小的 imta.cnf 文件由以下通道定义组成:
! tcp_lmtpss (LMTP server - store) tcp_lmtpss lmtp tcp_lmtpss-daemon ! ! tcp_lmtpsn (LMTP server - native) tcp_lmtpsn lmtp tcp_lmtpsn-daemon
请注意,默认情况下,LMTP 通道定义已被注释掉。如果需要 LMTP 工作,必须取消其注释。