----- Message from an...@isac.gov.in ---------
   Date: Tue, 28 Aug 2012 09:32:12 +0530
   From: an...@isac.gov.in
Subject: Re: exceptions for smtpd_end_of_data_restrictions
     To: postfix-users@postfix.org


----- Message from Noel Jones <njo...@megan.vbhcs.org> ---------
    Date: Mon, 27 Aug 2012 08:57:11 -0500
    From: Noel Jones <njo...@megan.vbhcs.org>
Reply-To: postfix users <postfix-users@postfix.org>
 Subject: Re: exceptions for smtpd_end_of_data_restrictions
      To: postfix-users@postfix.org


On 8/27/2012 7:56 AM, an...@isac.gov.in wrote:

----- Message from an...@isac.gov.in ---------
  Date: Sat, 25 Aug 2012 15:50:33 +0530
  From: an...@isac.gov.in
Subject: Re: exceptions for smtpd_end_of_data_restrictions
    To: postfix-users@postfix.org


----- Message from Noel Jones <njo...@megan.vbhcs.org> ---------
   Date: Fri, 24 Aug 2012 23:49:25 -0500
   From: Noel Jones <njo...@megan.vbhcs.org>
Reply-To: postfix users <postfix-users@postfix.org>
Subject: Re: exceptions for smtpd_end_of_data_restrictions
     To: postfix-users@postfix.org


On 8/24/2012 11:10 PM, an...@isac.gov.in wrote:

----- Message from Noel Jones <njo...@megan.vbhcs.org> ---------
  Date: Wed, 22 Aug 2012 06:31:10 -0500
  From: Noel Jones <njo...@megan.vbhcs.org>
Reply-To: postfix users <postfix-users@postfix.org>
Subject: Re: exceptions for smtpd_end_of_data_restrictions
    To: postfix-users@postfix.org


On 8/22/2012 2:14 AM, an...@isac.gov.in wrote:
Dear List,

I have this in my main.cf

smtpd_end_of_data_restrictions =
    check_policy_service inet:127.0.0.1:9998


This basically checks for mail size and allows/not allows a mail
based on contents of a file.

Is there a way to say, not to use this policy service, based
on some
headers of a mail?



You can skip the policy based on envelope information by using a
check_*_access map before the policy check.  You could also likely
do this inside the policy server itself.

You cannot skip it based on headers.



-- Noel Jones



Thanks for your inputs.    You are all experts, please share some
ideas with me to solve my problem.  I have described the
requirement
in detail as below.

Let me explain my current setup and my real requirement.

I have a front end for accessing and sending mail (say server A).
All mails sent from this (server A) are directed to another server
(say server B) for virus/spam check using Amavisd.  If the mails
are
addressed to any internet domain other than ours, mails get
forwarded to Server C, else mails are delivered locally.

A (Front End Mail) -> B (Virus/Spam scanner) -> C (for
delivering to
Internet).

At server B (for local delivery of mails) we have a size limit
of 30
MB.

At Server C (for delivery to Internet ) we have a size limit of 30
MB, but using policyd feature of Postfix (at
smtpd_end_of_data_restrictions), by default we are restricting to 2
MB and based on the contents of a data file (which is manually
edited as and when required) which contains Sender address and
allowed size, mails get get delivered to outside domains having
higher size.

Now, I have been asked to develop another front end at same
level as
Server A (say server D), to enable users to send mails of large
size
to Internet users, such that, once a mail is composed and submitted
for approval, Based on the content, I can approve or disapprove.
Once approved, it should go through Server B and finally server
C to
get delivered to outside domains.

My problem lies at Server C where I am running a policy for sending
outside mails.  How does that mail be allowed without even looking
at policy (exception for policy).

Please provide guidance or any other alternative strategy to
achieve
the requirement.  But, it is must that, mail should go through the
virus scan.

Regards,
Anant.



Have D submit mail to a dedicated amavisd port on B, which can then
submit to a separate port on C with no policy.

See amavisd docs about listening on multiple ports, policy banks,
etc.

For the postfix changes on C, the lazy solution is set up another
smtpd listener in master.cf with empty
smtpd_end_of_data_restrictions; the better full-featured solution is
a separate postfix instance giving full control with separate queue,
logging, and stats.



-- Noel Jones


Thanks.  I think, this is the only option.  I need to work on
this. Thanks.

Regards,
Anant.



Dear Noel Jones,

I was just browsing through the net and found the following link

http://marcelog.github.com/articles/configure_postfix_forward_email_regex_subject_transport_relay.html


In my setup, I have different queue setup already for incoming and
outgoing in Server C.  My policy runs on outgoing queue.

If I setup another queue on server C, say 'highersizequeue'.   And
in outgoing main.cf, I add header check for some specific header and
based on that header, I relay that mail to newly created queue
(higersizequeue).

That could work.


Is this solution advisable? If you say No, I would stick your
earlier suggested option.

As a general rule, routing decisions shouldn't be based on headers.
You'll need to insure that you do not unintentionally match the
wrong header.  Even experts fat-finger regexp; it's harder than it
looks.

I think the separate ports discussed earlier is a better and safer
solution.  There is much less possibility of unintended routing that
way.



 -- Noel Jones


THANK YOU.


What I tried to implement did not work. On my server C, in the existing outgoing queue, I set message size limit as 2 MB, removed smtpd_end_of_data_restrictions policy. Added a header_check for a custom header to filter to smtp:xxx:yyy

But, when I send a mail higher than 2 MB, header_check does not happen. Mail bounces back. I thought, header_check would apply and it would get redirected to another instance of postfix as defined in header_checks.

Where as, if the size of the mail is less than 2 MB, it goes through the new instance of postfix to which I have filtered and gets delivered.

Does header_check works only after completely queuing the mail? I am using 2.6.13 version of postfix?

Regards,
Anant.




----- End message from Noel Jones <njo...@megan.vbhcs.org> -----


------------------------------------------------------------------------------
Confidentiality Notice: This e-mail message, including any attachments, is for
the sole use of the intended recipient(s) and may contain confidential and
privileged information. Any unauthorized review, use, disclosure or
distribution is prohibited. If you are not the intended recipient, please
contact the sender by reply e-mail and destroy all copies of the original
message.
------------------------------------------------------------------------------


----- End message from an...@isac.gov.in -----


------------------------------------------------------------------------------
Confidentiality Notice: This e-mail message, including any attachments, is for
the sole use of the intended recipient(s) and may contain confidential and
privileged information. Any unauthorized review, use, disclosure or
distribution is prohibited. If you are not the intended recipient, please
contact the sender by reply e-mail and destroy all copies of the original
message.
------------------------------------------------------------------------------

Reply via email to