Инструменты пользователя

Инструменты сайта


сисадмин:postfix

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
сисадмин:postfix [2016.10.11 06:21] feserсисадмин:postfix [2024.06.21 05:45] (текущий) feser
Строка 1: Строка 1:
 ====== Postfix ====== ====== Postfix ======
  
 +  * [[Примерная конфигурация mail.cf]] 
 +  * [[Настройки hiserver]]
 +  * [[Настройка spamassassin]]
  
 +=== Отправить заново всю почту из очереди ===
 +  postqueue -f
 +=== Очистка почтовой очереди ===
 +  postsuper -d ID
 +  postsuper -d ALL
 +
 +=== Пересылка всей почты на другой сервер ===
 <code - /etc/postfix/main.cf> <code - /etc/postfix/main.cf>
-# Отклонять команду ETRN +   relayhost mail.server.ru:25 
-smtpd_etrn_restrictions reject +</code>
-  +
-# Запретить исходящую почту с наших доменов, но с несуществующих у нас адресов +
-smtpd_reject_unlisted_sender = yes+
  
-  
-# Запретить письма для неизвестных адресов получателей 
-smtpd_reject_unlisted_recipient = yes 
-  
-# Отключает SMTP команду VRFY. В результате чего, невозможно определить существование определенного ящика.  
-#Данная техника (применение команды VRFY) используется спамерами для сбора имен почтовых ящиков. 
-disable_vrfy_command = yes 
  
-  
-# Требует команды helo от подсоединившихся клиентов 
-smtpd_helo_required = yes 
-  
-# требует окружать полученные в MAIL FROM и RCPT TO адреса угловыми скобками <>, а также, чтобы они не содержали лишних фраз 
-strict_rfc821_envelopes = yes 
  
-  +=== Копия сообщений и в другой ящик === 
-# Всегда отправлять EHLO вначале SMTP сессии +<code - /etc/postfix/main.cf> 
-smtp_always_send_ehlo yes +   recipient_bcc_maps hash:/etc/postfix/recipient_bcc_maps 
-  +</code>
-# Ожидание до RCPT TO перед выяснением smtpd_client_restrictions, smtpd_helo_restrictions и smtpd_sender_restrictions +
-# или до ETRN перед выяснением smtpd_client_restrictions, smtpd_helo_restrictions.  +
-# Такое поведение еще обеспечивает лучшую читаемость логов+
-smtpd_delay_reject yes +
- +
  
-# Максимальное количество ошибок, которое может сделать удаленный SMTP клиентПри превышение данного числа Postfix отсоединится+<code - /etc/postfix/recipient_bcc_maps> 
-smtpd_hard_error_limit = 1 +   main@domain.ru  copied@domain.ru 
-  +</code>
-# Интервал времени в течение которого SMTP сервер Postfix должен послать ответ, а удаленный SMTP клиент получить запрос +
-smtpd_timeout = 30s +
-  +
-# Интервал времени, в течение которого SMTP клиент должен послать SMTP команду HELO или EHLO и получить ответ сервера.+
  
-smtp_helo_timeout = 15s +Не забыть прохэшировать 
-  +  postmap recipient_bcc_maps 
-# Интервал времени, в течение которого SMTP клиент должен послать SMTP команду RCPT TO и получить ответ сервера. +   
-smtp_rcpt_timeout = 15s +=== Подмена исходящего адреса === 
-  +<code - /etc/postfix/main.cf> 
-ограничение на количество одновременных получателей письма, по умолчанию 1000 :)+   smtp_generic_maps = hash:/etc/postfix/generic 
 +</code>
  
-smtpd_recipient_limit = 40 +<code - /etc/postfix/generic> 
-  +   root@my.server.ru     exist@mydomain.ru 
-# Время хранения в очереди боунсов +</code>
-bounce_queue_lifetime = 1d +
-  +
-# Время хранения в очереди обычных писем, может принимать значения: s (seconds), m (minutes), h (hours), d (days), w (weeks).+
  
-maximal_queue_lifetime = 3d +  postmap /etc/postfix/generic 
-  +  service postfix reload 
-# Минимальный интервал повторной отправки писем (если получатели использую грейлистинг небольшое значение этого интервала  +   
-# позволяет немного уменьшить очередь, по умолчанию здесь слишком большое значение в 4000s) +=== Автоответ на входящее сообщение ===
-minimal_backoff_time 180s +
- +
  
-# Максимальный интервал повторной отправки писем. Письма которые уже давно лежат в очереди будут повторно  
-# отправляться раз в 6 часов. По умолчанию здесь наоборот маленькое значение. 
-maximal_backoff_time = 6h 
-  
-  
-# Включаем поддержку sasl аутентификации 
-smtpd_sasl_auth_enable = yes 
  
-  
-# логи 
-smtpd_sasl_authenticated_header = yes 
-  
-# Необходимо для корректной работы клиентов, использующих устаревший метод AUTH, например outlook express 
-broken_sasl_auth_clients = yes 
-  
  
-# Запрещаем анонимную авторизацию +В master.cf добавить строку: 
-smtpd_sasl_security_options noanonymous + 
-  +  redirect unix - n n - - pipe flags=R user=postfix argv=/etc/postfix/autoreply.sh ${sender} ${recipient} 
-  + 
-#Определяем свои собственные классы запрета. +В /etc/postfix/script.sh должно быть: 
-smtpd_restriction_classes greylistbolt + 
- +  #!/bin/bash 
 +  /usr/sbin/sendmail -f $1 $2 
 +  cat /etc/postfix/autoreply.msg | /bin/mail -s 'Оповещение $1 
 + 
 +Права на скрипт - должен быть выполняемым для postfix (или любого юзера 
 +от имени которого в master.cf запускается скрипт) 
 + 
 +Создать файл /etc/postfix/autoreply.msg и вписать в него текст сообщения 
 + 
 +Добавить в main.cf: 
 +  smtpd_recipient_restrictions что там естьhash:/etc/postfix/recipient 
 + 
 +Создать файлик /etc/postfix/recipient такого вида: 
 +    user1@mydomain.com FILTER redirect: 
 +    user2@mydomain.com FILTER redirect: 
 + 
 +  postmap recipient 
 +  postfix reload
  
-#Класс для применения грейлистинга. Подразумевается, что на порту 2501 интерфейса 127.0.0.1 уже запущен демон грейлистинга. 
-greylist = check_policy_service inet:127.0.0.1:2501, permit 
-  
-#Класс для запрета отправки писем из нашего домена без авторизации. 
-bolt = reject_plaintext_session, permit 
  
-  
-smtpd_client_restrictions =                                                                                                                  
-# разрешаем "своим" все                                                                                                                      
-#   permit_mynetworks,                                                                                                                       
-# проверяем валидность хостов                                                                                                                
-   check_client_access regexp:/etc/postfix/client_check.pcre,                                                                                
-# разрешаем все для тех, кто пройдет SASL-авторизацию по SMTP                                                                                
-   permit_sasl_authenticated,                                                                                                                
-# отклоняем письма с хостов, которые не имеют обратной записи и обратная запись которых не совпадает с прямой                                
-   reject_unknown_client_hostname,                                                                                                           
-# Проверяем IP клиента на наличие его в базе rbl 
-#reject_rbl_client http.dnsbl.sorbs.net, 
-#reject_rbl_client soks.dnsbl.sorbs.net, 
-#reject_rbl_client smtp.dnsbl.sorbs.net, 
-#reject_rbl_client dul.dnsbl.sorbs.net, 
-#reject_rbl_client, 
-#xbl.spamhaus.org,                                                                                                                                             
-# если все вышеперечисленное подошло, идем дальше                                                                                            
-   permit 
-  
-  
-  
-smtpd_helo_restrictions = 
-# разрешаем все для внутренних клиентов 
-   #permit_mynetworks, 
-# разрешаем все для тех, кто пройдет SASL-авторизацию по SMTP 
-#   permit_sasl_authenticated, 
-# проверяем отправителей 
-#   check_sender_access pcre:/etc/postfix/stupid_programs.regex, 
-# Отклоняем запрос, когда синтаксис HELO или EHLO невернен 
-   reject_invalid_helo_hostname, 
-# Отклоняем запрос, когда доменное имя хоста в HELO или EHLO не является полностью удовлетворяющим требованиям RFC. 
-   reject_non_fqdn_helo_hostname, 
-# Отклоняем запрос, когда имя хоста в HELO или EHLO не имеет A или MX днс-записи 
-   reject_unknown_helo_hostname, 
-# Если надо, проверяем по спискам rbl, есть ли домен из HELO/EHLO в них 
-# reject_rhsbl_helo dnsbl.sorbs.net 
-# если все вышеперечисленное подошло, идем дальше 
-   permit 
  
-  
-smtpd_sender_restrictions = 
-# "своим" можно и "просто" 
-#   permit_mynetworks,  
-# см комментарий к разделу smtpd_helo_restrictions 
-#   permit_sasl_authenticated, 
-   reject_non_fqdn_sender, 
-# Отклоняется запрос, если Постфикс не обнаруживает окончательного места назначения для адреса отправителя и адрес в MAIL FROM не содержит A/MX днс-записиили когда имеется MX запись в виде хоста нулевой длины 
-   reject_unknown_sender_domain, 
-# если надо заблокировать 
-#   check_sender_access pcre:/etc/postfix/block_bad.regex,  
-# Отклоняем запрос, когда письмо на адрес из MAIL FROM отбивается или когда адрес отправителя недоступен. Проверка адресов управляется сервером проверки verify (см. verify(8), также http://www.postfix.org/ADDRESS_VERIFICATION_README.html) 
-#reject_unverified_sender, 
-# Если адрес из MAIL FROM есть в rbl, то отклоняем 
-# reject_rhsbl_sender dnsbl.sorbs.net, 
-# если все вышеперечисленное подошло, идем дальше 
-   permit 
  
-  
-smtpd_recipient_restrictions = 
-# разрешаем "своим" все 
-   #permit_mynetworks, 
-   permit_sasl_authenticated, 
-# см комментарий к разделу smtpd_sender_restrictions 
-   reject_non_fqdn_recipient, 
-   reject_unknown_recipient_domain, 
-# запрещаем принимать письма для несуществующих в системе адресов 
-   reject_unlisted_recipient, 
-   #reject_plaintext_session, 
-# Отклоняем письмо, если домены из RCPT TO содержатся в rbl 
-#reject_rhsbl_recipient dnsbl.sorbs.net, 
-# Отклоняет запросы, кроме тех, что относятся к релею на наш домен, указанный в $relay_domains или для локальной доставки на домены, указанные в $mydestination, $inet_interfaces, $proxy_interfaces, $virtual_alias_domains, or $virtual_mailbox_domains, 
-# без этой строки сервер становится открытым релеем. 
-   reject_unauth_destination, 
-# отдельные правила для получателей: 
-   check_recipient_access pcre:/etc/postfix/recipient_checks.pcre, 
-# проверяем отправителей 
-   check_sender_access pcre:/etc/postfix/sender_access.regex, 
-   #reject_plaintext_session, 
-# если все вышеперечисленное подошло, идем дальше 
-   permit 
-  
-smtpd_data_restrictions = 
-# запрещаем выдачу писем и команд в поток, как это делают нетерпеливые спамеры 
-   reject_unauth_pipelining 
-    
-</code> 
сисадмин/postfix.1476166907.txt.gz · Последнее изменение: 2016.10.11 06:21 — feser