The purpose of this lab is to develop knowledge and experience in the application of virtualization software, firewall/router software, and networking services and applications across a self-built virtualized network homelab. Tools used for this included VMware and pfSense. Credit to VMware Advisor on Youtube for assistance with this project. His videos are incredibly insightful and thorough.
- pfSense implementation and configuration in virtual environment.
- Firewall rule configurations for different network types.
- VMware network adapter configuration for multiple types of networks.
- DHCP configuration for subnets.
- Bridging configuration for network to network.
- Leveraging draw.io.
- pfSense.
- VMware.
- Draw.io.
| Name | IP | Subnet Mask | Description |
|---|---|---|---|
| VMNet0 - WAN | 192.1681.1.0/24 | 255.255.255.0 | |
| VMNet11 - LAN01 | 10.0.0.0/24 | 255.255.255.0 | Windows AD Environment. |
| VMNet - LAN02 | 192.168.10.0/24 | 255.255.255.0 | Home Use. Basic Config. |
| VMNet - DMZ | 172.16.0.0/16 | 255.255.0.0 | Enterprise Environment. |
- Guest OS: FreeBSD 14 x64
- CPU: 1P / 2C
- Memory: 2GB
- Storage: 32GB
- Network: Bridge/LAN01/LAN02/DMZ
- Windows Server.
- Linux Server.
- Windows 11.
- Ubuntu.
- Enable DHCP on LAN02 / DMZ. Note that WAN / LAN01 are already configured with pfSense defaults.
- Test LAN01 / LAN02 /DMZ Connections using Diagnostics Ping in pfSense.
- Ping google.com
- Ping other gateway IPs.
- Open ports for LAN02 / DMZ.
- Block networking for LAN01 / LAN02 / DMZ.
- Test environment:
- Setup and test DHCP in Server OS.
- Setup and test Client OS for WAN to DMZ.
- pfSense Services Tab.
- LAN02
- Check Enable DHCP server on LAN02 interface.
- Select range for DHCP: 192.168.10.5 - 192.168.10.250.
- Save and Restart Service.
- Repeat for DMZ.
- DMZ.
- Check Enable DHCP server on DMZ interface.
- Select range for DHCP: 172.16.0.5 - 172.16.255.254.
- On Ubuntu Client, change network adapter to LAN02.
- Ping:
- 192.168.10.254.
- 8.8.8.8
- google.com
- 10.0.0.254.
- Change network adapter to DMZ.
- Ping:
- 172.16.0.1
- 8.8.8.8
- google.com
- 10.0.0.254
- Allow Internet Access for LAN02. Add Rule.
- Action: Pass.
- Interface: LAN02.
- Protocol: Any.
- Source: LAN02 net.
- Destination: Any.
- Ports: Any.
- Block Connection to LAN02. Add Rule.
- Action: Block.
- Interface: LAN02.
- Protocol: Any.
- Source: Any.
- Destination: LAN01.
- Ports: Any.
- Block Connection to DMZ. Add Rule.
- Action: Block.
- Interface: LAN02.
- Protocol: Any.
- Source: Any.
- Destination: DMZ.
- Ports: Any.
- Note:
- The order in which you list rules is critical. "Top-Down" lists start from the list and apply sequentially. Block rules should be added first in order to prevent unwanted traffic.
- Block vs Reject is significant. Reject will provide a reason which can give additional intelligence to an attacker. Unnecessary unless I am configuring for a specific reason.
- Allow Ping for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: ICMP.
- Source: DMZ.
- Destination: Any.
- Ports: Any.
- Allow NTP for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: UDP.
- Source: DMZ.
- Destination: Any.
- Ports: 123.
- Allow HTTPS for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: TCP.
- Source: DMZ.
- Destination: Any.
- Ports: 443.
- Allow HTTP for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: TCP.
- Source: DMZ.
- Destination: Any.
- Ports: 80.
- Allow DNS for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: UDP.
- Source: DMZ.
- Destination: DMZ.
- Ports: 53.
- Allow SSH for DMZ. Add Rule.
- Action: Pass.
- Interface: DMZ.
- Protocol: TCP.
- Source: DMZ.
- Destination: DMZ.
- Ports: 22.
- Block Webconfig for DMZ. Add Rule.
- Action: Block.
- Interface: DMZ.
- Protocol: HTTPS.
- Source: DMZ.
- Destination: This Firewall.
- Ports: 443.
- Block LAN02 for DMZ. Add Rule.
- Action: Block.
- Interface: DMZ.
- Protocol: Any.
- Source: DMZ.
- Destination: LAN02.
- Ports: Any.
- Block LAN01 for DMZ. Add Rule.
- Action: Block.
- Interface: DMZ.
- Protocol: Any.
- Source: DMZ.
- Destination: LAN01.
- Ports: Any.