Janis:
> Hello,
> 
> This is my first question to mailing list, so i hope i get this right.
> 
> I think it is better to describe general architecture first and then 
> what i am trying to achieve.
> 
> This Postfix instance is configured to use Dovecot SASL for LOGIN 
> function and permissions. That part works. SASL auth is configured so 
> that username is an email address. Only virtual mailboxes are used, but 
> in this instance it is not that important, since the question is only 
> about outgoing mail restrictions.
> 
> The problem is that authenticated senders can send "mail from" from 
> whatever they please if i do not place any restrictions. Thus i decided 
> to use:
> smtp_sender_restrictions = reject_sender_login_mismatch
> 
> It limits "mail from" as expected, but the problem is that i must 
> "duplicate" kind of what i already have in Dovecot user database in 
> $smtpd_sender_login_maps file. I am using hash type for 
> $smtpd_sender_login_maps. It works very well with allowing to use "alias 
> e-mail" address as "mail from" as well.

You could use regular expressions:

/etc/postfix/main.cf:
    smtpd_sender_login_maps = pcre:/etc/postfix/sender_login

/etc/postfix/sender_login:
    # each sender is 'owned' by the login with the same name.
    /^(\S+@\S+)$/       $1

As long as the SASL login names are validated by trusted code,
this should be safe.

        Wietse
> What i would like to achieve is to permit sender to set "mail from" the 
> same value as his SASL auth username or some specially allowed "alias 
> e-mail" addresses that are defined somewhere. For example, if user1 is 
> allowed to respond for his company, he would authenticate as 
> us...@domain.tld and could set "mail from" 1) us...@domain.tld or 2) 
> i...@domain.tld.
> 
> I can achieve this at the moment by writing both lines in login_maps 
> file, but it feels kind of wrong way to do things. Is there a way not to 
> duplicate Dovecot usernames and permit 1st case restriction in "mail 
> from" something like permit_sasl_username_as_mail_from?
> 
> I was looking directly at 
> http://www.postfix.org/postconf.5.html#smtpd_sender_restrictions, but 
> none of the options seemed right for this use case. Maybe if i scratched 
> my head a bit, i could come up with some "tricky" SQL query as a 
> workaround and use reject_sender_login_mismatch, but maybe i have just 
> overlooked some simple setting, thus i ask for any input.
> 
> Thank you!
> 
> Best wishes,
> Janis
> 
> 
> 

Reply via email to