issue93:kiosque_ubuntu
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
issue93:kiosque_ubuntu [2015/02/28 14:24] – créée andre_domenech | issue93:kiosque_ubuntu [2015/03/19 10:41] – [5] auntiee | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ===== 1 ===== | ||
+ | ** | ||
If you work in a place open to the public, for example a library or a hospital, sometimes it could be useful to provide a computer to the visitors. Such a computer, even if equipped with a mouse and a keyboard, must be configured in a way that people should not be able to use all the system functions, but only a limited set of them. For instance, people could use the computer to access the Internet, or only an internal website providing information related to your company or your activity. And you must configure the system in order to prevent shell access, and inhibit the launch of all the other programs you don't wish to offer to the visitors. | If you work in a place open to the public, for example a library or a hospital, sometimes it could be useful to provide a computer to the visitors. Such a computer, even if equipped with a mouse and a keyboard, must be configured in a way that people should not be able to use all the system functions, but only a limited set of them. For instance, people could use the computer to access the Internet, or only an internal website providing information related to your company or your activity. And you must configure the system in order to prevent shell access, and inhibit the launch of all the other programs you don't wish to offer to the visitors. | ||
Ligne 4: | Ligne 6: | ||
You can eventually configure a PC attached to a large TV, without keyboard and mouse, in order to show information slides or videos. To achieve this last goal, you can take a look to Xibo instead, which is a digital signage content management system (http:// | You can eventually configure a PC attached to a large TV, without keyboard and mouse, in order to show information slides or videos. To achieve this last goal, you can take a look to Xibo instead, which is a digital signage content management system (http:// | ||
+ | ** | ||
+ | Si vous travaillez dans un lieu ouvert au public, par exemple une bibliothèque ou un hôpital, il pourrait parfois être utile de fournir un ordinateur pour les visiteurs. Un tel ordinateur, même équipé d'une souris et d'un clavier, doit être configuré de sorte que les gens ne soient pas en mesure d' | ||
+ | |||
+ | Un tel ordinateur est un kiosque (http:// | ||
+ | |||
+ | Vous pouvez éventuellement configurer un PC relié à une téléviseur grand écran, sans clavier ni souris, afin de montrer des diapositives d' | ||
+ | |||
+ | ** | ||
Installing | Installing | ||
Ligne 30: | Ligne 40: | ||
sudo mkdir /opt/kiosk | sudo mkdir /opt/kiosk | ||
+ | ** | ||
+ | Installation | ||
+ | |||
+ | Commençons par l' | ||
+ | |||
+ | Veuillez garder à l' | ||
+ | |||
+ | Nous allons donc installer Ubuntu, permettant des mises à jour de sécurité automatiques et l' | ||
+ | |||
+ | Après le premier redémarrage, | ||
+ | |||
+ | sudo apt update | ||
+ | |||
+ | sudo apt upgrade | ||
+ | |||
+ | Et installez ces paquets : | ||
+ | |||
+ | sudo apt install --no-install-recommends xorg openbox firefox xscreensaver plymouth-theme-sabily cups | ||
+ | |||
+ | Installez CUPS si vous voulez permettre à vos visiteurs d' | ||
+ | |||
+ | Créez un utilisateur, | ||
+ | |||
+ | sudo useradd -m kiosk | ||
+ | |||
+ | sudo mkdir /opt/kiosk | ||
+ | |||
+ | ===== 2 ===== | ||
+ | ** | ||
Set up the environment | Set up the environment | ||
Ligne 57: | Ligne 96: | ||
sudo dpkg-reconfigure x11-common | sudo dpkg-reconfigure x11-common | ||
+ | ** | ||
+ | Mise en place de l' | ||
+ | |||
+ | Dans cette configuration, | ||
+ | |||
+ | Le script ci-dessus sera appelé par upstart au démarrage du système. Essentiellement, | ||
+ | |||
+ | sudo chmod +x / | ||
+ | |||
+ | Maintenant vous devez créer un script upstart : | ||
+ | |||
+ | sudo vi / | ||
+ | |||
+ | start on (filesystem and stopped udevtrigger) | ||
+ | |||
+ | stop on runlevel [06] | ||
+ | |||
+ | console output | ||
+ | emits starting-x | ||
+ | |||
+ | respawn | ||
+ | |||
+ | exec sudo -u kiosk startx / | ||
+ | |||
+ | Comme X a besoin des privilèges root pour démarrer, vous devez taper cette commande et sélectionner « Anybody » (quiconque). | ||
+ | |||
+ | sudo dpkg-reconfigure x11-common | ||
+ | |||
+ | ** | ||
At this point we are nearly finished. You need to reboot the machine. | At this point we are nearly finished. You need to reboot the machine. | ||
Ligne 73: | Ligne 141: | ||
To continue the configuration, | To continue the configuration, | ||
+ | ** | ||
+ | À ce stade, nous avons presque fini. Vous devez redémarrer la machine. | ||
+ | |||
+ | sudo reboot | ||
+ | |||
+ | Et Firefox devrait démarrer automatiquement. | ||
+ | |||
+ | Apportez les modifications souhaitées maintenant, comme l' | ||
+ | |||
+ | Enfin, vous devez installer l' | ||
+ | |||
+ | Merci de lire les documents attentivement (http:// | ||
+ | |||
+ | Fermez Firefox. À ce stade Firefox redémarrera dans un mode kiosque verrouillé. | ||
+ | |||
+ | Pour continuer la configuration, | ||
+ | |||
+ | ===== 3 ===== | ||
+ | ** | ||
Last steps. | Last steps. | ||
Ligne 79: | Ligne 166: | ||
Place the xscreensaver configuration file in the kiosk user home directory. The timeout option is the one you need to change in order to suit your needs (in this example the kiosk will be reloaded every quarter of an hour). | Place the xscreensaver configuration file in the kiosk user home directory. The timeout option is the one you need to change in order to suit your needs (in this example the kiosk will be reloaded every quarter of an hour). | ||
+ | ** | ||
+ | |||
+ | Dernières étapes. | ||
+ | |||
+ | L' | ||
+ | |||
+ | Placez le fichier de configuration de xscreensaver dans le répertoire personnel de l' | ||
+ | ** | ||
sudo vi / | sudo vi / | ||
Ligne 102: | Ligne 197: | ||
kill $PID | kill $PID | ||
+ | ** | ||
+ | sudo vi / | ||
+ | |||
+ | timeout: | ||
+ | lock: False | ||
+ | verbose: | ||
+ | splash: | ||
+ | captureStderr: | ||
+ | dpmsEnabled: | ||
+ | dpmsQuickOff: | ||
+ | mode: one | ||
+ | selected: | ||
+ | programs: resetkiosk.sh -root \n\ | ||
+ | |||
+ | Ensuite, vous devez lancer le script qui sera appelé par xscreensaver après la période d' | ||
+ | |||
+ | sudo vi / | ||
+ | |||
+ | #!/bin/bash | ||
+ | |||
+ | PID=`ps -u $UID -f |grep firefox |grep -v grep | awk '{ print $3 }'` | ||
+ | |||
+ | kill $PID | ||
+ | |||
+ | ==== 4 ==== | ||
+ | ** | ||
Snapshot Time | Snapshot Time | ||
Ligne 112: | Ligne 233: | ||
tar cpvf / | tar cpvf / | ||
+ | ** | ||
+ | L' | ||
+ | |||
+ | Enfin, vous devez prendre une photo (snapshot) du répertoire personnel de l' | ||
+ | |||
+ | Alors, n' | ||
+ | |||
+ | rm -rf / | ||
+ | |||
+ | tar cpvf / | ||
+ | |||
+ | ** | ||
Configuring GRUB and disabling ttys | Configuring GRUB and disabling ttys | ||
Ligne 139: | Ligne 272: | ||
EOF | EOF | ||
+ | ** | ||
+ | Configuration de GRUB et désactivation des ttys | ||
+ | |||
+ | Une autre tâche utile à accomplir est liée à un certain renforcement du système. Par exemple, vous pouvez empêcher des utilisateurs malins de démarrer le système en mode mono-utilisateur, | ||
+ | |||
+ | Commençons par GRUB. Tout d' | ||
+ | |||
+ | sudo vi / | ||
+ | |||
+ | ... | ||
+ | GRUB_TIMEOUT=0 | ||
+ | GRUB_CMDLINE_LINUX_DEFAULT=" | ||
+ | ... | ||
+ | |||
+ | Ensuite, vous pouvez définir un mot de passe afin d' | ||
+ | |||
+ | Mettez les lignes suivantes à la fin de / | ||
+ | |||
+ | cat << EOF | ||
+ | |||
+ | set superusers=" | ||
+ | |||
+ | password_pbkdf2 root | ||
+ | < | ||
+ | |||
+ | EOF | ||
+ | |||
+ | ===== 5 ===== | ||
+ | ** | ||
At this point, a user and a password will be requested for each GRUB menu entry, even for booting Linux in the normal way; that is what we don't want. So add the –unrestricted parameter (shown below in black) in each menuentry line of the configuration files. For instance in / | At this point, a user and a password will be requested for each GRUB menu entry, even for booting Linux in the normal way; that is what we don't want. So add the –unrestricted parameter (shown below in black) in each menuentry line of the configuration files. For instance in / | ||
Ligne 158: | Ligne 320: | ||
sudo rm / | sudo rm / | ||
+ | ** | ||
+ | À ce stade, un utilisateur et un mot de passe seront demandés pour chaque entrée du menu GRUB, même pour le démarrage de Linux de façon normale ; c'est ce que nous ne voulons pas. Ajoutez donc le paramètre -unrestricted (montré ci-dessous en noir) à chaque ligne de menu dans les fichiers de configuration. Par exemple, dans / | ||
+ | |||
+ | ... | ||
+ | echo " | ||
+ | --unrestricted ${CLASS} \$menuentry_id_option ' | ||
+ | else | ||
+ | | ||
+ | echo " | ||
+ | --unrestricted ${CLASS} \$menuentry_id_option ' | ||
+ | ... | ||
+ | |||
+ | De cette façon, un utilisateur et un mot de passe seront demandés seulement si l' | ||
+ | |||
+ | Maintenant, vous devez lancer la commande sudo update-grub pour faire les changements. | ||
+ | |||
+ | À la fin, vous pouvez désactiver les consoles de terminal virtuel en supprimant les fichiers tty dans le répertoire /etc/init : | ||
+ | |||
+ | sudo rm / | ||
+ | |||
+ | ===== 6 ===== | ||
+ | ** | ||
Further works and conclusion | Further works and conclusion | ||
In order to harden the machine, you should set up a password in the BIOS, and prevent boot from CD/DVD or USB ports. And about USB, you should prevent the use of such ports at least by making the PC inaccessible from the users. | In order to harden the machine, you should set up a password in the BIOS, and prevent boot from CD/DVD or USB ports. And about USB, you should prevent the use of such ports at least by making the PC inaccessible from the users. | ||
Ligne 169: | Ligne 353: | ||
Maybe a kiosk solution could be better achieved, but as far as I know, I have not found any better alternatives. This solution works for my needs: maybe it could be useful to you or it could be a starting point for a better implementation. | Maybe a kiosk solution could be better achieved, but as far as I know, I have not found any better alternatives. This solution works for my needs: maybe it could be useful to you or it could be a starting point for a better implementation. | ||
+ | ** | ||
+ | |||
+ | Autres travaux et conclusion | ||
+ | |||
+ | Pour renforcer la machine, vous devez mettre en place un mot de passe dans le BIOS, et empêcher le démarrage à partir des ports de CD/DVD ou USB. Et sur l'USB, vous devez éviter l' | ||
+ | |||
+ | D' | ||
+ | |||
+ | Au lieu de lancer Firefox, vous voudrez peut-être lancer un lecteur vidéo ou un diaporama : vous pouvez faire un essai en mettant une autre commande dans la boucle while. | ||
+ | |||
+ | Cet article est basé sur un message trouvé sur https:// | ||
+ | |||
+ | Peut-être une solution de kiosque pourrait être mieux réalisée, mais pour autant que je sache, je n'ai pas trouvé de meilleures alternatives. Cette solution fonctionne pour mes besoins : peut-être il pourrait être utile pour vous ou ce pourrait être un point de départ pour une meilleure mise en œuvre. | ||
+ | |||
+ |
issue93/kiosque_ubuntu.txt · Dernière modification : 2015/03/19 10:44 de auntiee