Skip to main content
Version: 1.2

Deployment layouts

MSH Zimbra Rules is made of three services. They all ship in the same package, msh-zr-<VERSION>.tgz, so every host gets the same files and you choose which services to enable.

ServiceUnitPortWhat it doesWhere it runs
Web adminmsh-zr-web.service7081 (HTTP or HTTPS)The administrator panel. Holds the rules and settings, syncs users and groups from the Zimbra LDAP, owns the license and sends everything to the servers.The Zimbra server on a single server, a web admin server of its own with several MTA servers
Nodemsh-zr-node.service7082 (HTTPS)Receives the rules and settings from the web admin and keeps a local copy for the milter. Reports the milter's status and message history back.Every MTA host
Miltermsh-zr-milter.service7080Processes the mail Postfix hands it and applies the rules.Every MTA host

The web admin connects to the node on each MTA host. Nothing on an MTA host connects to the web admin, and the milter only talks to its own node through local files. Each MTA keeps filtering mail with the last rules it received when the web admin is stopped or unreachable.

Single server​

Everything runs on one host: one Zimbra server with its MTA and LDAP, and all three MSH Zimbra Rules services.

Single server: the Zimbra MTA hands mail to msh-zr-milter on localhost:7080. msh-zr-web sends the rules to msh-zr-node over HTTPS on localhost:7082, the node keeps a local copy the milter reads, and the web admin syncs users and groups from the Zimbra LDAP. Administrators use the web admin on port 7081.

The web admin finds the node on the same host by itself and lists it on the Servers page as This server, so there is nothing to connect by hand.

Install with Single server and Zimbra configuration.

Multiple servers​

A Zimbra installation with two or more MTA servers. Every MTA server gets its own node and milter. The web admin runs on a server of its own and manages them all.

Multiple servers: every MTA server runs the Zimbra MTA, msh-zr-milter and msh-zr-node. msh-zr-web runs on a separate web admin server, sends the rules to the node on every MTA server on port 7082 and syncs users and groups from the Zimbra LDAP on port 389. Administrators use the web admin on port 7081.

  • The web admin server runs only the web admin. See Web admin server.
  • Every MTA server runs only the node and the milter. See MTA servers.
  • The web admin reaches each MTA server on port 7082, and you add each one on the Servers page with the token from that server.
  • The Zimbra LDAP is only read by the web admin, to sync users and groups. If your Zimbra installation has several LDAP servers (a master and replicas), connect the Directory service to one of them, the master or a replica that the web admin server can reach.
  • Rules and settings are edited once, in the web admin, and sent to every MTA server. Message history shows the messages of all servers together, and message-count conditions count the messages of all servers together.

Ports and firewall​

FromToPortNeeded for
Administrators' browsersWeb admin serverTCP 7081The administrator panel
Web admin serverEvery MTA serverTCP 7082Sending rules and settings, reading status and message history
Web admin serverZimbra LDAPTCP 389 (or your LDAP port)Syncing users and groups (Directory service)
Zimbra MTAMilter on the same hostTCP 7080, localhostMail processing

The milter listens on all interfaces, but only the MTA on the same host needs it. Do not open port 7080 to the network. Open 7082 only to the web admin server, and 7081 only to administrators.

What's next​

  • Requirements - operating system, Java and memory for each host
  • Install - the installation steps for each layout