I've tried just about every combination of these configs from the docs: append_dot_mydomain (default: Postfix ≥ 3.0: no, Postfix < 3.0: yes)
With locally submitted mail, append the string ".$mydomain<https://www.postfix.org/postconf.5.html#mydomain>" to addresses that have no ".domain" information. With remotely submitted mail, append the string ".$remote_header_rewrite_domain<https://www.postfix.org/postconf.5.html#remote_header_rewrite_domain>" instead. Note 1: this feature is enabled by default. If disabled, users will not be able to send mail to "user@partialdomainname" but will have to specify full domain names instead. Note 2: with Postfix version 2.2, message header address rewriting happens only when one of the following conditions is true: * The message is received with the Postfix sendmail(1)<https://www.postfix.org/sendmail.1.html> command, * The message is received from a network client that matches $local_header_rewrite_clients<https://www.postfix.org/postconf.5.html#local_header_rewrite_clients>, * The message is received from the network, and the remote_header_rewrite_domain<https://www.postfix.org/postconf.5.html#remote_header_rewrite_domain> parameter specifies a non-empty value. To get the behavior before Postfix version 2.2, specify "local_header_rewrite_clients<https://www.postfix.org/postconf.5.html#local_header_rewrite_clients> = static<https://www.postfix.org/DATABASE_README.html#types>:all". but none of them are seeming to work. ii postfix 3.6.4-1ubuntu1 arm64 High-performance mail transport agent - alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = yes biff = no compatibility_level = 3.6 debug_peer_list = 10.104.87.249 html_directory = /usr/share/doc/postfix/html inet_interfaces = all inet_protocols = all mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 mydestination = $myhostname, postfix-warming-c, localhost.localdomain, , localhost myhostname = postfix-warming-c.us-east-2.compute.internal mynetworks = 127.0.0.0/8, 10.20.0.0/22, 10.20.4.0/22, 10.20.8.0/22, 10.20.32.0/19, 10.20.64.0/19, 10.20.96.0/19, 10.20.128.0/22, 10.20.132.0/22, 10.20.136.0/22, 10.104.80.0/24, 10.104.81.0/24, 10.104.82.0/24, 10.104.84.0/23, 10.104.86.0/23, 10.104.88.0/23, 10.104.90.0/24, 10.104.91.0/24, 10.104.92.0/24, 10.108.0.0/22, 10.108.4.0/22, 10.108.8.0/22, 10.108.32.0/19, 10.108.64.0/19, 10.108.96.0/19, 10.108.128.0/22, 10.108.132.0/22, 10.108.136.0/22, 10.159.0.0/27, 10.159.0.32/27, 10.159.0.64/27, 10.159.0.128/25, 10.159.1.0/25, 10.159.1.128/25, 10.159.2.0/25, 10.159.2.128/25, 10.159.3.0/25, 10.159.3.128/27, 10.159.3.160/27, 10.159.3.192/27 readme_directory = /usr/share/doc/postfix recipient_delimiter = + relayhost = remote_header_rewrite_domain = blackhole.local smtp_tls_CApath = /etc/ssl/certs smtp_tls_security_level = may smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_security_level = may transport_maps = hash:/etc/postfix/transport - helo me 250 postfix-warming-c.us-east-2.compute.internal mail from:<sean.hennes...@mercurygate.com> 250 2.1.0 Ok rcpt to:<blah> 550 5.1.1 <blah>: Recipient address rejected: User unknown in local recipient table 421 4.4.2 postfix-warming-c.us-east-2.compute.internal Error: timeout exceeded Connection closed by foreign host. - If I turn on local_recipient_maps = then I don't get the 550, but then postfix tries to deliver mail to blah@$myhostname. 220 postfix-warming-c.us-east-2.compute.internal ESMTP Postfix (Ubuntu) helo me 250 postfix-warming-c.us-east-2.compute.internal mail from:<sean.hennes...@mercurygate.com> 250 2.1.0 Ok rcpt to:<blah> 250 2.1.5 Ok data 354 End data with <CR><LF>.<CR><LF> . 250 2.0.0 Ok: queued as 2AF003FA91 Jan 29 07:10:51 postfix-warming-c postfix/smtpd[15796]: input attribute value: 2AF003FA91 Jan 29 07:10:51 postfix-warming-c postfix/smtpd[15796]: 2AF003FA91: client=ip-10-104-87-249.us-east-2.compute.internal[10.104.87.249] Jan 29 07:10:53 postfix-warming-c postfix/cleanup[15780]: 2AF003FA91: message-id=<20230129071051.2af003f...@postfix-warming-c.us-east-2.compute.internal> Jan 29 07:10:53 postfix-warming-c postfix/qmgr[15772]: 2AF003FA91: from=<sean.hennes...@mercurygate.com>, size=386, nrcpt=1 (queue active) Jan 29 07:10:53 postfix-warming-c postfix/smtpd[15796]: > ip-10-104-87-249.us-east-2.compute.internal[10.104.87.249]: 250 2.0.0 Ok: queued as 2AF003FA91 Jan 29 07:10:53 postfix-warming-c postfix/local[15782]: 2AF003FA91: to=<b...@postfix-warming-c.us-east-2.compute.internal>, orig_to=<blah>, relay=local, delay=10, delays=10/0/0/0, dsn=5.1.1, status=bounced (unknown user: "blah") Jan 29 07:10:53 postfix-warming-c postfix/bounce[15784]: 2AF003FA91: sender non-delivery notification: 6533F3FAB5 Jan 29 07:10:53 postfix-warming-c postfix/qmgr[15772]: 2AF003FA91: removed What I'm looking for is a way to force a rewrite of addresses that don't have an @domain that are coming into this machine from other computers. I'm trying to overcome an application design issue by swallowing emails w/ no domain info on this box, without sending any errors back to the client. I was hoping I could set up to add the blackhole.local and the discard that in the transports. Sean