On 2021-01-06 Burn Zero wrote:
> I need to restrict outbound email to the internet by client IP. i.e.
> if an IP is in a blocked list, it should only be allowed to be sent to
> local domains. Is this possible? Please advise.
>
> I read
http://www.postfix.org/RESTRICTION_CLASS_README.html but it is
> only using the usernames and not the IP address.
Using check_client_access instead of check_sender_access should do what
you want:
----8<----
# /etc/postfix/main.cf
...
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
...
check_client_access cidr:/etc/postfix/restricted_clients.cidr
...
smtpd_restriction_classes = local_only
local_only =
check_recipient_access hash:/etc/postfix/local_domains
reject
...
---->8----
----8<----
# /etc/postfix/restricted_clients.cidr
192.168.23.42 local_only
192.168.17.0/24 local_only
...
---->8----
----8<----
# /etc/postfix/local_domains
foo.example.org OK
bar.example.org OK
...
---->8----
Regards
Ansgar Wiechers
--
"All vulnerabilities deserve a public fear period prior to patches
becoming available."
--Jason Coombs on Bugtraq