I currently have several dedicated Windows web servers which are hosted in different regions. Until now, I have been managing them without Active Directory, but I feels that it adds a lot of unnecessary administration overhead and restrictions.
Now I am wondering how the DCs would have to be secured. I do not have my own datacenter at my disposal, but I could rent two more dedicated servers and use those as DCs. I know that a DC should ideally be placed behind a dedicated firewall, but this would make renting the DCs a lot more expensive.
Would it be OK to use the Windows Firewall on the DCs instead of a separate firewall appliance? It might not be a textbook solution, but it seems like everything should be secure if I restrict access to the DC's incoming ports to the IP addresses of my own web servers. After all, it's the same thing I would do with a separate firewall appliance.
As I first read the question, I was really concerned about giving a DC a public IP at all. But thinking about it, I might consider this, IF the DC were not a member of my larger AD forest and the only machines in the domain were the web servers.
This would still allow me to manage my web servers with group policy and common authentication, with just one extra AD account to assign to myself, without exposing my real internal DCs to the big bad web. Effectively, you're setting up an AD just for the DMZ.
However, I still see some challenges to this approach:
I don't recommend it as the firewall by itself is really basic.
Having a AD for only your web application is no more insecure as having it under basic authentification, but check there for some tip (even if tagged for 2008): Active Directory Domain Services in the Perimeter Network (Windows Server 2008)
Windows Firewall is a pseudo-statefull for UDP, stateless for ICMP & statefull for Ipv4,Ipv6 (for filtering the traffic, for inspecting I didn't find any document, but if it do, it's really limited).
Hardware appliance are usually stateful.
Stateful :
Stateless:
From TechNet:
It scares the willies out of me to think about putting a Domain Controller out on the public Internet. That having been said, if you really can constrain the communication to the DC down to a group of machines using Windows Firewall in a default-deny posture with "Allow" rules for those authorized machines doesn't seem at all unreasonable to me.
Ideally I'd prefer an isolated management network to which the web servers and DC were attached, with the DC having no direct attachment to the Internet and a VPN to gain access to the management network. Given that you probably can get that in your hosting scenario what you're describing isn't an unreasonable fallback. Someone escalating privilege on one of the web servers, in your firewalled DC scenario, would be in a similar position in my isolated management network scenario. It's not all that much different as long as you're meticulous about treating the DC as an isolated machine and limiting its communication to/from the Internet (ideally completely disabling it once you've got a VPN to a "jump box" established).