This guide was last tested with Debian 9.8(Stretch) GNU/Linux.
Note that this guide is not intended to create a perfectly secure system, and may be vulnerable to tampering by knowledgable users.
We start from beginning that you have already installed a new box with Debian Stretch, and have access to the shell.
So lets start…
1 – Create a user on the system for the kiosk.
useradd -m kiosk-user
2 – Update the package list.
apt update
3 – Install required packages.
apt install sudo xorg chromium openbox lightdm
4 – After this install everything we need .
apt install fail2ban whois tcpdump speedometer iptraf bmon sudo sssd-ldap sssd-tools nmap dnsutils logwatch htop netfilter-persistent rsync postfix pwgen iptables-persistent netfilter-persistent aptitude vim mc iotop psmisc open-vm-tools build-essential linux-headers - $(uname -r) nfs-kernel-server nfs-common unclutter zabbix-agent -y
5 – Now remove all the users created at installation.
userdel user_created_at_installation
6 – Edit the lightdm config script at /etc/lightdm/lightdm.conf to enable autologin.
This has to be done in the user(Kiosk-user) home directory.
[SeatDefaults] autologin-user=kiosk-user user-session=openbox
7 – Reboot and check/verify autologin working.
You should now be logged in as kiosk-user automatically.
8 – Create the openbox config directory for kiosk-user if it does not exist.
su - kios-user. mkdir /home/kiosk-user/.config
9 – Create a script at $HOME/.config/openbox/autostart for the kiosk-user.
This script will be run at login.
10 – To disable moitor auto power off, add the following to the autostart created before.
@xset -dpms xset s off xset s noblank
11 – Remove the mouse pointer, adding the following to autostart file.
@unclutter -idle 0
12 – Finally add the the following to autostart
chromium --ignore-autoplay-restrictions \ --no-first-run \ --disable \ --disable-translate \ --disable-infobars \ --disable-suggestions-service \ --start-maximized \ --incognito \ --no-user-gesture-required \ --kiosk "https://my_website_content_to Kiosk "
Note:
The latest versions of chromium do not play videos automaticly, you have to change some flags … check flags…