Available Network Appliances
OPNsense
Advanced firewall and routing platform
OpenWrt
Powerful wireless router firmware
MikroTik RouterOS
Professional router operating system
OPNsense Firewall
OPNsense is an open-source firewall and routing platform based on FreeBSD, offering enterprise features. Script:opnsense-vm.sh
Configure Network Interfaces
The script creates:
- WAN interface (first network device)
- LAN interface (second network device)
Set VM Resources
Configure:
- VM ID
- Hostname
- CPU cores (recommended: 2-4)
- RAM (recommended: 2-4 GB)
- Disk size (recommended: 16-32 GB)
OPNsense Features
- Stateful firewall
- VPN (OpenVPN, WireGuard, IPsec)
- Intrusion Detection/Prevention (IDS/IPS)
- Traffic shaping
- Web proxy with caching
- Load balancing
- High availability
- Multi-WAN support
- Plugin ecosystem
Initial OPNsense Setup
Default Credentials
Default Credentials
Username:
Password:
rootPassword:
opnsenseWeb Interface:- Default LAN IP:
192.168.1.1 - URL:
https://192.168.1.1
Network Configuration
Dual Network Setup
Dual Network Setup
OPNsense requires at least two network interfaces:WAN (vmbr0): Internet-facing interface
LAN (vmbr1): Internal network interfaceIn Proxmox, create a second bridge or use VLANs to separate WAN/LAN traffic.
LAN (vmbr1): Internal network interfaceIn Proxmox, create a second bridge or use VLANs to separate WAN/LAN traffic.
Recommended OPNsense Resources
| Use Case | CPU | RAM | Disk |
|---|---|---|---|
| Home/Small Office | 2 cores | 2 GB | 16 GB |
| Medium Business | 4 cores | 4 GB | 32 GB |
| Enterprise | 8+ cores | 8+ GB | 64+ GB |
OpenWrt Router
OpenWrt is a Linux-based router firmware with extensive package support and customization. Script:openwrt-vm.sh
OpenWrt VM uses minimal resources (1 GB disk by default) and is perfect for testing or lightweight routing tasks.
OpenWrt Features
- Package management (opkg)
- Advanced routing protocols
- QoS and traffic control
- VPN support (OpenVPN, WireGuard)
- Wireless management (with compatible hardware)
- Extensive customization
- Active community packages
Initial OpenWrt Setup
Set Root Password
First login has no password
- Click “Login” (no password needed initially)
- Go to System → Administration
- Set a root password
- Save & Apply
Configure Network
- Network → Interfaces
- Configure WAN interface (typically DHCP or Static)
- Configure LAN interface (default: 192.168.1.1/24)
- Save & Apply
Network Configuration
Dual Interface Setup
Dual Interface Setup
Like OPNsense, OpenWrt benefits from separate WAN/LAN interfaces:
- eth0 → WAN (vmbr0)
- eth1 → LAN (vmbr1)
Common OpenWrt Packages
MikroTik RouterOS CHR
MikroTik RouterOS Cloud Hosted Router (CHR) is a professional routing platform. Script:mikrotik-routeros.sh
MikroTik CHR License Levels
| License | Speed Limit | Price |
|---|---|---|
| Free | 1 Mbps | Free |
| P1 | 1 Gbps | $45 |
| P10 | 10 Gbps | $95 |
| P-Unlimited | Unlimited | $250 |
Initial MikroTik Setup
MikroTik RouterOS Features
- Advanced routing (BGP, OSPF, RIP)
- MPLS
- VPN (L2TP, PPTP, OpenVPN, IPsec, WireGuard)
- Firewall and NAT
- Quality of Service (QoS)
- Hotspot management
- User management
- Scripting engine
- Extensive monitoring
Quick Configuration Example
Network Design Considerations
Bridge Configuration in Proxmox
Creating Network Bridges
Creating Network Bridges
For proper WAN/LAN separation, create multiple bridges in Proxmox:In Proxmox Web UI:
- Node → System → Network
- Create → Linux Bridge
- vmbr0: WAN (connected to internet-facing NIC)
- vmbr1: LAN (internal network)
- Apply configuration
VLAN Configuration
Using VLANs Instead of Multiple Bridges
Using VLANs Instead of Multiple Bridges
Alternatively, use VLANs on a single bridge:Configure VLAN trunking on the physical switch.
High Availability Setup
Configure Cluster
Set up HA clustering in the firewall OS
- OPNsense: System → High Availability
- MikroTik: /interface vrrp
Resource Allocation Guidelines
CPU Allocation
Single Core (Testing)
Single Core (Testing)
- Basic testing
- Lab environments
- Low traffic (under 10 Mbps)
2 Cores (Home/SOHO)
2 Cores (Home/SOHO)
- Home networks
- Small office (1-10 users)
- Traffic up to 100 Mbps
- VPN usage
4+ Cores (Business)
4+ Cores (Business)
- Medium business (10-50 users)
- Traffic up to 1 Gbps
- IDS/IPS enabled
- Multiple VPN connections
- Traffic shaping
Memory Recommendations
| Firewall | Minimum | Recommended | Advanced |
|---|---|---|---|
| OPNsense | 1 GB | 4 GB | 8+ GB |
| OpenWrt | 256 MB | 512 MB | 1 GB |
| MikroTik | 256 MB | 1 GB | 2+ GB |
Troubleshooting
No internet access through firewall
No internet access through firewall
- Verify WAN interface has IP address
- Check default gateway configuration
- Ensure NAT/masquerading is enabled
- Verify firewall rules allow outbound traffic
- Check DNS configuration
Cannot access web interface
Cannot access web interface
- Verify LAN IP address configuration
- Check network cable/bridge connection
- Ensure client is on correct subnet
- Try accessing via VM console first
- Check firewall rules on WAN interface
Slow throughput performance
Slow throughput performance
- Increase CPU cores
- Disable CPU limit in Proxmox
- Enable virtio network drivers
- Disable IDS/IPS if not needed
- Check for CPU throttling
- Consider hardware offloading
VPN connection fails
VPN connection fails
- Verify VPN port forwarding
- Check firewall rules
- Ensure certificates are valid
- Verify routing configuration
- Check logs for specific errors
Performance Optimization
Next Steps
Linux VMs
Deploy Linux virtual machines
Home Assistant
Set up home automation
VM Overview
Back to all VM scripts