Installation de GNU/Linux Debian - Ma page personnelle
Transcription
Installation de GNU/Linux Debian - Ma page personnelle
1 Installation de GNU/Linux Debian http://seb.france.free.fr/iut/rli/miniprojet.pdf Sébastien FRANÇOIS Antonin BERARDI 410 2 Table des matières 1.Introduction 3 2.Installation 5 1. RAWRITE 2. Edition de fichiers de configuration 3. Installation du serveur X 4. Quelques astuces pour X 5. Mise à jour de la distribution vers Testing 6. Astuces 7. Gestion APM (auto extinction de l'ordinateur) 8. Amélioration de l'environnement graphique 9. Logiciels importants : Mozilla et openoffice 10. Installation d'un gestionnaire d'impression CUPS (Common Unix Printing System) 11. Installation d'un nouveau noyau 3.SAMBA 12. Ajout d'un utilisateur local (en root) 13. Ajout d'un utilisateur SAMBA 14. Création d'un répertoire public 15. Accès à un partage distant en console 16. Un peu d'Advanced Bash Scripting 17. Accès à une clé usb 18. Configuration simplifiée d'un firewall 19. Installation d'apache avec php4 4.Annexes 20. /etc/network/interfaces 21. /etc/fstab 22. /etc/resolv.conf 23. Description des fichiers dans / 5.Planning 5 9 10 11 12 12 13 13 14 15 15 16 17 17 19 19 20 21 22 23 24 24 24 25 25 26 3 1.Introduction Pourquoi Debian ? Netcraft.com a publié une étude sur la répartition géographique des serveurs internet tournant sous Debian. France Télécom et Free.fr l'utilisent tous deux, ce qui explique vraisemblablement ce résultat. 16/08/2003 Following on from the FreeBSD project which celebrated its 10th anniversary a few months ago, the Debian Linux distribution reached the age of 10 today. Debian has been an amateur effort throughout its lifetime, and its success is a testament to how little difference money sometimes makes. Despite the abscence of funding, Debian is the second most popular Linux distribution we find on internet web sites, surpassed only by Red Hat, and leaving the likes of SuSE and Mandrake in its wake. Arguably, Debian is the most cosmopolitan of any of the Linux distributions, having a significant following in the former Iron Curtain countries, and well represented in almost every country. Illustration 1 Répartition géographique des serveurs tournant sous Debian Qu’est ce que Debian ? Le projet Debian repose strictement sur des bénévoles, de nationalités très diverses, et vise à fournir un système d’exploitation gratuit et de qualité. Les différents noyaux fournis sont Linux, Hurd, l’intégration d’OpenBSD et de NetBSD est en cours. Le projet Debian a été créé par Ian MURDOCH en août 1993, alors étudiant à l'Université de Purdue, le nom vient de son prénom et de celui de sa femme Deborah ... De nombreuses distributions telles que Knoppix sont basées sur Debian. Ce que nous traitons ici est commun à l'ensemble d'entres elles et aux machines couvertes. 4 Illustration 2Répartition géographique des développeurs Debian Nous choisirons le noyau Linux car c’est le plus populaire, Hurd est plus ancien mais n’est pas parvenu à attirer un aussi grand nombre de développeurs, il est principalement utilisé par des passionnés… Les différents BSD sont quand à eux réputés plus fiables mais supportent moins de périphériques et correspondent à une licence qui permet une utilisation commerciale et fermée du code, dont notamment Spice, Macosx, la pile IP des windows, les sockets etc… (http://www.debian.org/intro/about) Les architectures couvertes sont : CISC (jeu d'instructions conséquent) – – – Intel x86 / IA-32 Motorola 68000 Sun SPARC i386 m68k sparc PC jusqu'à 32 bits (la majorité) anciens Macintosh, Atari, Amiga architecture de Sun Microsystem (auteur de JAVA) RISC (peu d'instructions, consommation plus faible en général) – – – – Alpha Motorola/IBM PPC ARM MIPS – – – HP PA-RISC IA-64 S/390 alpha powerpc arm mips mipsel hppa ia64 s390 processeur DEC nouveaux Macintosh entre autres ... principalement embarqué (certains routeurs) processeur SGI (utilisé dans les playstations de SONY amd64 sh processeur 32/64 bits d'AMD processeur superH d'Hitachi Hewlett-Packard Intel 64 bits serveurs IBM S/390 En cours : – – AMD 64 SuperH 5 2.Installation Nous avons choisi d'installer Debian en utilisant les disquettes de manière à ne pas avoir à télécharger de gros volumes en une seule fois. On télécharge l'ensemble des .bin situés ici : http://ftp.debian.org/dists/stable/main/disks-i386/current/images-1.44/bf2.4/ dists/stable Nous choisirons tout d'abord le système stable (“Woody”) main Branche gérée par les développeurs Debian officiels contrib et non-free contiennent ce qui n'est pas considéré comme libre disks-i386 current images-1.44 Images de disquette pour PC Format des images Installation à base de noyau 2.4 (un peu plus beau et en français) bf2.44 1. RAWRITE On écrit ces images à l'aide de rawrite sur les disquettes (on ne peut pas les copier 'normalement' car le premier secteur de la disquette contient le secteur de démarrage et ce secteur doit recevoir des informations pour booter l'installation). (http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm) 6 Installation détaillée On démarre l'ordinateur sur la disquette rescue, lorsque qu'il réclame la root, insérer la suivante pour charger le programme d'installation. Choisir : Installation Française Clavier fr avec € A tout moment on peut passer en console : Ctrl Alt F2 L'installation se situe dans le premier terminal Ctrl Alt F1 Et les messages de déboguage de l'installateur Ctrl Alt F3 Partitionner un disque dur Nous en avons profité pour basculer dans une console et regarder rapidement les caractéristiques des Le plus gros des deux disques est disques en /dev/hdaavant de continuer : dmesg | grep a = maître de hd la première nappe dmesg | c = maître grep hd b = esclave de la première nappe affiche les messages du noyau de la seconde d = ou esclave redirige lenappe texte (au lieu de l'afficher) : tuyau pipe de la seconde ne retient que les lignes contenant le paramètre l'ensemble des périphériques ide sont nommés /dev/hda /dev/hdb etc... nappe De retour à l'installation, on efface les partitions précédentes à l'aide du bouton [delete], puis l'on créé [new] une partition prenant tout le disque, qui sera primaire (une ancienne limitation du DOS nécessite l'utilisation de partitions étendues dès que l'on dépasse quatre partitions primaires). Illustration 3Structure simplifiée d'un disque les partitions sont nommées sous linux par un chiffre : /dev/hda1 /dev/hda5 première partition primaire du premier disque première partition étendue du premier disque 7 On la rendra aussi [bootable]. Cet utilitaire ne modifie que la/les table(s), le formatage sera fait durant l'étape suivante. Maintenant, nous allons créer une partition de swap sur le second disque, la swap correspond à la “mémoire virtuelle” sauf qu'elle n'est pas un fichier comme sous windows (en général en tout cas). Il faut que sa taille soit un multiple de la mémoire vive de la machine. Il faut changer le [type], la simple activation de cette commande basculera le type en swap. Elle n'a pas à être [bootable]. Nous avons rempli le reste du disque avec une partition de type “linux”. Initialiser et activer une partition d'échange Cette étape permet de formater immédiatement et d'utiliser la mémoire virtuelle. Initialiser comme système de fichiers Linux Nous utiliserons le système ext3 qui contient un journal (c'est-à-dire que tous les tampons sont sauvegardés sur le disque de manière à pouvoir être facilement restaurés après une coupure de courant par exemple), reiserfs possède aussi un journal, mais est moins communément utilisé après que son auteur, Hans REISER ait tenté d'afficher un écran de pub au démarrage des machines... Nous avons formaté la dernière partition en ext2. Installer le noyau et les modules des pilotes Nous choisirons l'option par disquettes, tout d'abord en réinsérant la disquette rescue, qui contient un noyau linux, puis avec les 4 disquettes contenant les images driver-*.bin, qui contiennent la plupart des modules (drivers) de base, servant principalement à l'installation (réseau, disques durs exotiques etc...). Nous avons observé dans une console à l'aide de la commande ps, ce qui se passait en arrière plan, les disquettes mises bout à bout sont en fait un gros fichier .tar.gz (.tgz) qui est décompressé par gzip puis tar. Nous allons maintenant faire fonctionner le réseau, de manière à télécharger un fichier contenant les utilitaires de base. Pour la carte 3c905, nous utiliserons le driver 3c59x - Carte Ethernet 3Com Vortex 3C59x (équivalence trouvée sur google). Il faut donc aller dans kernel/drivers/net/ chercher le bon module et le sélectionner. Installation du système de base L'installation se fera par le réseau, nous avons utilisé le miroir allemand http://ftp.de.debian.org/debian avec un mandataire configuré pour utiliser le proxy de l'université : eproxy.uang sur le port 3128. 8 Une fois le téléchargement terminé, nous utiliserons les options par défaut pour LILO, LInux LOader (programme installé dans le secteur de démarrage du disque dur pour gérer le démarrage du ou des système(s) d'exploitation). Il sera placé sur le premier disque puisque c'est en général à cet endroit que le BIOS cherche à démarrer. Redémarrage La disquette root qui avait été décompressée puis chargée en RAM doit être retirée pour que le système s'exécute à partir du disque dur, il suffit donc de redémarrer. L'installation se poursuit alors avec une série de question. A l'installation d'un bon nombre de paquets (en gros, logiciel+doc), des questions sont posées (gestion par Debconf) pour préconfigurer automatiquement les logiciels, la plupart du temps les réponses par défaut conviendront, nous ne traiterons en détail que celles qui nous ont paru importantes ou qu'il fallait modifier. Nous utiliserons l'heure locale sur notre horloge (Non-GMT), dans le fuseau Europe/Paris ... Nous activerons les cryptages de mots de passe MD5 et Shadow. Après avoir choisi un mot de passe pour l'utilisateur root, nous créerons un utilisateur simple nommé GEII. La machine n'étant pas un portable, nous n'avons pas besoin du paquet PCMCIA. Pour l'installation des paquets, nous utiliserons la carte ethernet directement donc sans utiliser PPP (utilisé surtout lorsque la connexion s'effectue via un Fournisseur d'Accès Internet). Les paquets seront récupérés par HTTP, en utilisant les sources supplémentaires : non-free / contrib non-US logiciels gratuits mais non libres, problème de licence logiciels interdits par la législation américaine, à cause des restrictions sur la cryptographie. Nous avons choisi le miroir ftp.de.debian.org, avec le même proxy (eproxy.uang 3128), APT, le programme de gestion des paquets va alors télécharger la liste des paquets disponibles, ainsi que leur description, ensuite nous ajouterons les mises à jour de sécurité. Pour pas télécharger des paquets volumineux et que nous n'utiliserions pas (documentation, etc...), nous avons quitté Tasksel et Dselect pour ne télécharger que les paquets strictement nécessaires. Mises à jour Les mises à jour s'effectuent habituellement en faisant : apt-get update && apt-get upgrade update Mise à jour la liste des paquets (vient d'être faite automatiquement par l'installateur) upgrade Mise à jour des paquets corrigés ou anciens 9 Nous avons tout configuré par défaut, pour Exim le serveur de mail. Nous avons utilisé une configuration en local delivery puisque nous n'avons pas l'intention fournir ce service à l'extérieur. Exim est développé par l'Université de Cambridge. Mise en place de la langue du système Les paquets s'installeront désormais via apt-get et toujours de la même manière : apt-get install manpages-fr language-env localeconf locale manpages-fr Documentation immédiate pour l'utilitaire man, par exemple : man gets nous affiche la documentation traduite associée à la fonction C les manpages couvrent aussi l'ensemble des fonctions et fichiers spéciaux de la machine on peut chercher le bon man via apropos, la recherche dans un man se fait en tapant /mot (si less est installé). language-env Script à lancer (set-language-env), personnalisant pour chaque utilisateur la langue et l'encodage pour les shells et les éditeurs. localeconf Permettent de régler quelles traductions seront disponibles sur la machine, nous utiliserons principalement fr_FR (encodage iso-8859-1) et fr_FR@euro (iso-8859-15) locales 2. Edition de fichiers de configuration Avant tout, nous allons récupérer un éditeur correct : vim qui correspond à une version améliorée de l'éditeur d'UNIX vi. apt-get install vim echo "syntax on" > ~/.vimrc echo syntax on affiche un texte en paramètre active la coloration syntaxique de vim lorsque placé dans le fichier .vimrc de l'utilisateur > ~/.vimrc écrit ce qu'il y a en amont du tuyau dans le fichier situé dans le répertoire de l'utilisateur (~), ce fichier étant nommé .vimrc Nous allons maintenant faire fonctionner un petit navigateur web en console, lynx-ssl, pour lui indiquer qu'il doit utiliser un proxy. Il faut éditer sa configuration globale, comme tous les logiciels, sa configuration se trouve dans /etc/ et est directement en texte, nous faisons donc : 10 vi /etc/lynx.cfg Pour rechercher la ligne configurant le proxy, nous utilisons la commande /proxy, en appuyant sur N (pour next) jusqu'à ce que nous ayons cette ligne : #http_proxy:http://some.server.dom:port/ Le # signifie que la ligne est commentée et n'a aucun effet, nous la remplaçons donc par : http_proxy:http://eproxy.uang:3128/ Vi fonctionne par mode. Pour éditer cette ligne, il vous faudra d'abord passer en mode insertion avec la touche I puis, une fois les modifications faites, faire : Echap :wq pour quitter le mode en cours commande écrire et quitter Dans le même genre il existe : :q! quitter sans sauvegarder (La BU Faculté des Sciences a un petit livret avec l'ensemble des commandes) 3. Installation du serveur X L'interface graphique sous linux est gérée par Xfree86, une implémentation de l'X-window d'UNIX qui a été développée par le Massachusetts Institute of Technology. Les paquets à installer sont les suivants : xserver-xfree86 Paquet principal contenant l'exécutable et les drivers xfonts-scalable Polices dimensionnables pour X xfonts-75dpi xfonts-75dpi-transcoded Polices 75 dpi Idem avec support pour l'euro xfonts-100dpi xfonts-100dpi-transcoded Polices 100 dpi Idem avec support pour l'euro x-window-system-core Pour être sûr que l'on ait rien oublié de vital, ce paquet dépend des paquets nécessaires à X gnome-session Gestionnaire de session de l'environnement Gnome 11 gnome-panel Panneaux de Gnome (~ barre avec des icônes) gnome-applets Ensemble de petites applications se lançant dans le panneau sawfish Gestionnaire de fenêtres kdm Gestionnaire de connexion de l'environnement KDE kde-i18n-fr Traduction française de KDE Nous avons opté pour une configuration relativement simple, en sélectionnant : Driver ATI Keyboard layout FR Souris PS/2 sans molette PS/2 (ImPS/2 si molette) Configuration de l'écran Simple -> 15" Il faut maintenant indiquer à kdm qu'il peut lancer gnome-session, on édite /etc/kde*/kdm/kdmrc on recherche la ligne /SessionTypes et on y ajoute gnome-session. 4. Quelques astuces pour X Le serveur X peut être redémarré par : /etc/init.d/kdm restart Si X pose problème on peut le tuer à tout moment via Ctrl Alt Backspace, La résolution se change au vol via Ctrl Alt + ou - . On conserve cependant les consoles textes accessibles via Ctrl Alt FX Il est important de configurer le proxy dans Applications->Préférences du Bureau->Proxy réseau si l'on veut que les applets utilisant le réseau fonctionne (nous avions installé une applet de météo). 12 5. Mise à jour de la distribution vers Testing De manière à bénéficier de logiciels plus récents, nous avons effectué une mise à jour de Debian vers une version de test (Sarge). Il suffit d'ouvrir /etc/apt/sources.list avec vi et de dupliquer chaque entrée (on copie avec Y et on colle avec P hors de tout mode), on modifie ensuite pour avoir à chaque fois quelque chose de cette forme : deb http://ftp.de.debian.org/debian/ stable main non-free contrib deb http://ftp.de.debian.org/debian/ testing main non-free contrib On quitte alors vi (:wq), puis l'on met à jour les listes : apt-get update puis les paquets apt-get upgrade et enfin on indique que l'on souhaite changer de version : apt-get dist-upgrade 6. Astuces La liste des paquets installés peut être obtenue à tout moment : dpkg –list | less Lorsque l'écran défile, il suffit d'utiliser Maj Page-Up pour remonter, on peut passer une application console en arrière plan avec Ctrl Z (elle est alors gelée), et la ramener en avant plan avec fg Les listes de paquets installables sont téléchargées durant un apt-get update et sont évidemment consultables grâce à apt-cache apt-cache search mot apt-cache show paquet Affiche quant à lui la description du paquet il est possible grâce aux pipes de compter les lignes renvoyées par une commande : dpkg --list | wc -l 1344 Il y a 1344 paquets installés ... lspci Permet de détecter par une requête de bas niveau (sans driver) les périphériques sur le bus PCI. 13 7. Gestion APM (auto extinction de l'ordinateur) lancer Modconf en root, descendre à : kernel/arch/i386/kernel Pilotes de base pour i386-base. Insérer le module APM. 8. Amélioration de l'environnement graphique Les paquets suivants permettent d'améliorer l'apparence du système : metacity gnome-themes Permet de personnaliser Gnome dans Applications->Préférences du Bureau>Thèmes gnome-themes-extra gnome-extra-icons De jolies icônes pour Gnome aterm Un terminal gèrant la transparence : ajouter un bouton au panneau par un clic droit puis saisir la commande : aterm -bg black -fg antiquewhite -tr -sh 50 -trsb -cr cyan3 numlockx Activation automatique du pavé numérique à la connexion desktop-debian Un bureau minimal nautilus Explorateur de fichier de Gnome Illustration 4Nautilus 14 9. Logiciels importants : Mozilla et openoffice Nous avons ensuite installé mozilla et openoffice, respectivement navigateur et suite bureautique, les paquets installés sont : mozilla-locale-fr, openoffice.org-l10n-fr, mozilla, openoffice.org Illustration 5 Openoffice.org Illustration 6 Mozilla 15 10. Installation d'un gestionnaire d'impression CUPS (Common Unix Printing System) apt-get install cupsys cupsys-driver-gimpprint L'administration de cups se fait par interface web, ouvrir dans mozilla : http://localhost:631 Cliquer sur Tâches d'administration, se connecter en root, Ajouter une imprimante (le Nom n'a pas d'importance) Périphérique AppSocket / HP JetDirect URI de périphérique : socket://172.20.74.59:9100/ (Imprimante de la salle Pascal, port 9100 pour HP JetDirect) Type: HP Modèle: HP LaserJet Series PCL 6 CUPS v1.1 (en) 11. Installation d'un nouveau noyau Nous avons choisi de prendre un noyau plus adapté, le processeur étant un Intel PII, apt-cache search kernel-image-2.4*-686 nous a permis de connaître les noyaux disponibles, nous l'avons ensuite installé. (Attention, il faut absolument faire echo 'do_initrd = Yes' > /etc/kernel-img.conf) 16 3.SAMBA apt-get install samba on édite /etc/samba/smb.conf dans la section [global] on ajoute sous workgroup = debianfan: interfaces = 192.168.0.1/255.255.255.0 bind interfaces only = yes unix charset = ISO8859-15 dos charset = CP850 pour restreindre samba à notre “réseau local”, cela correspond à la fonction bind en C appliquée seulement sur l'interface de notre réseau local (192.168.0.1 est l'IP de notre carte vers le réseau locale) On relance SAMBA debian:~# /etc/init.d/samba restart Stopping Samba daemons: nmbd smbd. Starting Samba daemons: nmbd smbd. debian:~# nmap 172.20.74.2 Starting nmap 3.50 ( http://www.insecure.org/nmap/ ) at 2004-03-17 11:59 CET Interesting ports on 172.20.74.2: (The 1655 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 111/tcp open rpcbind 515/tcp open printer Nmap run completed -- 1 IP address (1 host up) scanned in 2.788 seconds Tandis que sur notre interface locale : debian:~# nmap 192.168.0.1 Starting nmap 3.50 ( http://www.insecure.org/nmap/ ) at 2004-03-17 11:59 CET Interesting ports on 192.168.0.1: (The 1653 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 111/tcp open rpcbind 139/tcp open netbios-ssn 445/tcp open microsoft-ds 515/tcp open printer Nmap run completed -- 1 IP address (1 host up) scanned in 2.610 seconds 17 Le bind a donc fonctionné comme nous le souhaitions. Partage de fichiers Par défaut Samba partage les fichiers situés dans le /home d'un utilisateur (dans notre cas /home/geii) : /etc/samba/smb.conf [homes] comment = Home Directories browseable = no # By default, the home directories are exported read-only. writable = no # File creation mask is set to 0700 for security reasons. create mask = 0700 # Directory creation mask is set to 0700 for security reasons. directory mask = 0700 12. Ajout d'un utilisateur local (en root) debian:~# adduser Veuillez indiquer le nom d'utilisateur à ajouter : anto Ajout de l'utilisateur anto... Ajout du nouveau groupe anto (1001). Ajout du nouvel utilisateur anto (1001) avec comme groupe « anto ». Création du répertoire personnel /home/anto. Copie des fichiers depuis /etc/skel Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changement de l'information utilisateur pour anto Entrez la nouvelle valeur ou tapez Entrée pour le défaut Nom complet []: No de bureau []: Téléphone travail []: Téléphone perso []: Autre []: Ces informations sont-elles correctes ? [y/n] y 13. Ajout d'un utilisateur SAMBA On permet le partage samba en ajoutant une équivalence entre un utilisateur local et un utilisateur samba avec smbpasswd, l'aide réduite est disponible en faisant smbpasswd –help debian:~# smbpasswd -a anto New SMB password: Retype new SMB password: Added user anto. 18 Du coté du client : 19 14. Création d'un répertoire public Nous allons maintenant faire un répertoire public : mkdir /usr/partage debian:~# ls -l /usr/ | grep partage drwxr-xr-x 2 root root 4096 2004-03-23 11:24 partage debian:~# chmod o+w /usr/partage On autorise n'importe qui à écrire dans le répertoire, o pour others + pour activer et w pour écrire : debian:~# ls -l /usr/ | grep partage drwxr-xrwx 2 root root 4096 2004-03-23 11:24 partage on ajoute dans /etc/samba/smb.conf juste avant la section [printers] [public] comment = Partage pour tout le monde en lecture / écriture path = /usr/partage writable = yes debian:~# /etc/init.d/samba restart Stopping Samba daemons: nmbd smbd. Starting Samba daemons: nmbd smbd. Tout fonctionne comme prévu. 15. Accès à un partage distant en console Le paquet utilisé est smbclient Nous avons créé un partage nommé Debian sur la machine sous Windows 2000 et nous y accèdons : -L liste les partages disponibles, il nous faut être administrateur pour voir ceux-ci, on voit même les « cachés » : debian:~# smbclient -L 192.168.0.2 -U administrateur Password: Domain=[T1-8] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] Sharename Type Comment -----------------IPC$ IPC IPC distant D$ Disk Partage par défaut print$ Disk Pilotes d'imprimantes G$ Disk Partage par défaut IMP1 Printer IMP1 F$ Disk Partage par défaut debian Disk ADMIN$ Disk Administration à distance H$ Disk Partage par défaut C$ Disk Partage par défaut 20 session request to 192.168.0.2 failed (Called name not present) session request to 192 failed (Called name not present) Domain=[T1-8] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] Server --------- Comment ------- Workgroup --------- Master ------- Debian:~# smbclient \\\\192.168.0.2\\debian -U administrateur Password: Domain=[T1-8] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] smb: \> ls . D 0 Tue Mar 9 13:05:30 2004 .. D 0 Tue Mar 9 13:05:30 2004 images D 0 Tue Mar 9 10:44:47 2004 rawwritewin-0.7.zip A 207868 Tue Mar 9 10:37:33 2004 64007 blocks of size 32768. 10174 blocks available smb: \> get rawwritewin-0.7.zip téléchargement d'un fichier smb: \> 16. Un peu d'Advanced Bash Scripting Le shell est beaucoup plus personnalisable que l'on ne peut l'imaginer, voici un petit script qui pingue les machines d'un sous réseau et si le ping aboutit en moins d'une seconde, considère la machine comme allumée : for i in `seq 1 2`; do if ping -c 1 192.168.0.$i -i 1 2>&1 > /dev/null; then echo machine $i allumée; else echo machine $i éteinte ; fi ; done pour I compris entre 1 et 2 inclus, faire ping unique (-c 1) avec un timeout d'une seconde (-i 1) sur la machine 192.168.0.$i, ne pas afficher de message ( > /dev/null) en les redirigeant vers rien et idem pour les messages d'erreurs (2>&1), si le ping abouti alors on considère la machine allumée, sinon on la considère éteinte fin si fin La documentation complète avec des exemples de l'ABS se situe ici : http://www.tldp.org/LDP/abs/html/ 21 17. Accès à une clé usb debian:~# modprobe usb-storage Insertion du driver pour zip usb, appareil photo, clé usb etc... Modprobe insère un module avec ses dépendances. On voit l'insertion de la clé et du driver dans les messages du noyau debian:~# dmesg hub.c: new USB device 00:04.2-2, assigned address 2 usb.c: USB device 2 (vend/prod 0xea0/0x2168) is not claimed by any active driver (lorsque nous avons fais le modprobe) SCSI subsystem driver Revision: 1.00 Initializing USB Mass Storage driver... usb.c: registered new driver usb-storage scsi0 : SCSI emulation for USB Mass Storage devices Vendor: Generic Model: USB Flash Disk Rev: 2.00 Type: Direct-Access ANSI SCSI revision: 02 WARNING: USB Mass Storage data integrity not assured USB Mass Storage device found at 2 USB Mass Storage support registered. Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0 sda: Unit Not Ready, sense: Current 00:00: sense key Unit Attention Additional sense indicates Not ready to ready change,medium may have changed usb-uhci.c: interrupt, status 3, frame# 2008 SCSI device sda: 255488 512-byte hdwr sectors (131 MB) sda: Write Protect is off /dev/scsi/host0/bus0/target0/lun0: p1 usb.c: USB disconnect on device 00:04.2-2 address 2 mount /dev/sda1 /mnt -t vfat Montage de la clé en /dev/sda1, /dev car périphérique, /sd car disque SCSI, a pour maître de la nappe principale (ici le premier périphérique) et 1 pour première partition. /mnt est un répertoire vide utilisé pour le montage -t vfat indique le système de fichier, en général FAT (toutes versions) on accède au contenu de la clé dans /mnt Les modifications ne sont enregistrées qu'au moment du démontage : debian:~# umount /mnt/ ou bien lors d'une synchronisation manuelle : debian:~# sync Pour rendre le montage plus simple: mkdir /key on ajoute à /etc/fstab : /dev/sda1 /key vfat user,noauto 0 0 22 18. Configuration simplifiée d'un firewall apt-get install firestarter lancer firestarter en root, configurer le lancement au démarrage, dans notre cas l'interface vers internet est eth0 On active la Translation d'Adresse Réseau (NAT) On spécifie manuellement la plage d'adresse translatée : 192.168.0.0/24 On n'autorisera à l'extérieur que le www (pour apache) et aussi Samba pour éviter d'avoir des messages nombreux dès qu'une machine cherche à savoir si nous partageons quelque chose. Ceci ne veut pas dire pour autant que nos partages seront accessibles de l'extérieur puisque Samba n'est pas lancé sur cette interface, c'est uniquement pour éviter au firewall de se croire attaqué ... Nous n'utiliserons pas de ToS (Type of Service filtering), car nous n'avons pas besoin de rendre les serveurs prioritaires sur les clients ou inversement. Nous activerons l'ICMP filtering sur echo et traceroute pour bloquer ping et traceroute externes. Sur notre réseau local, en interne : Illustration 7 Configuration de notre réseau 23 Illustration 8 Configuration du client 19. Installation d'apache avec php4 apt-get install apache php4 dans la liste des modules sélectionner mod_php4 la configuration se situe dans /etc/apache/httpd.conf Le répertoire contenant les documents du serveur est /var/www 24 4.Annexes Quelques fichiers de configuration : 20. /etc/network/interfaces # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) (partiellement généré à l'installation) # The loopback interface auto lo # lo interface de rebouclage, auto pour activée au démarrage iface lo inet loopback # The first network card - this entry was created during the Debian installation # (network, broadcast and gateway are optional) auto eth0 iface eth0 inet static address 172.20.74.2 netmask 255.255.0.0 network 172.20.0.0 broadcast 172.20.255.255 gateway 172.20.0.254 auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 21. /etc/fstab # /etc/fstab: static file system information. #Pour plus d'info man fstab ! # <file system> <mount point> <type> <options> <dump> <pass> /dev/hda1 / ext3 errors=remount-ro 0 1 /dev/hdb1 none swap sw 0 0 proc /proc proc defaults 0 0 /dev/fd0 /floppy vfat user,noauto 0 0 /dev/cdrom /cdrom iso9660 ro,user,noauto 0 0 /dev/hdb2 /home ext2 defaults 0 2 /dev/sda1 /key vfat user,noauto 0 0 25 22. /etc/resolv.conf nameserver 172.20.0.254 #Généré à l'installation (serveur de résolution de nom : DNS) 23. Description des fichiers dans / / est aussi appelé root car c'est la racine du système de fichiers il contient : bin binaires simples des utilisateurs, shells etc... boot noyaux, carte des variables du noyau, pour le démarrage cdrom point de montage du cdrom /mnt/cdrom sous mandrake dev répertoire où se situent les périphériques, tout étant un fichier sous unix etc fichiers de configuration et de démarrage /etc/init.d/ floppy point de montage de la disquette home répertoire contenant les répertoires personnels des utilisateurs initrd point de montage du mini système injecté en ram au chargement du noyau ... initrd.img image contenant ce système lib librairies, un peu comme des DLL lost+found répertoires où sont placés les fichiers abîmés mnt point de montage non utilisé sous Debian en général proc accès aux variables du noyaux (essayez cat /proc/cpuinfo) root répertoire de l'administrateur sbin exécutables simples de l'administrateur tmp fichiers temporaires usr contient les binaires plus évolués, les documentations, les jeux etc... var données temporaires, log en tout genre vmlinuz Noyau Linux 26 5.Planning Illustration 9 Avancement du projet