<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kyle Brandt &#187; OWA</title>
	<atom:link href="http://www.kbrandt.com/tag/owa/feed" rel="self" type="application/rss+xml" />
	<link>http://www.kbrandt.com</link>
	<description>Original computing and productivity articles by a Linux administrator</description>
	<lastBuildDate>Tue, 06 Jul 2010 01:04:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Moving a Front-End Exchange 2003 Server into your DMZ</title>
		<link>http://www.kbrandt.com/2009/02/moving-a-front-end-exchange-2003-server-into-your-dmz.html</link>
		<comments>http://www.kbrandt.com/2009/02/moving-a-front-end-exchange-2003-server-into-your-dmz.html#comments</comments>
		<pubDate>Mon, 02 Feb 2009 23:13:57 +0000</pubDate>
		<dc:creator>Kyle</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[System Administration]]></category>
		<category><![CDATA[Windows / Exchange]]></category>
		<category><![CDATA[Cisco]]></category>
		<category><![CDATA[DMZ]]></category>
		<category><![CDATA[Exchange 2003]]></category>
		<category><![CDATA[Firewalls]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[OWA]]></category>
		<category><![CDATA[Windows Server 2003]]></category>

		<guid isPermaLink="false">http://www.kbrandt.com/?p=139</guid>
		<description><![CDATA[Introduction:
A common practice in networks is to have at least two Exchange servers, a front-end server in the demilitarized zone (DMZ, perimeter network in Microsoft terminology) and a back-end server in the company&#8217;s main network.  The front-end server hosts the public SMTP server and web mail.  The back-end server hosts the actual mail (information stores).  [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Introduction:</strong><br />
A common practice in networks is to have at least two Exchange servers, a front-end server in the demilitarized zone (DMZ, perimeter network in Microsoft terminology) and a back-end server in the company&#8217;s main network.  The front-end server hosts the public SMTP server and web mail.  The back-end server hosts the actual mail (information stores).  There are two firewalls, one between your DMZ and your own network, and the second is between the DMZ and the Internet.</p>
<p>Although the firewall rules are well documented on the web, I ran into a couple of blocks when moving the Exchange front-end server into the DMZ.  I hope in sharing what I encountered helps others find doing the same thing a little less frustrating. My instructions will be specific to my experience in doing this, and is certainly not the only way to do it.</p>
<p><strong>Planning the Firewall Rules:</strong><br />
As I mentioned in previously there are two firewalls in this setup.  One is between the Internet and the DMZ and the other is between the DMZ and the internal network. In this example both the firewalls are just the Access Control Lists ( ACLs ) on the Internet interface and the DMZ interface of a Cisco router. The the front-end server is also behind Network Address Translation ( NAT ), so the server gets assigned a local IP.</p>
<p><img class="alignnone size-full wp-image-172" title="exchangedmz" src="http://www.kbrandt.com/wp-content/uploads/2009/02/exchangedmz.jpg" alt="exchangedmz" width="693" height="272" /></p>
<p>The logical layout is how to think about the set up.  Firewall 1 is actually an inbound ACL on the Gig 0/0 interface and Firewall 2 is and inbound ACL on the Gig 0/1 interface.  In this usage of inbound, &#8216;in&#8217; means heading into the interface ( see the actual layout ) and not &#8216;inbound&#8217; in the sense of inbound traffic from the Internet.  Firewall 1 is the firewall between the front-end server and the Internet. Firewall 2 is the firewall between the front-end exchange server and the primary domain controller as well as the back-end Exchange server. The rules on Firewall 2 assume you have bound remote procedure call ( RPC ) to specific port, which I will talk about more in the section about configuring the domain controller. The rules for Firewall 1 use the public Internet IP because that is in front of the NAT, in my example the public IP is 74.125.45.100 and it gets translated to 172.16.1.2 .</p>
<p><strong>Gig 0/0 ACL in ( Firewall 1 ):</strong><br />
<code>permit tcp any host 74.125.45.100 eq 25<br />
permit tcp any host 74.125.45.100 eq 80<br />
permit tcp any host 74.125.45.100 eq 110<br />
permit tcp any host 74.125.45.100 eq 143<br />
permit tcp any host 74.125.45.100 eq 443</code><br />
<strong>Gig 0/1 ACL in ( Firewall 2 ):</strong><br />
<code>permit tcp host 172.16.1.2 host 10.10.1.51 eq 25<br />
permit tcp host 172.16.1.2 host 10.10.1.51 eq 80<br />
permit tcp host 172.16.1.2 host 10.10.1.51 eq 143<br />
permit tcp host 172.16.1.2 host 10.10.1.51 eq 110<br />
permit tcp host 172.16.1.2 host 10.10.1.51 eq 691<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 88<br />
permit udp host 172.16.1.2 host 10.10.1.50 eq 88<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 389<br />
permit udp host 172.16.1.2 host 10.10.1.50 eq 389<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 3268<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 53<br />
permit udp host 172.16.1.2 host 10.10.1.50 eq 53<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 135<br />
permit tcp host 172.16.1.2 host 10.10.1.50 eq 12125<br />
</code></p>
<p><strong>Active Directory Changes:</strong><br />
There were three changes I had to make in Active Directory.  The first was to change the DNS entries for the mail servers.  The second, which took me sometime to figure out, was to add the subnet to &#8216;Active Directory Sites and Services&#8217;.  I had to do this because this was the first Windows server being deployed in the DMZ. To do this go to Control Panel :: Administrative Tools :: Active Directory Sites and Services :: Right-Click Subnets :: New Subnet and then for our example add &#8216;172.16.1.1/24&#8242; and assign to whatever site it it is in.  You may also need to give it time to replicate. The third change is to bind RPC replication to a specific port so you don&#8217;t have to open the firewall between the front-end and back-end servers as much.  I chose to bind it to port 12125, if you don&#8217;t do this you will have open up TCP ports 1024 and above on the firewall.  To bind RPC you need two registry entires, see: <a href="http://support.microsoft.com/kb/224196" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://support.microsoft.com/kb/224196');">http://support.microsoft.com/kb/224196</a></p>
<p><strong>Changes on the Front End Mail Server:</strong><br />
Besides Assigning the new IP to the front end exchange server, you might need to bind each service to this new IP.  This wasn&#8217;t apparent to me because I could still connect to the SMTP and 443 ports but I got disconnected immediately.  This indicates that even though the service is set not to be listening on that IP, it does listen and just disconnects if the first packets of the session are not destined for the IP the service is bound to.  I can&#8217;t image how someone at Microsoft thought that this would be a good way to design the network stack on their operating system but that seems to be the way it works.  To adjust what IP webmail (ports 80 and 443) are bound to, go to: Control Panel :: Administrative Tools :: Internet Information Services ( IIS ) Manager :: Local Computer :: Web Sites :: Right Click which ever web sites is for web mail :: Web Site Tab and then change the IP to whatever the new IP is for your front-end server, in our example, 172.16.1.2.  Then to change the SMTP port and other service are bound to, go to: Exchange System Manager :: Administrative Groups :: Your Administrative Group ( i.e. First Administrative Group ) :: Servers :: The Front-End Server :: Protocols and then expanded each protocol, right click the virtual server, and change the IP in the General Tab.</p>
<p><strong>Changes on the Back End Mail Server:</strong><br />
When I did this I did not have to make any changes to the back end server, but you can check the references section for things you may need to do.  Also, this <em>is</em> windows, so you should probably reboot the server for good measure, and maybe several times.</p>
<p><strong>Conclusion:</strong><br />
Although your experience may be different I hope this helps people trying to do a similar thing.</p>
<p><strong>References:</strong><br />
<a href="http://technet.microsoft.com/en-us/library/aa997436(EXCHG.65).aspx" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://technet.microsoft.com/en-us/library/aa997436(EXCHG.65).aspx');">http://technet.microsoft.com/en-us/library/aa997436(EXCHG.65).aspx</a><br />
<a href="ttp://windowsitpro.com/article/articleid/46571/what-ports-do-you-need-to-open-to-allow-communication-between-a-microsoft-exchange-server-back-end-server-and-an-exchange-front-end-server.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/ttp://windowsitpro.com/article/articleid/46571/what-ports-do-you-need-to-open-to-allow-communication-between-a-microsoft-exchange-server-back-end-server-and-an-exchange-front-end-server.html');"><span style="font-family: Arial; font-size: x-small;"><span>http://windowsitpro.com/article/articleid/46571/what-ports-do-you-need-to-open-to-allow-communication-between-a-microsoft-exchange-server-back-end-server-and-an-exchange-front-end-server.html</span></span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kbrandt.com/2009/02/moving-a-front-end-exchange-2003-server-into-your-dmz.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
