1. Introduction PowerMTA (PMTA) is a high-performance MTA (Mail Transfer Agent) designed for large-scale email delivery. It is optimized for volume, deliverability, and control over sending patterns. This guide walks through a full configuration from scratch. 2. Installation Overview While OS-specific steps vary, typical installation involves:
pmta status | File | Purpose | |------|---------| | /etc/pmta/config | Main configuration | | /etc/pmta/license | License key | | /etc/pmta/vmta | Virtual MTA definitions | | /etc/pmta/pmta.conf (alternative) | Some versions use this | 4. Basic Configuration Skeleton ( /etc/pmta/config ) # Global settings <source 0.0.0.0/0> always-allow-relay yes process-x-forwarded-for no require-auth no default-virtual-mta main </source> Pickup from local submission <source 127.0.0.1> process-x-forwarded-for yes default-virtual-mta main </source> Main virtual MTA (delivery) <virtual-mta main> queue-type FIFO max-smtp-out 100 max-msg-rate 1000/m </virtual-mta> Domain-specific delivery <domain *> max-smtp-out 20 max-msg-rate 500/h max-msg-per-connection 10 use-starttls yes require-starttls no </domain> Logging <acct-file /var/log/pmta/acct.csv> record job,vmta,domain,bytes,msgs,rcpts,status,dsn-status,orig-rcpts,time </acct-file> powermta configuration guide
pmta show queue pmta show stats pmta show vmta pmta show connections pmta show smtp-sessions Control sending across multiple dimensions: This guide walks through a full configuration from scratch
Assign VMTA in the injection source:
<source 127.0.0.1> return-path bounce@example.com </source> PowerMTA captures DSNs and can route bounces to a local script or mailbox. Basic Configuration Skeleton ( /etc/pmta/config ) # Global
<bounce-handler bounces@example.com> command /usr/local/bin/process-bounce.php max-rcpts 100 </bounce-handler> Add to source:
This configuration guide provides a complete foundation—extend it with FBL loops, custom bounce scripts, and multi-server clusters as needed.