Kiosk lockdown
Hardening a public kiosk
Network, enclosure, updates and the failure modes that turn a screen into a weekend call-out.
The lockdown handles software. These are the other things that decide whether a public screen is still working in six months.
Network
The console is plain HTTP on the local network. That is a deliberate trade for zero configuration, and it means the network is your security boundary.
- Put signage panels on their own VLAN or a guest network with client isolation.
- Never expose port 8080 to the internet. There is no reason to, and no authentication design that would make it wise.
- Change the console password from its default before deployment.
- If the panels need no internet — and most do not — do not give them any.
Enclosure
Software cannot beat physical access. If the device is reachable:
- Enclose it, or mount it where the ports are not.
- Cover or remove the USB port. Turn USB debugging off regardless.
- Use a power supply that is fixed, not a plug somebody will borrow for a phone.
Updates
An Android device that reboots into a system update at eleven in the morning is a blank screen in front of customers.
- Set system updates to a window when nobody is looking, or turn automatic updates off and do them on a maintenance visit.
- Test one reboot before you leave site. If the board does not come back on its own, something in the install is wrong and you want to know now.
Power
- Mains, always. A tablet on battery will discharge and then live on a charger that gets unplugged.
- If the site loses power regularly, confirm the device is set to power on when power returns. Many sticks are; some are not, and that is a BIOS-level setting on the hardware, not something an app can control.
Storage
- Leave at least 2 GB free for Android on a 16 GB device.
- Set the media cache ceiling to fit. A cache that fills the disk causes symptoms that look like everything else.
The failure modes worth rehearsing
| Symptom | Usual cause |
|---|---|
| Bars reappear after a swipe | Overlay permission not granted |
| Board blank after a power cut | App not set to start on boot, or device not set to power on |
| Video stutters | H.265 or 4K on hardware that cannot decode it |
| Console unreachable | Device moved to a different VLAN, or DHCP gave it a new address |
| Board stale | A remote feed is down — the widget is correctly holding its last value |
| Screen dims after minutes | Android display timeout winning; pin it in the app's display settings |
What to leave on site
A card taped inside the enclosure with: the device's name, the admin PIN holder's name (not the PIN), the console address, and the date it was installed. The person who gets called out in a year will not be you.