Thanks Noel. Let me know if I'm missing anything. This server is
supposed to act just as a relay.


postconf -n
alias_maps =
anvil_rate_time_unit = 180s
body_checks = regexp:/etc/postfix/body_checks
bounce_size_limit = 1500
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
default_destination_concurrency_limit = 10
disable_vrfy_command = yes
header_checks = regexp:/etc/postfix/header_checks
html_directory = /var/www/html/postfix
in_flow_delay = 0
inet_protocols = all
initial_destination_concurrency = 10
local_destination_concurrency_limit = 10
local_recipient_maps =
local_transport = error:local mail delivery disabled
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/local/man
maximal_backoff_time = 90m
maximal_queue_lifetime = 5d
message_size_limit = 14500000
mime_header_checks = $header_checks
minimal_backoff_time = 45m
mydestination =
mydomain = mx.example.net
myhostname = mx.example.net
mynetworks = 127.0.0.0/16
myorigin = example.net
nested_header_checks =
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
queue_run_delay = 120s
readme_directory = /var/www/html/postfix
relay_domains = mysql:/etc/postfix/sql/relay_transport_map.conf
relay_recipient_maps = mysql:/etc/postfix/sql/relay_recipient_map.conf
relocated_maps = hash:/etc/postfix/relocated
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtp_connect_timeout = 45s
smtpd_data_restrictions = reject_multi_recipient_bounce reject_unauth_pipelining
smtpd_delay_reject = yes
smtpd_error_sleep_time = 0
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks   reject_non_fqdn_hostname
  reject_invalid_hostname
smtpd_recipient_restrictions = reject_invalid_hostname
reject_non_fqdn_hostname   reject_non_fqdn_sender
reject_non_fqdn_recipient   reject_unknown_sender_domain
reject_unknown_recipient_domain   reject_unlisted_recipient
check_policy_service inet:127.0.0.1:10031   permit_mynetworks
reject_unauth_destination   check_recipient_access
hash:/etc/postfix/whitelist   reject_rbl_client zen.spamhaus.org
reject_rbl_client b.barracudacentral.org   reject_rbl_client
bl.spamcop.net   check_policy_service inet:127.0.0.1:10023
smtpd_reject_unlisted_sender = yes
smtpd_sasl_auth_enable = no
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_tls_CAfile = /etc/postfix/certs/ca-bundle.crt
smtpd_tls_cert_file = /etc/postfix/certs/mx.example.net.cert
smtpd_tls_key_file = /etc/postfix/certs/mx.example.net.key
smtpd_tls_loglevel = 0
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache
smtpd_tls_session_cache_timeout = 7200s
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
transport_maps = mysql:/etc/postfix/sql/relay_transport_map.conf
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/domains/localhost
hash:/etc/postfix/domains/example.com
hash:/etc/postfix/domains/example.net
hash:/etc/postfix/domains/example.org



/etc/postfix/sql/relay_transport_map.conf
user           = user
password       = password
dbname         = postfix
table          = relay_transport_map
select_field   = y
where_field    = x
query          =
 SELECT y
 FROM relay_transport_map
 WHERE x='%s'

Example:

mysql> SELECT *
    -> FROM  `relay_transport_map`
    -> WHERE  `x`
    -> REGEXP CONVERT( _utf8 'enduser.com'
    -> USING latin1 )
    -> COLLATE latin1_swedish_ci
    -> LIMIT 0 , 30
    -> \g
+--------+----------------------------+----------------+
| x      | y                          | ip             |
+--------+----------------------------+----------------+
| enduser.com | cpanel:[x.x.x.x]:26 | x.x.x.x |
+--------+----------------------------+----------------+

sql/relay_recipient_map.conf
user           = user
password       = password
dbname         = postfix
query          =
 SELECT y
 FROM relay_recipient_map
 WHERE x='%s'


Example:

    -> SELECT *
    -> FROM  `relay_recipient_map`
    -> WHERE  `x`
    -> REGEXP CONVERT( _utf8 'enduser.com'
    -> USING latin1 )
    -> COLLATE latin1_swedish_ci
    -> LIMIT 0 , 30
    -> \g

+----------------------------------+------+----------------+
| x                                | y    | ip             |
+----------------------------------+------+----------------+
| exam...@enduser.com     | OK   | x.x.x.x |

Reply via email to