I’m not a professional network engineer either but here’s me 5c and take them for what it’s worth. Some considerations are necessary here which may help drive the decision; do the servers in the DMZ need to talk to each other or are they all completely stand-alone? What are they actually running in terms of OS and applications and how secure......
- Create a management network to access your firewall, hypervisors, network devices, etc. Separate switches if possible, separate VLAN's if not.
- Don't allow any traffic from/to your firewall on the production network. Only allow traffic *through* it. The firewall should make for a hole in the network. I've deployed (not OPNsense) firewalls that increment the TTL so that they don't even show up in traceroute. Management web interfaces, SSH access, etc. all listen on your management network only.
- Have as little database/directory/business information in the DMZ as possible. Database authentication for your websites, RADIUS for AD logins with RODC as a last resort. The full data assets stay on the internal network.
- DMZ servers should be stateless, ideally able to be deleted at the slightest whiff of suspicion, and quickly rebuilt through orchestration. Servers are cattle, not pets. Load balancers make this low impact to your clients.
- VLAN's are cheap. If webservers have less than a few dataflows between them (ideally zero) put them on separate DMZ's. Trunk your VLAN's through resilient physical interfaces to ESXi and OPNsense to reduce your cabling. Consider making OPNsense a virtual server to benefit from vShpere HA and vNIC's instead of VLAN's.
- IPS is a must. Mistrust your DMZ hosts with the greatest of paranoia. Even if you have restricted the traffic by firewall rules to what is allowed, you still need to make sure it follows normal patterns.
- Use a distributed vSwitch to centralize your port group management if you can afford the vSphere Enterprise+ licence, or if you need that for other features.
All of the DB’s on the DMZ are part of the individual web servers. There all built on Ubuntu from what I have found to there just LAMP stacks, am I saying that right, and are currently 16.05. only a few ports are open like 80, 443 and 22. SSH is setup with a pem for what that’s worth, I would think more than password.
I have not really read up on the Distribution vSwitch functionality or what/how it differs from a normal vSwitch.