Looking for a good solution for a hands-free kiosk.
I want to setup a bunch of laptops to be web kiosks, I'll organize my wants into a list so that it's easier to skim:
Open a version of Firefox with the normal ui, tabs and all.
Automatically enters a session with no user input on reboot
Doesn't allow doing anything but interacting with Firefox (kinda obvious, kiosk and all)
Auto-login
Automatic updates, with them being applied on restart
Firefox settings reset on reboot
Nice to haves:
nice Plymouth screen to hide the scary code on startup.
completely block any attempts to change configuration on Firefox
ad-block
easy deployment to a bunch of machines.
If these sound like pretty strict requirements, they are, I'm doing this to attempt to get an internship by making my school's web kiosk laptops not suck (they currently run a janky install of Ubuntu 18.04)
Any help would be greatly appreciated, and I'd be glad to add more information.
There's no way to srsly prevent a full-bloat browser from messing with its environment. Make a static VM image and reboot it at the beginning of every session.
There’s no way to srsly prevent a full-bloat browser from messing with its environment.
Can you elaborate on this? I'm curious as to what manner a browser like Firefox could be exploited in order to affect its environment outside of something like a sandbox escape.
Tools:preferences, about:config, file downloads, form prefills, remember password, etc. yes you can try to lock everything but it's too easy to miss something. And then there are outright RCEs. There's just too much attack surface.
I would just go with Debian personally since it's not updated very often.
You can add Firefox to startup applications several ways, such as startup apps GUI on any desktop environment.
Most desktop environments have an "automatic login" option you can configure. You can also disable or remove the login manager
You can configure some desktop environments (xfce I know for sure) to not launch the panel. Don't forget to also look up how to disable your TTY hotkeys!
Install the unattended-upgrades package and Debian/Ubuntu will update automatically. I hardly ever have to touch the updates on my Debian machines
You can make Firefox's config directory read only and it won't be able to write to it
Nice to haves:
Plymouth can be installed on Debian, and has a few themes that are simple spinners
You can do this. Look up how to do the policies.json file. Since the Firefox directory will be read only, it won't be able to be changed by the user
I think you can still install add-ons like an ad blocker with policies.json, but not 100% dure