Здравствуйте! У меня проблема.
postfix является шлюзом для exchange. И должен принимать почту для двух доменов.
В итоге при моей текущей настройке вижу что он релеит почту куда угодно.
Как это побороть?
192.168.0.3 это эксченджvirtual_transport такой:
domain.ru smtp:[192.168.0.3]
domain2.ru smtp:[192.168.0.3]queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/db/postfix
mail_owner = postfix
default_privs = nobody
myhostname = mx.domain.ru
mydomain = domain.ru
myorigin = $mydomain
#mydestination = $myhostname
#relay_domains = $mydomain domain2.ru
relay_host =default_destination_concurrency_limit = 200
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhostlocal_recipient_maps =
#unknown_local_recipient_reject_code = 550
mynetworks = 192.168.0.3/32, 127.0.0.0/8
virtual_mailbox_domains = domain.ru domain2.ru
#virtual_mailbox_maps = ldap://usr/local/etc/postfix/ldap.cf
transport_maps = hash:/usr/local/etc/postfix/virtual_transport
in_flow_delay = 1s
fast_flush_domains = $relay_domains
#smtpd_sender_restrictions = check_sender_access
# regexp:/usr/local/etc/postfix/sender_access########################## ANTI-SPAM #########################################
invalid_hostname_reject_code = 550
non_fqdn_reject_code = 550
unknown_client_reject_code = 550
unknown_hostname_reject_code = 550
unverified_sender_reject_code = 550
strict_rfc821_envelopes = yes
disable_vrfy_command = yes
smtpd_client_restrictions = permit_mynetworks,
reject_rbl_client blackholes.mail-abuse.org,
reject_rbl_client dialups.mail-abuse.org,
reject_rbl_client dul.ru,
reject_rbl_client opm.blitzed.org,
reject_rbl_client sbl.spamhaus.org,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client dul.dnsbl.sorbs.net,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client dynablock.njabl.org,
reject_rbl_client combined.njabl.org,
reject_unknown_client,
reject_unknown_client_hostname
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks,
reject_invalid_helo_hostname,
reject_unknown_helo_hostname,check_helo_access hash:/usr/local/etc/postfix/helo_checks,
reject_non_fqdn_hostname
smtpd_sender_restrictions = reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unverified_sender,
check_sender_access hash:/usr/local/etc/postfix/sender_checks
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unauth_destination,
reject_rbl_client bl.spamcop.net,
reject_rbl_client zen.spamhaus.org
smtpd_data_restrictions = reject_unauth_pipelining,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unknown_sender_domain,
permit
readme_directory = /usr/local/share/doc/postfix
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/local/sbin/sendmail
html_directory = /usr/local/share/doc/postfix
setgid_group = maildrop
manpage_directory = /usr/local/man
newaliases_path = /usr/local/bin/newaliases
mailq_path = /usr/local/bin/mailq
> smtpd_sender_restrictions =Ну а в этой секции-то чего permit_mynetworks нет? Ну и чисто для информации - я у себя вот так указал:
mynetworks = cidr:/etc/postfix/network-table
Попробуй relay_domains = domain.ru domain2.ru
Собственно relay_domains определяет для каких доменов ты релей, и этот параметр используется в reject_unauth_destination
> Попробуй relay_domains = domain.ru domain2.ru
> Собственно relay_domains определяет для каких доменов ты релей, и этот параметр используется
> в reject_unauth_destinationЭтот параметр определяет для каких доменов почтовик ПРИНИМАЕТ почту. Пересылка же почты (релэинг) определяется набором других параметров - вон они в конфиге выше перечислены. Помимо кучи остальных проверок (на блэк-листы, FQDN, соответствие прямой и обратной доменных записей) обычно в качестве первой проверки указывает permit_mynetworks. Что, собственно и ограничивает пересылку почты неким списком IP-адресов (сетей).
>... обычно в качестве первой проверки указывает permit_mynetworks.
> Что, собственно и ограничивает пересылку почты неким списком IP-адресов (сетей).Ясно что проблема не в permit_mynetworks. У челокека не работает reject_unauth_destination
> Ясно что проблема не в permit_mynetworks. У челокека не работает reject_unauth_destinationКак раз таки и не совсем ясно. Эти оба параметра работают в комплексе.
Вот из рабочего конфига:
smtpd_sender_restrictions= permit_mynetworks,
check_sender_access regexp:/etc/postfix/sender_access,
check_sender_access hash:/etc/postfix/access_vip_sender,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unauth_destination,
permit
Без первого параметра - пользователи СВОЕЙ сети (или назначенные такими) не смогут отправлять почту через сервер для почтовых доменов, отличных от прописанных в relay_domains.
> Как раз таки и не совсем ясно. Эти оба параметра работают
> в комплексе.
> Без первого параметра - пользователи СВОЕЙ сети (или назначенные такими) не смогут
> отправлять почту через сервер для почтовых доменов, отличных от прописанных в
> relay_domains.Ё-моё, вы вообще читаете в чем проблемма у топик-стартера? У него почтовый сервер работает как открытый релей! Причем тут permit_mynetworks?!
>> > Ё-моё, вы вообще читаете в чем проблемма у топик-стартера? У него почтовый
> сервер работает как открытый релей! Причем тут permit_mynetworks?!Если в mynetworks написать 0.0.0.0, то что это будет ?
> Если в mynetworks написать 0.0.0.0, то что это будет ?Зачем фантазировать и придумывать сферические задачи если есть конкретный конфиг и конкретная проблема
mynetworks = 192.168.0.3/32, 127.0.0.0/8
> Ё-моё, вы вообще читаете в чем проблемма у топик-стартера? У него почтовый
> сервер работает как открытый релей! Причем тут permit_mynetworks?!Ё-моё, а Вы читаете то, что я пишу? Если он последует Вашему правилу, то тут появится ВТОРОЕ сообщение от него - "Почему я могу отправить почту со своей сети только пользователям моего домена?". Поэтому и написано, что должны присутствовать ОБА правила!
> Ё-моё, а Вы читаете то, что я пишу? Если он последует
> Вашему правилу, то тут появится ВТОРОЕ сообщение от него - "Почему
> я могу отправить почту со своей сети только пользователям моего домена?".
> Поэтому и написано, что должны присутствовать ОБА правила!Конкретно в этом случае правило reject_unauth_destination есть только в smtpd_recipient_restrictions, там же стоит permit_mynetworks, так что все будет хорошо.
Да и вообще зачем спорить, если топикстартер молчит.