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>
This configuration guide provides a complete foundation—extend it with FBL loops, custom bounce scripts, and multi-server clusters as needed. powermta configuration guide
<source 0.0.0.0/0> auth-user myuser mypass require-auth yes </source> Better: restrict injection to localhost or a specific internal IP. Use domain stanzas to tune retries, timeouts, and throttling per recipient domain. pmta status | File | Purpose | |------|---------|
<virtual-mta ip1> source-ip 192.0.2.1 max-smtp-out 5 max-msg-rate 500/h </virtual-mta> <virtual-mta ip2> source-ip 192.0.2.2 max-smtp-out 10 max-msg-rate 1000/h </virtual-mta> Use domain stanzas to tune retries, timeouts, and