Préparer Ubuntu
Installer Ubuntu Desktop 24.04 LTS puis activer SSH pour l’administration distante.
sudo apt update
sudo apt upgrade -y
sudo apt install openssh-server -y
Pensez aussi à protéger le BIOS avec un mot de passe.
Procédure synthétique pour installer Ubuntu, préparer les dépôts, créer l’utilisateur kiosque, configurer l’auto-login, lancer Chrome et mettre en place le filtrage.
Installer Ubuntu Desktop 24.04 LTS puis activer SSH pour l’administration distante.
sudo apt update
sudo apt upgrade -y
sudo apt install openssh-server -y
Pensez aussi à protéger le BIOS avec un mot de passe.
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt update
sudo apt install --no-install-recommends xorg openbox -y
sudo apt install lightdm -y
sudo apt install squid -y
sudo systemctl enable squid
sudo systemctl start squid
sudo apt install e2guardian -y
sudo apt remove gnome-keyring -y
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb
wget https://dsi.ut-capitole.fr/blacklists/download/blacklists.tar.gz
tar -xzf blacklists.tar.gz
Au choix du gestionnaire d’affichage, sélectionner LightDM.
sudo adduser kiosk
sudo groupadd -f autologin
sudo usermod -a -G autologin kiosk
Puis modifier /etc/lightdm/lightdm.conf :
[Seat:*]
autologin-user=kiosk
autologin-user-timeout=0
autologin-session=openbox
sudo -u kiosk mkdir -p /home/kiosk/.config/openbox
sudo -u kiosk vi /home/kiosk/.config/openbox/autostart
Contenu du fichier autostart :
/home/kiosk/google-watch.sh &
Exemple de script /home/kiosk/google-watch.sh :
##!/bin/bash
export DISPLAY=:0
export XAUTHORITY=/home/kiosk/.Xauthority
# Appliquer le mapping clavier
xmodmap /home/kiosk/.Xmodmap
xbindkeys
# Désactiver Alt+F4, Ctrl+W, Ctrl+Shift+Q etc.
xmodmap -e "keycode 67 = NoSymbol" # F1
xmodmap -e "keycode 68 = NoSymbol" # F2
xmodmap -e "keycode 69 = NoSymbol" # F3
xmodmap -e "keycode 70 = NoSymbol" # F4
xmodmap -e "keycode 71 = NoSymbol" # F5
xmodmap -e "keycode 72 = NoSymbol" # F6
xmodmap -e "keycode 73 = NoSymbol" # F7
xmodmap -e "keycode 74 = NoSymbol" # F8
xmodmap -e "keycode 75 = NoSymbol" # F9
xmodmap -e "keycode 76 = NoSymbol" # F10
xmodmap -e "keycode 95 = NoSymbol" # F11
xmodmap -e "keycode 96 = NoSymbol" # F12
while true; do
if ! pgrep -f "google-chrome" > /dev/null; then
# Désactiver Alt+F4, Ctrl+W, Ctrl+Shift+Q etc.
xmodmap -e "keycode 67 = NoSymbol" # F1
xmodmap -e "keycode 68 = NoSymbol" # F2
xmodmap -e "keycode 69 = NoSymbol" # F3
xmodmap -e "keycode 70 = NoSymbol" # F4
xmodmap -e "keycode 71 = NoSymbol" # F5
xmodmap -e "keycode 72 = NoSymbol" # F6
xmodmap -e "keycode 73 = NoSymbol" # F7
xmodmap -e "keycode 74 = NoSymbol" # F8
xmodmap -e "keycode 75 = NoSymbol" # F9
xmodmap -e "keycode 76 = NoSymbol" # F10
xmodmap -e "keycode 95 = NoSymbol" # F11
xmodmap -e "keycode 96 = NoSymbol" # F12
google-chrome \
--incognito \
--no-first-run \
--disable-restore-session-state \
--disable-translate \
--disable-extensions \
--disable-infobars \
--start-maximized \
--overscroll-history-navigation=0 \
--noerrdialogs \
--disable-session-crashed-bubble \
--disable-component-update \
https://www.tbjws.be/ \
& fi
sleep 2
done
sudo chmod +x /home/kiosk/google-watch.sh
Modifier le fichier /home/kiosk/.config/openbox/rc.xml pour bloquer les
raccourcis, empêcher le menu contextuel et forcer un environnement minimal.
sudo -u kiosk vi /home/kiosk/.config/openbox/rc.xml
sudo cp -r blacklists/* /home/kiosk/
sudo vi /etc/e2guardian/lists/bannedsitelist
Ajouter les catégories nécessaires dans bannedsitelist selon les besoins.
Attention : plus il y a de listes, plus la charge CPU et mémoire peut augmenter.
sudo systemctl enable e2guardian
sudo systemctl start e2guardian
sudo systemctl status e2guardian
Configurer les politiques Chrome Enterprise, puis redémarrer la machine.
cd /etc/opt
sudo mkdir chrome
cd chrome
sudo mkdir policies
cd policies
sudo mkdir managed
cd managed
sudo vi chromepolicy.json
sudo reboot