HAProxy āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻ“āĻĒā§‡āĻ¨-āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡ āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚

āĻŦāĻĄāĻŧ āĻ†āĻ•āĻžāĻ°ā§‡āĻ° āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻ“āĻāĻ¸āĻ‡ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ•āĻžāĻœāĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻšāĻ˛ āĻ¸āĻ āĻŋāĻ• āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚āĨ¤ āĻāĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻšāĻ¨āĻļā§€āĻ˛āĻ¤āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¯āĻŧ āĻ¤āĻž āĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚ āĻ›āĻžāĻĄāĻŧāĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻŸāĻŋāĻ° āĻāĻ•āĻ‡ āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻž āĻ…āĻ¸āĻŽā§āĻ­āĻŦāĨ¤ āĻāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ - āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻāĻŦāĻ‚ āĻšāĻžāĻ°ā§āĻĄāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ¯āĻž āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°ā§‡āĨ¤ āĻ¤āĻžāĻĻā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻŦā§‡āĻļ āĻ†āĻĻāĻŋāĻŽ āĻ†āĻ›ā§‡, āĻ¯ā§‡āĻŽāĻ¨ āĻ°āĻžāĻ‰āĻ¨ā§āĻĄāĻ°āĻŦāĻŋāĻ¨, āĻ¯āĻž āĻ•ā§‡āĻŦāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻžāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻĒāĻžāĻ āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ†āĻ°āĻ“ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ HAProxy, āĻ¯āĻž āĻ‰āĻšā§āĻš-āĻ˛ā§‹āĻĄ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻŋāĻ‚ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ¤ā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻ•āĻ­āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻĻā§‡āĻ–ā§‡ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ• āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ†āĻĒāĻ¨āĻŋ HAProxy āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻžāĻ° āĻāĻŦāĻ‚ Zimbra OSE āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

HAProxy āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻ“āĻĒā§‡āĻ¨-āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡ āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻŸāĻžāĻ¸ā§āĻ•ā§‡āĻ° āĻļāĻ°ā§āĻ¤āĻžāĻŦāĻ˛ā§€ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻ“āĻāĻ¸āĻ‡ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĻā§āĻŸāĻŋ āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ, āĻĻā§āĻŸāĻŋ āĻāĻ˛āĻĄāĻŋāĻāĻĒāĻŋ āĻāĻŦāĻ‚ āĻāĻ˛āĻĄāĻŋāĻāĻĒāĻŋ āĻ°ā§‡āĻĒā§āĻ˛āĻŋāĻ•āĻž āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ 1000āĻŸāĻŋ āĻŽā§‡āĻ˛āĻŦāĻ•ā§āĻ¸ āĻāĻŦāĻ‚ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻāĻŽāĻŸāĻŋāĻ āĻ¸āĻš āĻšāĻžāĻ°āĻŸāĻŋ āĻŽā§‡āĻ˛ āĻ¸ā§āĻŸā§‹āĻ°ā§‡āĻœ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¯ā§‡ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻŽā§‡āĻ˛ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ›āĻŋ, āĻāĻŸāĻŋ āĻ¤āĻŋāĻ¨ āĻ§āĻ°āĻŖā§‡āĻ° āĻŸā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ• āĻĒāĻžāĻŦā§‡ āĻ¯āĻžāĻ° āĻ­āĻžāĻ°āĻ¸āĻžāĻŽā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨: āĻ“āĻ¯āĻŧā§‡āĻŦ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ HTTP, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻ‡āĻŽā§‡āĻ˛ āĻĒāĻžāĻ āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ POP āĻāĻŦāĻ‚ SMTPā§ˇ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, HTTP āĻŸā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ• 192.168.0.57 āĻāĻŦāĻ‚ 192.168.0.58 IP āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻ¸āĻš āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¯āĻžāĻŦā§‡ āĻāĻŦāĻ‚ 192.168.0.77 āĻāĻŦāĻ‚ 192.168.0.78 IP āĻ āĻŋāĻ•āĻžāĻ¨āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ SMTP āĻŸā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ• MTA āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¯āĻžāĻŦā§‡ā§ˇ

āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻ‰āĻ˛ā§āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§‡, āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ¨āĻ­āĻžāĻŦā§‡ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž HAProxy āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦ, āĻ¯āĻž āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ 18.04 āĻšāĻžāĻ˛āĻŋāĻ¤ āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ‡āĻ¨āĻ—ā§āĻ°ā§‡āĻ¸ āĻ¨ā§‹āĻĄā§‡ āĻšāĻ˛āĻŦā§‡āĨ¤ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ‡ āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ sudo apt-get install haproxy. āĻāĻ° āĻĒāĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ /etc/default/haproxy āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§āĻ¨ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ=0 āĻ‰āĻĒāĻ° āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ=1. āĻāĻ–āĻ¨, āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ āĻ•āĻžāĻœ āĻ•āĻ°āĻ›ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡, āĻļā§āĻ§ā§ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ āĻĒā§āĻ°āĻŦā§‡āĻļ āĻ•āĻ°āĻžāĻ¨ āĻ¸ā§‡āĻŦāĻž āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ. āĻāĻ‡ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻŸāĻŋ āĻšāĻ˛āĻŽāĻžāĻ¨ āĻĨāĻžāĻ•āĻ˛ā§‡, āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āĻ° āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻāĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻšāĻŦā§‡āĨ¤

HAProxy-āĻāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻšāĻ˛ āĻ¯ā§‡ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĻ°ā§‚āĻĒā§‡ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ¯ā§‹āĻ—āĻ•āĻžāĻ°ā§€ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ†āĻ‡āĻĒāĻŋ āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻĒā§āĻ°ā§‡āĻ°āĻŖ āĻ•āĻ°ā§‡ āĻ¨āĻž, āĻāĻŸāĻŋ āĻ¨āĻŋāĻœā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ āĻāĻŽāĻ¨ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻ•ā§āĻ°āĻŽāĻŖāĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻĒāĻžāĻ āĻžāĻ¨ā§‹ āĻ‡āĻŽā§‡āĻ˛āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ•āĻžāĻ˛ā§‹ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻžāĻ¯āĻŧ āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ‡āĻĒāĻŋ āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ /opt/zimbra/common/conf/master.cf.in āĻĒā§‹āĻ¸ā§āĻŸāĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻš āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻāĻŦāĻ‚ āĻāĻ¤ā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ˛āĻžāĻ‡āĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§āĻ¨:

26      inet  n       -       n       -       1       postscreen
        -o postscreen_upstream_proxy_protocol=haproxy
 
466    inet  n       -       n       -       -       smtpd
%%uncomment SERVICE:opendkim%%  -o content_filter=scan:[%%zimbraLocalBindAddress%%]:10030
        -o smtpd_tls_wrappermode=yes
        -o smtpd_sasl_auth_enable=yes
        -o smtpd_client_restrictions=
        -o smtpd_data_restrictions=
        -o smtpd_helo_restrictions=
        -o smtpd_recipient_restrictions=
        -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
        -o syslog_name=postfix/smtps
        -o milter_macro_daemon_name=ORIGINATING
        -o smtpd_upstream_proxy_protocol=haproxy
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_filter=[%%zimbraLocalBindAddress%%]:10027
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_options=speed_adjust
 
588 inet n      -       n       -       -       smtpd
%%uncomment SERVICE:opendkim%%  -o content_filter=scan:[%%zimbraLocalBindAddress%%]:10030
        -o smtpd_etrn_restrictions=reject
        -o smtpd_sasl_auth_enable=%%zimbraMtaSaslAuthEnable%%
        -o smtpd_tls_security_level=%%zimbraMtaTlsSecurityLevel%%
        -o smtpd_client_restrictions=permit_sasl_authenticated,reject
        -o smtpd_data_restrictions=
        -o smtpd_helo_restrictions=
        -o smtpd_recipient_restrictions=
        -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
        -o syslog_name=postfix/submission
        -o milter_macro_daemon_name=ORIGINATING
        -o smtpd_upstream_proxy_protocol=haproxy
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_filter=[%%zimbraLocalBindAddress%%]:10027
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_options=speed_adjust

āĻāĻ‡ āĻ•āĻžāĻ°āĻŖā§‡, āĻ†āĻŽāĻ°āĻž 26, 466 āĻāĻŦāĻ‚ 588 āĻĒā§‹āĻ°ā§āĻŸ āĻ–ā§āĻ˛āĻŦ, āĻ¯āĻž HAProxy āĻĨā§‡āĻ•ā§‡ āĻ‡āĻ¨āĻ•āĻžāĻŽāĻŋāĻ‚ āĻŸā§āĻ°āĻžāĻĢāĻŋāĻ• āĻĒāĻžāĻŦā§‡āĨ¤ āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ zmmtactl āĻ°āĻŋāĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻĒā§‹āĻ¸ā§āĻŸāĻĢāĻŋāĻ•ā§āĻ¸ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤

āĻāĻ° āĻĒāĻ°ā§‡, āĻ†āĻ¸ā§āĻ¨ HAProxy āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž āĻļā§āĻ°ā§ āĻ•āĻ°āĻŋāĨ¤ āĻāĻŸāĻŋ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻžāĻ•āĻ†āĻĒ āĻ•āĻĒāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨ cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak. āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻŸā§‡āĻ•ā§āĻ¸āĻŸ āĻāĻĄāĻŋāĻŸāĻ°ā§‡ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ–ā§āĻ˛ā§āĻ¨ /etc/haproxy/haproxy.cfg āĻāĻŦāĻ‚ āĻ§āĻžāĻĒā§‡ āĻ§āĻžāĻĒā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻļā§āĻ°ā§ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ˛āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻŦā§‡ āĻ¯āĻž āĻ˛āĻ— āĻ¨ā§‡āĻ¯āĻŧ, āĻāĻ•āĻ¯ā§‹āĻ—ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§‡, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻ—ā§‹āĻˇā§āĻ ā§€ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°ā§‡ āĻ¯ā§‡āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ—āĻ¤ āĻšāĻŦā§‡āĨ¤

global
    user daemon
    group daemon
    daemon
    log 127.0.0.1 daemon
    maxconn 5000
    chroot /var/lib/haproxy

5000 āĻāĻ•āĻ¯ā§‹āĻ—ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻšāĻŋāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖā§‡ āĻšāĻžāĻœāĻŋāĻ°. āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° 4000āĻŸāĻŋ āĻŽā§‡āĻ˛āĻŦāĻ•ā§āĻ¸ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸ā§‡āĻ‡ āĻ¸āĻŽā§āĻ­āĻžāĻŦāĻ¨āĻž āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯ā§‡ āĻ¤āĻžāĻ°āĻž āĻ¸āĻŦāĻžāĻ‡ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ•āĻžāĻœā§‡āĻ° āĻ‡āĻŽā§‡āĻ˛ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ•āĻ°āĻŦā§‡ā§ˇ āĻ‰āĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻŦā§ƒāĻĻā§āĻ§āĻŋāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ›ā§‹āĻŸ āĻ°āĻŋāĻœāĻžāĻ°ā§āĻ­ āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

āĻāĻ–āĻ¨ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ˛āĻ• āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

defaults
        timeout client 1m
        log global
        mode tcp
        timeout server 1m
        timeout connect 5s

āĻāĻ‡ āĻŦā§āĻ˛āĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻāĻŦāĻ‚ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻŽā§‡āĻ¯āĻŧāĻžāĻĻ āĻļā§‡āĻˇ āĻšāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ˛ā§‡ āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§€āĻŽāĻž āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ HAProxy-āĻāĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻŽā§‹āĻĄāĻ“ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§‡āĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻžāĻ° āĻŸāĻŋāĻ¸āĻŋāĻĒāĻŋ āĻŽā§‹āĻĄā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻāĻŸāĻŋ āĻ•ā§‡āĻŦāĻ˛ āĻ¤āĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ¨āĻž āĻ•āĻ°ā§‡āĻ‡ āĻŸāĻŋāĻ¸āĻŋāĻĒāĻŋ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻŸāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°ā§‡āĻ°āĻŖ āĻ•āĻ°ā§‡āĨ¤

āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€āĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒā§‹āĻ°ā§āĻŸā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŦāĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¯āĻĻāĻŋ āĻĒā§‹āĻ°ā§āĻŸ 25 SMTP āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻāĻŦāĻ‚ āĻŽā§‡āĻ‡āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ¤ā§‡ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ MTAs-āĻ āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻž āĻ…āĻ°ā§āĻĨāĻĒā§‚āĻ°ā§āĻŖāĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ‚āĻ¯ā§‹āĻ—āĻŸāĻŋ āĻĒā§‹āĻ°ā§āĻŸ 80-āĻ āĻĨāĻžāĻ•ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ http āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¯āĻž āĻœāĻŋāĻŽāĻŦā§āĻ°āĻž āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋāĻ¤ā§‡ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§ˇ

āĻĒā§‹āĻ°ā§āĻŸ 25 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽ:

frontend smtp-25
bind *:27
default_backend backend-smtp-25
 
backend backend-smtp-25
server mta1 192.168.0.77:26 send-proxy
server mta2 192.168.0.78:26 send-proxy

āĻĒā§‹āĻ°ā§āĻŸ 465 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽ:

frontend smtp-465
bind *:467
default_backend backend-smtp-465

backend backend-smtp-465
server mta1 192.168.0.77:466 send-proxy
server mta2 192.168.0.78:466 send-proxy

āĻĒā§‹āĻ°ā§āĻŸ 587 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽ:

frontend smtp-587
bind *:589
default_backend backend-smtp-587
 
backend backend-smtp-587
server mail1 192.168.0.77:588 send-proxy
server mail2 192.168.0.78:588 send-proxy

āĻĒā§‹āĻ°ā§āĻŸ 80 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽ:

frontend http-80
bind    *:80
default_backend http-80
 
backend http-80
mode tcp
server zproxy1 192.168.0.57:80 check
server zproxy2 192.168.0.58:80 check

āĻĒā§‹āĻ°ā§āĻŸ 443 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽ:

frontend https
bind  *:443
default_backend https-443
 
backend https-443
mode tcp
server zproxy1 192.168.0.57:80 check
server zproxy2 192.168.0.58:80 check

āĻĻāĻ¯āĻŧāĻž āĻ•āĻ°ā§‡ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻŦā§‡āĻ¨ āĻ¯ā§‡ TCP āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻŸāĻ—ā§āĻ˛āĻŋ MTA-āĻ¤ā§‡ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻ āĻŋāĻ•āĻžāĻ¨āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻĒāĻžāĻļā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻĒāĻžāĻ āĻžāĻ¨-āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ. āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻĒā§‹āĻ¸ā§āĻŸāĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ā§‡ āĻĒā§‚āĻ°ā§āĻŦā§‡ āĻ•āĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡, āĻāĻ° āĻĒā§āĻ°ā§‡āĻ°āĻ•ā§‡āĻ° āĻ†āĻ¸āĻ˛ āĻ†āĻ‡āĻĒāĻŋ āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻŸāĻŋāĻ¸āĻŋāĻĒāĻŋ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĒāĻžāĻ āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧāĨ¤

āĻāĻ–āĻ¨ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ HAProxy āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋ āĻ°āĻŋāĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻļā§āĻ°ā§ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻœā§‡āĻ•ā§āĻ¸āĻŸā§āĻ°āĻžāĻ¸ āĻ¸ā§āĻ‡āĻŸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻĒāĻ¨āĻŋ āĻ‡-āĻŽā§‡āĻ‡āĻ˛ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻœā§‡āĻ•ā§āĻ¸āĻŸā§āĻ°āĻžāĻ¸ āĻāĻ•āĻžāĻ¤ā§‡āĻ°āĻŋāĻ¨āĻž āĻŸā§āĻ°āĻžāĻ¯āĻŧāĻžāĻ¨ā§āĻĄāĻžāĻĢāĻŋāĻ˛āĻŋāĻĻāĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ— āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ [āĻ‡āĻŽā§‡āĻ˛ āĻ¸ā§āĻ°āĻ•ā§āĻˇāĻŋāĻ¤]

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨