почему то не работает это правило в master.cf,и что прописать в header_checks ,чтобы он понимал русские файлы...??? а то к примеру,privet.doc редиректит,а привет.doc уже нет, помогите плиз
прописла в master.cf
192.168.0.153:smtp inet n - n - - smtpd
-o header_checks=regexp:/usr/local/etc/postfix/header_checks
195.239.X.X:smtp inet n - n - - smtpdpostconf -n
alias_database = hash:/etc/mail/aliases
alias_maps = hash:/etc/mail/aliases
command_directory = /usr/local/sbin
config_directory = /usr/local/etc/postfix
daemon_directory = /usr/local/libexec/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
local_recipient_maps =
mail_owner = postfix
mailq_path = /usr/local/bin/mailq
manpage_directory = /usr/local/man
mydestination = $myhostname, localhost.$mydomain, localhost, bars2.com
mydomain = bars2.com
myhostname = mail.bars2.com
mynetworks = 192.168.0.0/24, 127.0.0.0/8
mynetworks_style = class
myorigin = $mydomain
newaliases_path = /usr/local/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = no
relay_domains = $mydestination
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/local/sbin/sendmail
setgid_group = maildrop
smtpd_recipient_restrictions = permit_mynetworks,reject_unknown_recipient_domain,reject_unauth_destination,reject_unauth_pipelining,reject_invalid_hostname,reject
transport_maps = hash:/usr/local/etc/postfix/transport
unknown_local_recipient_reject_code = 550
>почему то не работает это правило в master.cf,и что прописать в header_checks
>,чтобы он понимал русские файлы...??? а то к примеру,privet.doc редиректит,а привет.doc
>уже нет, помогите плизЭто проблема кодировок. Постфикс сравнивает символы в правилах с символами в письме в том виде, в каом они там написаны. Если в письме слово "привет.doc" написано в другой кодировке или вообще как-то закодировано, то совпадения не будет. Вам надо либо в файле header_checks указать все возможные варианты, либо найти какой-нибудь сторонний фильтр, который умеет перекодировать.
в смысле все варианты???
т.е. во всех возможных кодировках, включая закодированные. Откройте письмо в исходном виде и посмотрите как там имя вложения выглядит. Как пример:Content-Type: image/jpeg;
name="=?windows-1251?B?z+7k8e7r7fP1X/Tu7S5qcGc=?="и это всего-лишь один из возможных вариантов.
и как это будет выглядеть? всмысле какой синтаксис?
что-то типа:/^Content-.+;.*(file)?name="(=?windows-1251?B?z+7k8e7r7fP1X/Tu7S5qcGc=?=)"$/
reject ATTACHMENT-REJECT: Sorry, attachment .$2 not allowedтолько это надо писать в файле mime_header_checks.regexp и в master.cf дописать -o mime_header_checks=regexp:/path/to/mime_header_checks.regexp
Хотя если у вас и privet.doc работает в header_checks, то возможно и это правило там же заработает.
Спасибки Sarge, буду пробовать:))
>и как это будет выглядеть? всмысле какой синтаксис?man header_checks!
в разных кодировках привет.doc списком забей в header_checks:
/^Content-Type: application/msword; name="здесь имя вложения"/iи /etc/postfix/main.cf:
header_checks = regexp:/etc/postfix/header_checksSerge же написал, подробнее некуда.