Postfix и проброс 25 порта. Как правильно реализовать?

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
skeletor
майор
Сообщения: 2445
Зарегистрирован: 2007-11-16 18:22:04
Откуда: Kiev
Контактная информация:

Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение skeletor » 2010-02-25 11:38:27

Суть проблемы в следующем: есть шлюз, на нём проброшены порты 110, 25. Сам почтовый сервак находиться в локалке. Доменное имя зарегано на внешний IP, MX запись тоже. Имя шлюза mail.server.com.
В итоге, при пробросе порта получаем следующую ситуацию:

Код: Выделить всё

samba postfix/smtpd[65288]: NOQUEUE: reject: RCPT from unknown[192.168.0.254]: 450 4.7.1 Client host rejected: cannot find your hostname, [192.168.0.254]; from=<apple.jessie@gmail.com> to=<uest320@ms32.hinet.net> proto=SMTP helo=<static.customer-201-116-58-221.uninet-ide.com.mx>
то есть при приёме почты, подставляется внутренний IP шлюза (192.168.0.254) и получается. В конфиге postfix'a написано следующее:

Код: Выделить всё

mynetworks = 127.0.0.0/8, 192.168.0.0/24

smtpd_client_restrictions =  permit_mynetworks,
							 permit_sasl_authenticated,
							 check_client_access hash:$base/client_access,
							 reject_unknown_client_hostname

# Дополнительные ограничения, применяемые сервером Postfix
# в контексте SMTP команды HELO
smtpd_helo_restrictions =	   check_helo_access hash:$base/hello_access,
								permit_mynetworks,
								permit_sasl_authenticated,
								reject_invalid_helo_hostname,
								reject_non_fqdn_helo_hostname,
								reject_unknown_helo_hostname

# Дополнительные ограничения, применяемые сервером Postfix
# в контексте команды MAIL FROM
smtpd_sender_restrictions =	 permit_mynetworks,
								check_sender_access hash:$base/sender_access,
								reject_authenticated_sender_login_mismatch,
								reject_unknown_sender_domain,
								reject_unlisted_sender,
								reject_unverified_sender

# Дополнительные ограничения, применяемые сервером Postfix
# в контексте команды RCPT TO
smtpd_recipient_restrictions =  permit_mynetworks,
								permit_sasl_authenticated,
								reject_unauth_destination,
								check_recipient_access hash:$base/recipient_access,
								reject_unknown_recipient_domain,
								reject_non_fqdn_recipient,
								reject_unverified_recipient,
								check_policy_service inet:127.0.0.1:10023
При таком конфиге, получается открытый релеей, ибо подставляется внутренний IP, а он прописан в mynetworks.

Если убрать внутренний адрес шлюза из mynetworks, то будут идти reject'ы.

Посоветуйте, как правильно реализовать эту ситуацию.
"Винда съела дрова и резет здесь не фурычит."
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих фалов вообще нет!"

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение iye » 2010-02-25 12:54:31

вариант номер раз - получить подсетку и прокинуть.
вариант номер два - получить еще один ип и поднять туннель с почтового сервака до маршрутизатора, где почтовому серваку будет выдаваться нужный ип.
вариант номер три - поднять почтовый сервак на роутере.

Аватара пользователя
skeletor
майор
Сообщения: 2445
Зарегистрирован: 2007-11-16 18:22:04
Откуда: Kiev
Контактная информация:

Re: Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение skeletor » 2010-02-25 16:01:20

Все варианты не подходят
1) нельзя
2) тоже нельзя
3) роутер не такой мощный, что бы крутить почту.
"Винда съела дрова и резет здесь не фурычит."
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих фалов вообще нет!"

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение iye » 2010-02-26 16:54:31

Роутер может релеить почту на внутренний сервак.

Аватара пользователя
Lord Beaver
рядовой
Сообщения: 31
Зарегистрирован: 2009-12-26 20:37:45
Откуда: Волгоград

Re: Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение Lord Beaver » 2010-02-27 10:21:50

У меня другой вопрос. Как реализован проброс порта, что IP адрес меняется на внутренний? Собственно сделать нормальный проброс и всё будет работать.

Аватара пользователя
skeletor
майор
Сообщения: 2445
Зарегистрирован: 2007-11-16 18:22:04
Откуда: Kiev
Контактная информация:

Re: Postfix и проброс 25 порта. Как правильно реализовать?

Непрочитанное сообщение skeletor » 2010-02-28 15:18:50

Пробовал пробрасывать через natd, но у некоторых людей, которые находяться во внутренней подсети, перестала работать почта. Потом решил через redir, rinetd.

Сейчас проблема решена (мне правда не нравиться, но это временно). Убрал из конфига postfix'a из mynetwork внутренний адрес шлюз (192.168.0.254), то есть теперь он не подпадал под правило permit_mynetwork. Спам начал резаться, правда в очереди начали накапливаться письма для MAILER-DAEMON, которые пока по крону прибиваю.
"Винда съела дрова и резет здесь не фурычит."
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих фалов вообще нет!"