we need to build a small captive portal on a debian linux virtual machine (vmware/virtual box).
captive portal is like when you login into a public network, e.g: airports, hotels, and you are redirected to a webpage, which you have to login / accept their terms, only then you have internet access.
the vm will have a wifi access point, which clients will connect to - and would be displayed an html login page from a local webserver (lamp is good enough).
once the user has logged in via the login page (we would provide the html), he's machine can access the internet.
we're open to suggestions regarding implementing it differently, e.g: install pfsense and customize it.