The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"консультация по Postfix "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [ Отслеживать ]

"консультация по Postfix "  +/
Сообщение от rusdis email(ok) on 16-Дек-09, 14:26 
Доброго времени суток!
Настроил Postfix тестирую с внешнего сервера:
i - печатаю я,
s - отвечает сервер.

i:>HELO ns3.gudzondns.net
s:>220 mail.MYHOST.ru ESMTP
i:>MAIL FROM:ANY_USER@yandex.ru
s:>250 mail.MYHOST.ru
i:>RCPT TO:MY_USER@MYHOST.ru
s:>250 2.1.0 Ok
i:>DATA
s:>250 2.1.5 Ok
i:>From: ANY_USER@yandex.ru
i:>To: MY_USER@MYHOST.ru
i:>Subject: Subg
i:>
i:>QUIT
s:>354 End data with

Письмо отправляется, хотя авторизации клиент не проходил (поле TO Мой_домен). Причем если указать TO:ANY_USER@OTHER_HOST.ru(не мой домен, любой), то сервер требует авторизации и письмо не отправляет, что вроде бы безопастно.
Пробую проделать тоже самое с сервером почты яндекс smtp.yandex.ru

i:>HELO ns3.gudzondns.net
s:>220 smtp2.mail.yandex.net (Want to use Yandex.Mail for your domain? Visit http://pdd.yandex.ru)
i:>MAIL FROM:MY_USER@MYHOST.ru
s:>250 smtp2.mail.yandex.net
i:>RCPT TO:ANY_USER@yandex.ru
s:>554 5.7.1 : Sender address rejected: Access denied
i:>DATA
s:>503 5.5.1 Error: need MAIL command
i:>From: MY_USER@MYHOST.ru
i:>To: ANY_USER@yandex.ru
i:>Subject: Subg
i:>
i:>QUIT
s:>503 5.5.1 Error: need RCPT command

Как видно smtp.Яндекс, запрещает прием почты даже если указано что получатель реальный_пользователь@yandex.ru. Вопрос как этого добиться?

конфиг Postfix:
postconf

smtpd_helo_restrictions = permit_mynetworks,permit_sasl_authenticated,check_recipient_access hash:/usr/local/etc/postfix/postmaster_access,check_helo_access hash:/usr/local/etc/postfix/helo_access, reject_invalid_hostname, reject_unknown_hostname, reject_non_fqdn_hostname

smtpd_recipient_restrictions = permit_mynetworks,    permit_sasl_authenticated, reject_unauth_pipelining,    reject_unknown_recipient_domain,reject_non_fqdn_recipient, reject_unauth_destination,check_helo_access pcre:/usr/local/etc/postfix/helo_checks, reject_authenticated_sender_login_mismatch, check_sender_access pcre:/usr/local/etc/postfix/helo_checks, reject_unlisted_recipient,reject_unknown_sender_domain,reject_unlisted_recipient

smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_authenticated_sender_login_mismatch, reject_unknown_sender_domain, reject_unverified_sender,    reject_unknown_client_hostname

Авторизация sasl работает.

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "консультация по Postfix "  +/
Сообщение от mglushak email on 16-Дек-09, 15:41 
>[оверквотинг удален]
>postconf
>
>smtpd_helo_restrictions = permit_mynetworks,permit_sasl_authenticated,check_recipient_access hash:/usr/local/etc/postfix/postmaster_access,check_helo_access hash:/usr/local/etc/postfix/helo_access, reject_invalid_hostname, reject_unknown_hostname, reject_non_fqdn_hostname
>
>smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, reject_unknown_recipient_domain,reject_non_fqdn_recipient, reject_unauth_destination,check_helo_access pcre:/usr/local/etc/postfix/helo_checks, reject_authenticated_sender_login_mismatch, check_sender_access pcre:/usr/local/etc/postfix/helo_checks, reject_unlisted_recipient,reject_unknown_sender_domain,reject_unlisted_recipient
>
>
>smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_authenticated_sender_login_mismatch, reject_unknown_sender_domain, reject_unverified_sender, reject_unknown_client_hostname
>
>Авторизация sasl работает.

==================================
покажи параметр
mynetworks_style
в main.cf

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "консультация по Postfix "  +/
Сообщение от mglushak email on 16-Дек-09, 15:41 
>[оверквотинг удален]
>postconf
>
>smtpd_helo_restrictions = permit_mynetworks,permit_sasl_authenticated,check_recipient_access hash:/usr/local/etc/postfix/postmaster_access,check_helo_access hash:/usr/local/etc/postfix/helo_access, reject_invalid_hostname, reject_unknown_hostname, reject_non_fqdn_hostname
>
>smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, reject_unknown_recipient_domain,reject_non_fqdn_recipient, reject_unauth_destination,check_helo_access pcre:/usr/local/etc/postfix/helo_checks, reject_authenticated_sender_login_mismatch, check_sender_access pcre:/usr/local/etc/postfix/helo_checks, reject_unlisted_recipient,reject_unknown_sender_domain,reject_unlisted_recipient
>
>
>smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_authenticated_sender_login_mismatch, reject_unknown_sender_domain, reject_unverified_sender, reject_unknown_client_hostname
>
>Авторизация sasl работает.

==================================
покажи параметр
mynetworks_style
в main.cf

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "консультация по Postfix "  +/
Сообщение от rusdis email(ok) on 16-Дек-09, 16:46 
>покажи параметр
>mynetworks_style
>в main.cf

mynetworks = 127.0.0.0/8, 192.168.3.100
mynetworks_style = host
myorigin = $myhostname

192.168.3.100 ip самого почтовика наличие этого ip на прием с внешки роли не играет

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "консультация по Postfix "  +/
Сообщение от mglushak email on 16-Дек-09, 17:02 
>>покажи параметр
>>mynetworks_style
>>в main.cf
>
>mynetworks = 127.0.0.0/8, 192.168.3.100
>mynetworks_style = host
>myorigin = $myhostname
>
>192.168.3.100 ip самого почтовика наличие этого ip на прием с внешки роли
>не играет

=================================
так при параметрах которые у тя указаны постфикс вообще недолжен принимать почту от внешних клиентов, каждый хост от которого юзвери отправляют почту используя твой постфикс в качестве смтп сервера указывается в mynetworks при условии что mynetworks_style = host...
=============================
прошу весь main.cf в студию

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "консультация по Postfix "  +/
Сообщение от rusdis email(ok) on 16-Дек-09, 17:27 
>прошу весь main.cf в студию
>так при параметрах которые у тя указаны постфикс вообще недолжен принимать почту от внешних клиентов,

C внешки по smtp если пользователь прошел авторизацию он может отправить на НЕ_СВОЙ_ДОМЕН, а вот на СВОЙ_ДОМЕН он хотя авторизация не проходит, почту принимает. ИМЕЕННО которая АДРЕСОВАНА на СВОЙ_ДОМЕН.
===============================================
# каталог в котором будет находиться очередь писем, обрабатываемых postfix
queue_directory = /var/spool/postfix
# каталог выполняемых файлов административных команд postfix
command_directory = /usr/local/sbin
# каталог выполняемого файла демона postfix
daemon_directory = /usr/local/libexec/postfix
# Путь к команде, используемой взамен стандартного sendmail
sendmail_path = /usr/local/sbin/sendmail
# Путь к исполняемому файлу, используемому для перестройки псевдонимов
newaliases_path = /usr/local/bin/newaliases
# Путь к команде, отображающей состояние почтовой очереди
mailq_path = /usr/local/bin/mailq
# Документация в html-формате
html_directory = no
# База документации на все устанавливаемые программы
manpage_directory = /usr/local/man
# Примеры конфигурационных файлов postfix.
sample_directory = /usr/local/etc/postfix
# Файлы readme
readme_directory = no
# Имя пользователя, с правами которого работает почта
mail_owner = postfix
# Группа, от имени которой будут работать команды обработки почтовой очереди
setgid_group = maildrop
# Права по умолчанию, используемые агентом локальной доставки.
# Не указывайте здесь привилегированного пользователя или владельца Postfix!
default_privs = nobody
# Имя нашего хоста.
myhostname = mail.MYHOST.ru
#Имя нашего домена
mydomain = MYHOST.ru
# Адреса интерфейсов, на которых нужно ждать smtp-соединений
inet_interfaces = all
# Домены, для которых будет приниматься почта
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# списки наших локальных пользователей:
local_recipient_maps =
# С каким кодом отклонять письма для несуществующих пользователей
unknown_local_recipient_reject_code = 550
mynetworks_style = host
# Подсети из которых почта принимается, не проходя многих проверок.
# Перекрывает параметр mynetworks_style. Можете добавить сюда ваши подсети,
# я же в дальнейшем буду использовать принцип .не доверяй никому., поэтому
# указал только локальную подсеть
mynetworks = 127.0.0.0/8, 192.168.3.100
# Списки алиасов, используемых для локальной доставки
alias_maps = hash:/etc/mail/aliases
alias_database = hash:/etc/mail/aliases
# Используем Maildir-style для пользовательских ящиков
home_mailbox = Maildir/
# Строка представления вашего SMTP сервера (может быть любой)
smtpd_banner = $myhostname ESMTP
# запрещаем использование команды VRFY
disable_vrfy_command = yes
# Обязательно требуем использования команд HELO или EHLO
smtpd_helo_required = yes

# списки транспортов
transport_maps = pgsql:/usr/local/etc/postfix/transport.cf
# куда складывать почту транспорту virtual
virtual_mailbox_base = /
# списки почтовых ящиков
virtual_mailbox_maps = pgsql:/usr/local/etc/postfix/mailbox.cf
# списки алиасов
virtual_alias_maps = pgsql:/usr/local/etc/postfix/alias.cf
# uid и gid пользователей
virtual_uid_maps = static:125
virtual_gid_maps = static:126

# включаем плагин sasl2 для smtpd авторизации
smtpd_sasl_auth_enable = yes
# запрещаем анонимную аутентификацию
smtpd_sasl_security_options = noanonymous
# разрешаем авторизацию клиентов, использующих устаревшую версию команды AUTH
broken_sasl_auth_clients = yes
# имя области аутентификации SASL . лучше оставить пустым
smtpd_sasl_local_domain =
# ограничения, выполняющиеся при обработке команды RCPT TO
smtpd_recipient_restrictions =    permit_mynetworks,
                permit_sasl_authenticated,
#Отвергает запрос, когда клиент отправляет команды SMTP раньше времени, еще не зная о том, действительно ли Postfix поддерживаетконвейерную обработку команд ESMTP.
                reject_unauth_pipelining,
#не должен принимать никакие сообщения для несуществующего домена, т. к. их невозможно доставить.                
                reject_unknown_recipient_domain,
#отвергать сообщения для получателей с неполным именем, если вы добавите параметр reject_non_fqdn_recipient
                reject_non_fqdn_recipient,                                
                reject_unauth_destination,
##new rules                            
                check_helo_access pcre:/usr/local/etc/postfix/helo_checks,
                reject_authenticated_sender_login_mismatch,
##!!!!!! ЗАПРЕТ НЕ АВТОРИЗОВАННЫМ УКАЗЫВАТЬ НАШ ДОМЕН, ИНАЧЕ БУДУТ СЛАТЬ ВСЕ
                check_sender_access pcre:/usr/local/etc/postfix/helo_checks,
                reject_unlisted_recipient,
                reject_unknown_sender_domain,
                reject_unlisted_recipient
##reject_rbl_client zen.spamhaus.org
##reject_rbl_client psbl.surriel.com
##reject_rbl_client bl.spamcop.net

                
##new
smtp_always_send_ehlo= yes
smtpd_error_sleep_time = 0
##Для увеличения параллелизма следует увеличить значение параметра
##default_process_limit=30

smtpd_data_restrictions =
            reject_unauth_pipelining,
##отказа в приеме сообщениям с пустым именем отправителя конверта, предназначенным нескольким получателям,            
            reject_multi_recipient_bounce,
                permit

##Postfix не осуществляет оценку и выполнение ограничений на основе триггера ограничений сразу же после наступления соответствующего этапа SMTPзаимодействия.
smtpd_delay_reject = yes
##количество соединений за определенный промежуток времени
client_connection_rate_time_unit = 60s
##число разрешенных соединений от одного клиента
smtpd_client_connection_rate_limit = 30
##Количество разрешенных параллельных соединений для одного клиента
smtpd_client_connection_count_limit = 3
smtpd_timeout = 20s
smtp_helo_timeout = 10s
smtp_mail_timeout = 10s
smtp_rcpt_timeout = 10s
##максимальное количество адресов, на которые надо отправить сообщение
smtpd_recipient_limit = 2

# Заставляем отклонять почту с неизвестным адресом отправителя.
# Позволяет бороться с червями и некоторыми вирусами.
smtpd_reject_unlisted_sender = yes
# Скрываем отображение имени таблицы получателей в ответе "User unknown"
# yes: User unknown in virtual mailbox table
# no: User unknown
show_user_unknown_table_name = no
# Максимальное количество ошибок, которое может сделать удаленный SMTP клиент.
# При превышение данного числа Postfix разорвет соединение.
smtpd_hard_error_limit = 8
# Дополнительные ограничения, применяемые сервером Postfix
# в контексте команды MAIL FROM
smtpd_sender_restrictions =     permit_mynetworks,
#ok если отправитель аутентифицировался, проверка прекращается
#dunno если отправитель не аутентифицровался, проверка идет дальше
                            permit_sasl_authenticated,
                reject_authenticated_sender_login_mismatch,
                reject_unknown_sender_domain,
                reject_unverified_sender,
                reject_unknown_client_hostname
                

# Проверяем, что нам предъявляют в HELO/EHLO и:
# принимаем всю почту для postmaster и abuse, ибо postmaster обязан
# быть доступным при любом раскладе
smtpd_helo_restrictions =
# принимаем, если клиент из доверенной подсети
    permit_mynetworks,    
# принимаем, если клиент прошел SASL-аутентификацию
    permit_sasl_authenticated,
    check_recipient_access hash:/usr/local/etc/postfix/postmaster_access,
# существуют .особы, приближенные к особе. - клиенты, чей почтовый сервер
# настроен криво, но почту с которого надо все же принимать во избежание
# скандалов с руководством - заносим их в .белый. список
    check_helo_access hash:/usr/local/etc/postfix/helo_access,
# отвергаем хосты с неверными именами
    reject_invalid_hostname,
# отвергаем хосты, которые не имеют А или МХ записей в DNS
    reject_unknown_hostname,
# отвергаем хосты с именами не в FQDN-форме
    reject_non_fqdn_hostname                

####???
broken_sasl_auth_clients = yes

data_directory = /var/lib/postfix

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру