So I found https://github.com/TKCERT/pfFocus and whipped up a bbcode formatter …
Here's what I actually have configured. (I need to submit the bbcode formatter to the author.)
☱ Outputting to stdout ...
pfSense
Version 15.8
System
| Option | Value |
| –---- | –--- |
| hostname | pfSense |
| domain | private.xxx.xxx |
| timeservers | 0.pfsense.pool.ntp.org 1.pfsense.pool.ntp.org 2.pfsense.pool.ntp.org 3.pfsense.pool.ntp.org |
| timezone | America/Los_Angeles |
| language | en_US |
| dnsserver | |
Interfaces
| Name | Enabled | Description | Interface | Address | Subnet |
| –-- | –----- | –--------- | –------- | –----- | –---- |
| lan | x | PRIVATE | igb1 | 10.20.20.1 | 24 |
| opt1 | x | GUEST | igb1_vlan1000 | 10.10.10.1 | 24 |
| wan | x | WAN_COMCAST | igb0 | dhcp | |
VLANs
| Name | Tag | Interface | Description |
| –-- | –- | –------- | –--------- |
| igb1_vlan1000 | 1000 | igb1 | |
DHCP ranges
DHCPd configuration for {lan}(#interfaces "PRIVATE")
| Option | Value |
| –---- | –--- |
| enable | x |
| defaultleasetime | |
| maxleasetime | |
Ranges
| From | To |
| –-- | – |
| 10.20.20.101 | 10.20.20.254 |
Static mappings
| MAC | Address | Hostname |
| –- | –----- | –------ |
| 00:1c:2a:00:4c:64 | 10.20.20.2 | envisalink |
| 80:2a:a8:4f:98:0a | 10.20.20.97 | unifi |
| 90:02:a9:92:7b:42 | 10.20.20.98 | dvr |
| 00:1d:c0:62:01:c0 | 10.20.20.99 | envoy |
| 0c:c4:7a:30:17:f2 | 10.20.20.100 | tendo |
DHCPd configuration for {opt1}(#interfaces "GUEST")
| Option | Value |
| –---- | –--- |
| enable | x |
| defaultleasetime | |
| maxleasetime | |
Ranges
| From | To |
| –-- | – |
| 10.10.10.2 | 10.10.10.254 |
NAT rules
| Disabled | Interface | Source | Destination | Protocol | Target | Local port | Description |
| –------ | –------- | –---- | –--------- | –------ | –---- | –-------- | –--------- |
| x | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):25565-25566 | tcp | 10.20.20.100 | 25565 | Port Foward Minecraft |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):9418 | tcp | 10.20.20.100 | 9418 | Port Foward 9418 (git) to ssh |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):867 | tcp | 10.20.20.100 | 22 | Port Forward 867 to ssh |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):443 | tcp | 10.20.20.100 | 443 | Port Forward HTTPS |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):80 | tcp | 10.20.20.100 | 80 | Port Forward HTTP |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):993 | tcp | 10.20.20.100 | 993 | Port Foward IMAPS |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):1587 | tcp | 10.20.20.100 | 1587 | Port Forward SMTP Auth |
| | {wan}(#interfaces "WAN_COMCAST") | any | {wanip}(#interfaces "WAN_COMCAST"):2525 | tcp | 10.20.20.100 | 2525 | Port Forward SMTP for EasyDNS |
Filter rules
| Disabled | Interface | Type | IP | Protocol | Source | Destination | Description |
| –------ | –------- | –-- | – | –------ | –---- | –--------- | –--------- |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:9418 | NAT Port Foward 9418 (git) to ssh |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:22 | NAT Port Forward 867 to ssh |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:993 | NAT Port Foward IMAPS |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:1587 | NAT Port Forward SMTP Auth |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:2525 | NAT Port Forward SMTP for EasyDNS |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:80 | NAT Port Forward HTTP |
| | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:443 | NAT Port Forward HTTPS |
| x | {wan}(#interfaces "WAN_COMCAST") | | | tcp | any | 10.20.20.100:25565-25566 | NAT Port Foward Minecraft |
| | {lan}(#interfaces "PRIVATE") | reject | inet46 | | any | {opt1}(#interfaces "GUEST") | |
| | {lan}(#interfaces "PRIVATE") | pass | inet | | {lan}(#interfaces "PRIVATE") | any | Default allow LAN to any rule |
| | {lan}(#interfaces "PRIVATE") | pass | inet6 | | {lan}(#interfaces "PRIVATE") | any | Default allow LAN IPv6 to any rule |
| | {opt1}(#interfaces "GUEST") | reject | inet46 | | any | {lan}(#interfaces "PRIVATE") | |
| | {opt1}(#interfaces "GUEST") | pass | inet | | any | any | |
| | {opt1}(#interfaces "GUEST") | pass | inet6 | | any | any | |
Syslog configuration
| Option | Value |
| –---- | –--- |
| enable | x |
| logall | x |
| logfilesize | 1048576 |
| nentries | 100 |
| remoteserver | 10.20.20.100 |
| remoteserver2 | |
| remoteserver3 | |
| sourceip | |
| ipproto | ipv4 |
☰ Successfully outputted pfSense config as bbcode.