I'm looking to set up a simple internet kiosk in the lobby of a motel. For security, I think it's best if I set up a simple Linux distribution whose only user-accessible program is a browser.
Would it be a good idea to take a distro like Ubuntu, set up a limited user account, and uninstall everything except a browser? It might also be possible to use a minimal VM like Blackbox and configure the browser to start when the computer is booted. Alternatively, I've seen some distros that have already been configured for kiosk use - anybody have experience using one?
How would you recommend configuring the system to discard any changes on reboot? It would be nice to allow the browser to be able to write temp files, but I don't want users to be able to make permanent changes to the system.
What browser would you recommend? Firefox is the traditional choice, but there are some other contenders. I know that Arora and Chromium aren't fully baked yet, but I am a fan of the WebKit rendering engine and I am hoping that it's possible to use somehow.
I think you can best customize the machine by putting Linux on, and using something like Opera in kiosk mode, as already mentioned by John T.
But really, just throwing Linux on it and leaving defaults is pretty useless just like giving users Windows. I recommend a Linux distro becase of customizability. If you are new with Linux, get someone who knows what they're doing (and I mean really knows what they're doing) and get them to limit the machine just enough.
Uninstalling "everything" from Linux (Ubuntu) machine might be a bit ... well ... problematic, since you can literally uninstall everything and literally leave just browser around. Including kernel, X11 GUI, and package manager. And removing just one of those three would leave you somewhat stranded.
Opera's kiosk mode can be launched by punching in:
You should probably configure a startpage / homepage, however. There's some help for kiosk related options:
Some more information available from Opera themselves.
When I need a lite window manager, I like IceWM.
With a little time and will, GNU/Linux systems can be customized to do anything. If you have more than one machine, this time will definitely pay off. If nothing else, there's no arcane concepts such as registry so backup of all user configuration can be simplified to just copying the home directory.
Just went to serverfault.com, there's a related and potentially interesting question over there.
I don't see the need to uninstall everything else, just throw on Opera in kiosk mode.
How would you recommend configuring the system to discard any changes on reboot?
What browser would you recommend?
I believe a few companies have been using imbedded Linux in Kiosk for some time now, try getting in touch with a company called 3Mtouch , I think I saw a demonstration at a convention once.
This is the sort of place where Knoppix shines. When your OS is on media that can't be written, 99% of your problems just go away. Why worry about leaving functionality when the user can't hurt anything?
Knoppix is also friendly for building your own custom distros, so you can choose what needs to be included, and what doesn't.
I was wondering how much of this is possible. Ideally i have one machine and another for backup but i may need multiple machines due to limitation
I'd like to setup a kiosk that 6 people can use. I'd need each person to be able to run an .NET app (or maybe a browser window) with keyboard and mouse support. From what i remember windows only supports one mouse/keyboard and i am sure linux is the same way. A solution is to have another window as a VM but now my issue are monitors.
How might i be able to hook up multiple monitors on a single machine?
This is totally doable, on either OS, although it can be done for free on linux.
The physical device issue is the easiest (keyboard, mice, monitors). New keyboard and mice work when they are plugged in in either OS. You can have as many as you want. For multiple monitors, all you need is multiple video cards. Windows and Linux will both utilize the new outputs, depending on your video driver. I myself have one video card with 6 outputs, the ATI HD5770. I'm using the fglrx driver, but the open source driver is also available (doesn't yet support video overlay for HD 5xxx cards and above).
The configuration option you are looking for in linux to separate these keyboard, mice, and monitors into separate controllable terminals is multiseat (NOT multihead). The problem with configuring multiseat in linux is that you need a video driver that's capable of KMS (Kernel Mode Setting). I know fglrx cannot do this, and I'm guessing that Nvidia's binary driver cannot as well. So, in short, use the open source driver!
Multiseat in Windows is possible through commercial products. There's one made by Microsoft called MultiPoint Server, which I believe is a whole new OS.