Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
papweb [2011/06/20 09:05] saitMoh typos |
papweb [2023/07/18 23:11] (Version actuelle) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Configuration d'un Point d' | ||
+ | ===== Objectifs ===== | ||
+ | Mettre à la disposition du public des lieux publics (MPT, MJC, Associations, | ||
+ | Recycler des ordinateurs anciens en installant une distribution légère de GNU/Linux qui proposera aux utilisateurs **un seul logiciel : le navigateur Web((le web n'est pas Internet)) ** | ||
+ | |||
+ | ===== Installation de l'OS ===== | ||
+ | Comme OS on part sur une base de Debian/ | ||
+ | |||
+ | On fera 4 partitions((en principe 3 devrait suffire si on externalise le proxy et les logs)): | ||
+ | * le swap | ||
+ | * la racine (/) | ||
+ | * le home (/home) | ||
+ | * les logs et autre données du système (/data) | ||
+ | |||
+ | On peut créer ou pas l' | ||
+ | |||
+ | ==== Configuration de l'OS ==== | ||
+ | <code bash> | ||
+ | # mkdir /data/log | ||
+ | # echo "/ | ||
+ | # mkdir /root/.ssh && chmod 700 /root/.ssh | ||
+ | # touch / | ||
+ | </ | ||
+ | |||
+ | Copiez vos clés id_rsa.pub dans le fichier / | ||
+ | < | ||
+ | PasswordAuthentication no | ||
+ | AllowUsers root | ||
+ | </ | ||
+ | |||
+ | Puis on verrouille le compte root. Tous les accés suivants au compte root se faisant par ssh. | ||
+ | <code bash> | ||
+ | # passwd -l | ||
+ | </ | ||
+ | |||
+ | On vérifie le fichier / | ||
+ | < | ||
+ | # This file describes the network interfaces available on your system | ||
+ | # and how to activate them. For more information, | ||
+ | |||
+ | # The loopback network interface | ||
+ | auto lo | ||
+ | iface lo inet loopback | ||
+ | |||
+ | # The primary network interface | ||
+ | allow-hotplug eth0 | ||
+ | iface eth0 inet dhcp | ||
+ | </ | ||
+ | //Attention au fichier / | ||
+ | |||
+ | On complète le fichier / | ||
+ | < | ||
+ | deb http:// | ||
+ | |||
+ | deb http:// | ||
+ | |||
+ | deb http:// | ||
+ | |||
+ | # Pour avoir xulrunner-2.0 et iceweasel-4.0 sur squeeze | ||
+ | deb http:// | ||
+ | </ | ||
+ | |||
+ | En fonction du matériel présent dans la machine, il peut être nécessaire d' | ||
+ | <code bash> | ||
+ | # apt-get install firmware-linux | ||
+ | </ | ||
+ | Si d' | ||
+ | <code bash> | ||
+ | # apt-cache search --names-only firmware | ||
+ | </ | ||
+ | |||
+ | On ajoute le support acpi et la gestion du son avec alsa((ou pulseaudio)) | ||
+ | <code bash> | ||
+ | # apt-get install acpi acpi-support acpitool alsa-base alsa-firmware-loaders alsa-tools alsa-utils | ||
+ | </ | ||
+ | |||
+ | Editez le fichier / | ||
+ | |||
+ | ==== installation du proxy ==== | ||
+ | Le proxy ainsi que l' | ||
+ | <code bash> | ||
+ | # apt-get install squid adzapper | ||
+ | </ | ||
+ | Puis il faut ajouter la ligne | ||
+ | < | ||
+ | redirect_program / | ||
+ | </ | ||
+ | au fichier / | ||
+ | |||
+ | ===== Configuration de l' | ||
+ | Créez l' | ||
+ | <code bash> | ||
+ | # rsync -av / | ||
+ | # passwd -l linuxquimper | ||
+ | </ | ||
+ | |||
+ | On ajoute le serveur X et le gestionnaire de connection automatique nodm: | ||
+ | <code shell> | ||
+ | # apt-get install xorg nodm | ||
+ | </ | ||
+ | |||
+ | ==== Choix du navigateur ==== | ||
+ | C'est ce qui pose le plus problème car on ne peut pas installer n' | ||
+ | * pas d' | ||
+ | * pas d' | ||
+ | * support des onglets | ||
+ | * support de l' | ||
+ | * support optionnel des plugins pour avoir flash, la lecture de fichier pdf ou autres documents bureautiques directement dans le navigateur. | ||
+ | |||
+ | Actuellement, | ||
+ | |||
+ | Pour faire une démo de l' | ||
+ | <code shell> | ||
+ | # apt-get install libwebkit-1.0-2 | ||
+ | </ | ||
+ | |||
+ | En principe la compilation du programme doit ce faire sur une autre machine et on a besoin des paquets suivants | ||
+ | <code shell> | ||
+ | # apt-get install build-essential libwebkit-dev | ||
+ | </ | ||
+ | |||
+ | et du code source de GtkLauncher et du [[gtklauncher# | ||
+ | |||
+ | que l'on installe avec la commande | ||
+ | <code bash> | ||
+ | # make install | ||
+ | </ | ||
+ | |||
+ | ==== configuration de la session ==== | ||
+ | |||
+ | On configure nodm pour se connecter directement sur le compte linuxquimper en éditant le fichier / | ||
+ | < | ||
+ | # nodm configuration | ||
+ | |||
+ | # Set NODM_ENABLED to something different than ' | ||
+ | NODM_ENABLED=true | ||
+ | |||
+ | # User to autologin for | ||
+ | NODM_USER=linuxquimper | ||
+ | |||
+ | # xinit program | ||
+ | NODM_XINIT=/ | ||
+ | |||
+ | # First vt to try when looking for free VTs | ||
+ | NODM_FIRST_VT=7 | ||
+ | |||
+ | # X session | ||
+ | NODM_XSESSION=/ | ||
+ | |||
+ | # Options for the X server | ||
+ | NODM_X_OPTIONS=' | ||
+ | |||
+ | # If an X session will run for less than this time in seconds, nodm will wait an | ||
+ | # increasing bit of time before restarting the session. | ||
+ | NODM_MIN_SESSION_TIME=120 | ||
+ | </ | ||
+ | |||
+ | On créer le fichier / | ||
+ | <code bash> | ||
+ | #!/bin/sh | ||
+ | |||
+ | rsync -a --delete / | ||
+ | |||
+ | exec / | ||
+ | </ | ||
+ | |||
+ | et on créer le ficher / | ||
+ | <code bash> | ||
+ | # This file is sourced by Xsession(5), | ||
+ | |||
+ | if [ " | ||
+ | |||
+ | export LANG=fr_FR.UTF-8 | ||
+ | // exec xulrunner-2.0 / | ||
+ | exec / | ||
+ | |||
+ | # Reset default startup | ||
+ | STARTUP=/ | ||
+ | fi | ||
+ | |||
+ | # vim:set ai et sts=2 sw=2 tw=80: | ||
+ | </ | ||
+ | |||
+ | Puis on peut lancer la session utilisateur avec / | ||
+ | |||
+ | ===== fin de la configuration ===== | ||
+ | Il faut sécuriser l' | ||
+ | <code bash> | ||
+ | #!/bin/sh | ||
+ | set -e | ||
+ | |||
+ | cat <<EOF | ||
+ | |||
+ | set superusers=" | ||
+ | password_pbkdf2 root grub.pbkdf2.sha512.64.2D0F37B9.37B35EF82745CEA0B146C451BD90BDC12DAB53EF29919FA888C7FA5E6417EBD0072FF9D0DC917D69E68046ECA991C799687849A1D012B2057AE82E9A2688DA83 | ||
+ | |||
+ | EOF | ||
+ | </ | ||
+ | |||
+ | Pour avoir un boot graphique on peut installer plymouth et ajouter «splash» à la ligne de commande linux | ||
+ | <code bash> | ||
+ | # apt-get install plymouth plymouth-themes-solar | ||
+ | </ | ||
+ | |||
+ | et on édite le fichier / | ||
+ | < | ||
+ | # If you change this file, run ' | ||
+ | # / | ||
+ | |||
+ | GRUB_DEFAULT=0 | ||
+ | GRUB_TIMEOUT=5 | ||
+ | GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` | ||
+ | GRUB_CMDLINE_LINUX_DEFAULT=" | ||
+ | GRUB_CMDLINE_LINUX="" | ||
+ | |||
+ | # Uncomment to enable BadRAM filtering, modify to suit your needs | ||
+ | # This works with Linux (no patch required) and with any kernel that obtains | ||
+ | # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) | ||
+ | # | ||
+ | |||
+ | # Uncomment to disable graphical terminal (grub-pc only) | ||
+ | # | ||
+ | |||
+ | # The resolution used on graphical terminal | ||
+ | # note that you can use only modes which your graphic card supports via VBE | ||
+ | # you can see them in real GRUB with the command `vbeinfo' | ||
+ | # | ||
+ | |||
+ | # Uncomment if you don't want GRUB to pass " | ||
+ | # | ||
+ | |||
+ | # Uncomment to disable generation of recovery mode menu entries | ||
+ | GRUB_DISABLE_LINUX_RECOVERY=" | ||
+ | |||
+ | # Uncomment to get a beep at grub start | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | ensuite on peut mettre le fichier grub.cfg à jour | ||
+ | <code bash> | ||
+ | # update-grub | ||
+ | </ | ||
+ | |||
+ | on termine on mettant toutes les partitions sauf / en noexec et / en read-only dans le fichier /etc/fstab | ||
+ | < | ||
+ | # /etc/fstab: static file system information. | ||
+ | # | ||
+ | # Use 'blkid -o value -s UUID' to print the universally unique identifier | ||
+ | # for a device; this may be used with UUID= as a more robust way to name | ||
+ | # devices that works even if disks are added and removed. See fstab(5). | ||
+ | # | ||
+ | # <file system> <mount point> | ||
+ | proc /proc | ||
+ | UUID=d240c895-f500-42fb-b34a-1335cf861c1b / | ||
+ | UUID=0ffae1e9-f09a-4aa5-a8d0-7a681304e8d9 none swap sw 0 0 | ||
+ | UUID=cb7b0fac-b92c-4c8c-9792-5a2ea4e1032b /home | ||
+ | UUID=5fe5af3f-f3a8-479e-bd43-e8a77f2df74b /data | ||
+ | |||
+ | /data/log /var/log none bind 0 0 | ||
+ | /data/squid / | ||
+ | |||
+ | tmpfs / | ||
+ | tmpfs / | ||
+ | tmpfs / | ||
+ | |||
+ | ## Pas de device externes | ||
+ | #/ | ||
+ | </ | ||
+ | |||
+ | Maintenant on peut rebooter((C' | ||
+ | |||