Custom Portal for pfSense Free for all policy, but need to observe/monitor users and usage. Besides username/password or voucher everybody can connect their systems by themselves. RADIUS MAC Auth is used and a custom page aka hack to register name, email, and MAC address is provided. Installation: 1. Set up pfSense 2. Clone git repo to /home on the pfSense box 3. Upload captiveportal-... files through Captive Portal File Manager Cronjobs: 55 23 * * Sun /home/pfSensePortal/weekly_maintenance.sh 0 3 * * * /usr/local/sbin/squid -k rotate 0 4 * * * /home/pfSensePortal/download_backup.sh @reboot /home/pfSensePortal/delete_squid_cache.sh @reboot /home/pfSensePortal/send_gmail_after_startup.sh Facebook DNS based blocking 1. Add Firewall Alias with URL Table pointing to http://172.16.1.2:8000/captiveportal-facebook_subnets.txt 2. Create schedule to include working hours 3. Add Floating Firewall Rules with Destination Alias name of Firewall Alias name of 1. 4. Optional: Update list of Facebook subnets once in a while with for ip in `whois -h whois.radb.net '!gAS32934' | grep /`; do echo $ip; done