From: Jonathan Tripathy on
Hi Everyone,

My question isn't directly a Postfix issue, however postfix will be a
fundamental element, and any advice would be appreciated.

I need to set up an infrastructure which uses a mixture of Linux, and
Windows (exchange server).

Basically, for a single domain, I wish got some users to have accounts
on a Linux mail server (Something similar to
http://workaround.org/ispmail/lenny), and some to have accounts on an
Exchange server. The level of interaction between the 2 machines should
be such that users on each machine can send email to the users on the
other (As well as external mx servers of course).

The users who have their account on the Linux server, will access their
email via IMAP (and send via SMTP). The users of have their account on
the exchange server will access their email via "Outlook Anywhere" -
this is where Exchange encapsulates RPC inside HTTPS packets, and runs
the connection on a single port (443).

My current train on through is this: Have all incoming email terminate
on the Linux (Postfix) box. For users who have their account on the
Linux box itself, this will automatically work. For users who have their
account on the exchange server, I can use Postfix Virtual Aliases to
"forward" the mail to the account on the exchange box. The exchange box
would have to be set up with accounts that are non-accessible from
outside (e.g. user1(a)domain.local). Regarding access from outside, I'm
thinking of just placing the 2 servers in a DMZ, and using a single
static IP address, port forward 25 (SMTP), 110 (IMAP) to the Linux box
and and 443 (Outlook Anywhere) to the exchange box.

Does this sound like an acceptable solution?

Thanks

From: Simone Caruso on
Il 19/07/2010 22:56, Jonathan Tripathy ha scritto:
> Hi Everyone,
>
> My question isn't directly a Postfix issue, however postfix will be a
> fundamental element, and any advice would be appreciated.
>
> I need to set up an infrastructure which uses a mixture of Linux, and
> Windows (exchange server).
>
> Basically, for a single domain, I wish got some users to have accounts
> on a Linux mail server (Something similar to
> http://workaround.org/ispmail/lenny), and some to have accounts on an
> Exchange server. The level of interaction between the 2 machines should
> be such that users on each machine can send email to the users on the
> other (As well as external mx servers of course).
>
> The users who have their account on the Linux server, will access their
> email via IMAP (and send via SMTP). The users of have their account on
> the exchange server will access their email via "Outlook Anywhere" -
> this is where Exchange encapsulates RPC inside HTTPS packets, and runs
> the connection on a single port (443).
>
> My current train on through is this: Have all incoming email terminate
> on the Linux (Postfix) box. For users who have their account on the
> Linux box itself, this will automatically work. For users who have their
> account on the exchange server, I can use Postfix Virtual Aliases to
> "forward" the mail to the account on the exchange box. The exchange box
> would have to be set up with accounts that are non-accessible from
> outside (e.g. user1(a)domain.local). Regarding access from outside, I'm
> thinking of just placing the 2 servers in a DMZ, and using a single
> static IP address, port forward 25 (SMTP), 110 (IMAP) to the Linux box
> and and 443 (Outlook Anywhere) to the exchange box.
>
> Does this sound like an acceptable solution?
>
> Thanks
You can setup an user database (ldap, sql) and select a different mailbox transport on domain or user basis.. you can
use imap proxies as well.

--
Simone Caruso
IT Consultant
+39 349 65 90 805
p.iva: 03045250838
From: Jonathan Tripathy on

On 19/07/10 22:18, Simone Caruso wrote:
> Il 19/07/2010 22:56, Jonathan Tripathy ha scritto:
>> Hi Everyone,
>>
>> My question isn't directly a Postfix issue, however postfix will be a
>> fundamental element, and any advice would be appreciated.
>>
>> I need to set up an infrastructure which uses a mixture of Linux, and
>> Windows (exchange server).
>>
>> Basically, for a single domain, I wish got some users to have accounts
>> on a Linux mail server (Something similar to
>> http://workaround.org/ispmail/lenny), and some to have accounts on an
>> Exchange server. The level of interaction between the 2 machines should
>> be such that users on each machine can send email to the users on the
>> other (As well as external mx servers of course).
>>
>> The users who have their account on the Linux server, will access their
>> email via IMAP (and send via SMTP). The users of have their account on
>> the exchange server will access their email via "Outlook Anywhere" -
>> this is where Exchange encapsulates RPC inside HTTPS packets, and runs
>> the connection on a single port (443).
>>
>> My current train on through is this: Have all incoming email terminate
>> on the Linux (Postfix) box. For users who have their account on the
>> Linux box itself, this will automatically work. For users who have their
>> account on the exchange server, I can use Postfix Virtual Aliases to
>> "forward" the mail to the account on the exchange box. The exchange box
>> would have to be set up with accounts that are non-accessible from
>> outside (e.g. user1(a)domain.local). Regarding access from outside, I'm
>> thinking of just placing the 2 servers in a DMZ, and using a single
>> static IP address, port forward 25 (SMTP), 110 (IMAP) to the Linux box
>> and and 443 (Outlook Anywhere) to the exchange box.
>>
>> Does this sound like an acceptable solution?
>>
>> Thanks
> You can setup an user database (ldap, sql) and select a different
> mailbox transport on domain or user basis.. you can use imap proxies
> as well.

Hmm interesting, so you are saying that I could have a Postfix "front
end" (which handles incoming mail from third parties only) which
forwards mail to the correct server based on user? So 3 servers in total
then?

That's incoming mail from third parties sorted, but what about sending
mail? I'd just forward a port to the Linux Mail Server (not the
frontend) and get users to send mail through that? (This would be for
users who have their account on the Linux Mail Server. The exchange box
does everything on a single port)

From: mouss on
Jonathan Tripathy a �crit :
> Hi Everyone,
>
> My question isn't directly a Postfix issue, however postfix will be a
> fundamental element, and any advice would be appreciated.
>
> I need to set up an infrastructure which uses a mixture of Linux, and
> Windows (exchange server).
>
> Basically, for a single domain, I wish got some users to have accounts
> on a Linux mail server (Something similar to
> http://workaround.org/ispmail/lenny), and some to have accounts on an
> Exchange server. The level of interaction between the 2 machines should
> be such that users on each machine can send email to the users on the
> other (As well as external mx servers of course).
>
> The users who have their account on the Linux server, will access their
> email via IMAP (and send via SMTP). The users of have their account on
> the exchange server will access their email via "Outlook Anywhere" -
> this is where Exchange encapsulates RPC inside HTTPS packets, and runs
> the connection on a single port (443).
>
> My current train on through is this: Have all incoming email terminate
> on the Linux (Postfix) box. For users who have their account on the
> Linux box itself, this will automatically work. For users who have their
> account on the exchange server, I can use Postfix Virtual Aliases to
> "forward" the mail to the account on the exchange box. The exchange box
> would have to be set up with accounts that are non-accessible from
> outside (e.g. user1(a)domain.local). Regarding access from outside, I'm
> thinking of just placing the 2 servers in a DMZ, and using a single
> static IP address, port forward 25 (SMTP), 110 (IMAP) to the Linux box
> and and 443 (Outlook Anywhere) to the exchange box.
>
> Does this sound like an acceptable solution?
>

yes. it is.

for delivery, you can use virtual aliases:
joe(a)example.com joe(a)exchange.example.com

if the exchange box wants joe(a)example.com, you can add
smtp_generic_maops entries to rewrite the address back:
joe(a)exchange.example.com joe(a)example.com
(This only works if the transport to exchange is "smtp", as the prefix
of smtp_generic_maps suggests!).


This approach is better than per user transports, because transport_maps
imply performance overhead (and also: transport_maps are global inside
a postfix instance, so you have less flexibility).

From: Jonathan Tripathy on

>> My current train on through is this: Have all incoming email terminate
>> on the Linux (Postfix) box. For users who have their account on the
>> Linux box itself, this will automatically work. For users who have their
>> account on the exchange server, I can use Postfix Virtual Aliases to
>> "forward" the mail to the account on the exchange box. The exchange box
>> would have to be set up with accounts that are non-accessible from
>> outside (e.g. user1(a)domain.local). Regarding access from outside, I'm
>> thinking of just placing the 2 servers in a DMZ, and using a single
>> static IP address, port forward 25 (SMTP), 110 (IMAP) to the Linux box
>> and and 443 (Outlook Anywhere) to the exchange box.
>>
>> Does this sound like an acceptable solution?
>>
>>
> yes. it is.
>
> for delivery, you can use virtual aliases:
> joe(a)example.com joe(a)exchange.example.com
>
> if the exchange box wants joe(a)example.com, you can add
> smtp_generic_maops entries to rewrite the address back:
> joe(a)exchange.example.com joe(a)example.com
> (This only works if the transport to exchange is "smtp", as the prefix
> of smtp_generic_maps suggests!).
>
>
> This approach is better than per user transports, because transport_maps
> imply performance overhead (and also: transport_maps are global inside
> a postfix instance, so you have less flexibility).
>
>

Hi mouss,

Thanks for that

Can you please explain why I would need to use smtp_generic_maps? I'm
not entirely sure of the use of it in this context.

Many Thanks