m0n0wall is a project aimed at creating a complete, embedded firewall software package that, when used together with an embedded PC, provides all the important features of commercial firewall boxes (including ease of use) at a fraction of the price (free software).
m0n0wall is based on a bare-bones version of FreeBSD, along with a web server, PHP and a few other utilities. The entire system configuration of m0n0wall is stored in one single XML text file to keep things transparent.
m0n0wall is probably the first UNIX system that has its boot-time configuration done with PHP, rather than the usual shell scripts, and that has the entire system configuration stored in XML format.
Product's homepage
Here are some key features of "m0n0wall":
· web interface (supports SSL)
· serial console interface for recovery
· set LAN IP address
· reset password
· restore factory defaults
· reboot system
· wireless support (access point with PRISM-II/2.5/3 cards, BSS/IBSS with other cards including Cisco)
· captive portal
· 802.1Q VLAN support
· stateful packet filtering
· block/pass rules
· logging
· NAT/PAT (including 1:1)
· DHCP client, PPPoE, PPTP and Telstra BigPond Cable support on the WAN interface
· IPsec VPN tunnels (IKE; with support for hardware crypto cards and mobile clients)
· PPTP VPN (with RADIUS server support)
· static routes
· DHCP server
· caching DNS forwarder
· DynDNS client
· SNMP agent
· traffic shaper
· SVG-based traffic grapher
· firmware upgrade through the web browser
· Wake on LAN client
· configuration backup/restore
· host/network aliases
What's New in This Release: [ read full changelog ]
· a new image type "generic-pc-serial" has been added; the only difference to generic-pc is that it always uses the serial console (on COM1 at whatever speed the BIOS set it to)
· reintroduced original FreeBSD if_re driver (to fix missing support for 8139C+) and added Realtek patched driver under a new name (if_rg) with lower priority to ensure that the Realtek patched driver is only used if the stock FreeBSD if_re/if_rl can't handle the device
· DHCPv6: fixup for sla-id being 0
· disallow webGUI passwords with colons (:) as mini_httpd has trouble handling them
· fix broken captive portal sessions when per-user bandwidth limitation is used and changes in the webGUI are made that require reloading the traffic shaper (reported by Robert Solomon)