Passer au contenu principal

Serveur et fichiers de configuration

Mise en place de la configuration sur le serveur

La configuration des kiosques (qui détermine notamment leur finalité) est réalisée à partir de 4 fichiers téléchargés à chaque démarrage. Ils doivent donc être placés sur un serveur web accessible par les kiosques (intranet, site web de la collectivité…) :

  • config.cfg
    contient les éléments de configuration d'OpenKiosk
  • filters.txt
    contient les listes d'URL accessibles (liste blanche) ou interdites (liste noire)
  • config_system.json
    contient les éléments de configuration du système
  • boot_script.sh
    contient une liste de commandes exécutées en root au démarrage du kiosque

Exemples de fichiers de configuration :

Fichier config.cfg :

// Ficher de configuration OpenKiosk
pref("browser.startup.homepage", "https://example.com/");
pref("browser.download.dir", "/tmp");
pref("openkiosk.fullscreen.enabled", false);
pref("openkiosk.filters.enabled", true);
pref("openkiosk.filters.protocol.about.enabled", false);
pref("openkiosk.filters.protocol.blob.enabled", true);
pref("openkiosk.filters.protocol.data.enabled", true);
pref("openkiosk.filters.protocol.file.enabled", false);
pref("openkiosk.filters.protocol.ftp.enabled", false);
pref("openkiosk.filters.protocol.javascript.enabled", false);
pref("openkiosk.filters.protocol.mailto.enabled", false);
pref("openkiosk.filters.protocol.res.enabled", false);
pref("openkiosk.filters.protocol.sms.enabled", false);
pref("openkiosk.filters.protocol.tel.enabled", false);
pref("openkiosk.filters.protocol.viewsource.enabled", false);
pref("openkiosk.session.inactiveTerminal.enabled", true);
pref("openkiosk.session.inactiveTerminal.minutes", 10);
pref("openkiosk.session.inactiveTerminal.warn.enabled", false);
pref("openkiosk.session.inactiveTerminal.warn.secondes", 10);
pref("openkiosk.session.inactiveTerminal.warn.manual.enabled", false);
pref("openkiosk.session.cookies.enabled", false);
pref("openkiosk.tabs.enabled", true);
pref("openkiosk.osk.enabled", false);
pref("openkiosk.ui.urlbar.enabled", false);
pref("openkiosk.ui.context.menu.enabled", false);
pref("openkiosk.ui.context.search.enabled", false);
pref("openkiosk.admin.password", "e52f15f817710380d47db05179ec4deb,98c34518c3ca6afa539bdcf87ce274b8bc56938f77d4917b02c38e6468623d43");
pref("openkiosk.print.web.enabled", false);
pref("openkiosk.keys.settings.enabled", true);
pref("openkiosk.file.upload.enabled", false);
pref("security.mixed_content.block_active_content", false);
pref("permissions.default.microphone", 0);
pref("permissions.default.camera", 0);
pref("openkiosk.filters.strictmode.enabled", true);
pref("openkiosk.filters.file", "/usr/lib/OpenKiosk/filters.txt");
pref("print.always_print_silent", false);

Fichier filters.txt :

# Whitelist (* = wilcard pour autoriser tous les sous-domaines)
filter[https://*.ma-mairie.fr, ALL]
filter[https://*.gouv.fr, ALL]
filter[https://*.example.com, ALL]

Fichier config_system.json :

{
   "screen_saver": "true",
   "screen_saver_minutes": 10,
   "cursor": "true",
   "sound": "true"
}

Fichier boot_script.sh :

# Script qui s'éxecute en root au démarrage