T.P. n 5 Déploiement d images avec Clonezilla Etudiant Serveurs DHCP et TFTP Boot PXE sur une image live CD Groupe Pour monter un réseau local dont les machines clientes ont la même configuration matérielle et logicielle, on commence généralement par installer le(s) serveur(s) ainsi qu une 1 ère machine cliente de référence, puis on «clone» cette machine cliente en prenant une «image» de son disque dur, que l on «déploie» (en l adaptant éventuellement) sur les disques durs des autres machines clientes. Pour faciliter la création de l image d un disque dur et sa recopie sur d autres machines - et éviter ainsi d utiliser des supports de stockage externes - on peut utiliser un «serveur de déploiement PXE» : celui-ci permet aux machines clientes de booter directement à partir du réseau et de lancer une interface distante de gestion des images des partitions. On peut ainsi directement sauvegarder l image du disque dur d un client sur le serveur, ou au contraire recopier sur le disque du client une image stockée sur le serveur PXE. Plutôt que d utiliser une solution toute prête, nous allons dans ce TP monter notre propre serveur de déploiement en configurant des serveurs DHCP, TFTP et PXE pour booter à travers le réseau sur une image d un CD Clonezilla Live que nous allons adapter. Nous utiliserons pour cela une nouvelle machine virtuelle redhat fournie sous Red Hat Enterprise Server 6 (version serveur professionnelle de Fedora) Comme nous avons déjà installé un serveur DHCP Windows 2008, nous l utiliserons conjointement au serveur TFTP/PXE Red Hat (il serait également possible d installer un serveur DHCP sous Red Hat, mais dans ce cas la machine Windows serveur devrait être éteinte lors d un déploiement pour éviter les conflits, ce qui bloquerait l utilisation des machines clientes déjà installées) Rajoutez la machine virtuelle redhat à votre projet GNS3 et reliez-la au switch (vous pouvez rajouter des ports au switch si besoin et changer l image de la machine redhat) Voici alors les étapes consécutives d une sauvegarde / restauration que nous allons mettre en œuvre : DHCP DISCOVER DHCP OFFER Le client démarre sur sa carte réseau et demande une adresse IP au serveur DHCP qui lui en attribue une Requête DHCP Adresse IP du serveur TFTP et emplacement fichier boot PXE Requête TFTP / PXE Envoi des fichiers composants l image CD Clonezilla Live Boot sur l image Clonezilla Live et sauvegarde du PC par le réseau Le serveur DHCP envoie à la requête du client l adresse du serveur TFTP/PXE ainsi que l emplacement du fichier de boot PXE En choisissant l option prévue (expl : sauvegarde de poste) le client demande au serveur TFTP / PXE les fichiers pour démarrer le logiciel de sauvegarde Une fois le logiciel lancé à partir du serveur TFTP/PXE, le client exécute sa sauvegarde directement sur ce dernier 1
1 Configuration du serveur DHCP Nous allons configurer le serveur DHCP de Windows 2008 pour permettre le boot PXE des machines clientes. Nous allons également en profiter pour configurer certaines options supplémentaires, comme le nom de domaine et l adresse du serveur NIS, ce qui permettra d éviter de configurer ces paramètres sur les machines clientes Linux. Démarrez la machine serveur Windows 2008 et lancez l outil d administration Cliquez avec le bouton droit sur «Options de serveur» et configurez les options supplémentaires «040 Nom de domaine NIS», «041 Serveurs NIS» et «042 Serveurs NTP» selon les paramètres de votre domaine agence-i Configurez également l option 066 désignant le serveur PXE (donnez lui l @ IP 192.168.i.2), ainsi que l option 067 désignant le nom du fichier de démarrage pxelinux.0 à charger depuis ce serveur PXE Actualisez enfin le serveur DHCP pour prendre en compte les modifications 2 Mise en place du serveur TFTP Configuration réseau de la machine redhat Démarrez la machine virtuelle redhat et connectez-vous sous en root (mot de passe C309) Ouvrez le menu «Système / Préférences / Connexions réseau» Sélectionnez «Sytem eth0» et cliquez sur «Modifier» Allez à l onglet «Paramètres IPv4» et choisissez la méthode d attribution «Manuel» Rentrez les paramètres réseau en cliquant sur «Ajouter» : - adresse IP 192.168.i.2 - autres paramètres de votre domaine virtuel Configuration du serveur tftp Créez sous la racine / un dossier /tftpboot Attribuez-lui récursivement tous les droits pour le propriétaire et le groupe, ainsi que les droits en lecture et exécution pour les autres utilisateurs Commandes Editez le fichier de configuration /etc/xinetd.d/tftp Changez l option disable = yes en disable = no pour autoriser le service tftp, et l option server_args en -s /tftpboot pour indiquer le dossier racine du serveur tftp Redémarrez le service xinetd dont dépend tftp et activez ces deux services au démarrage du serveur : service xinetd restart chkconfig xinetd on chkconfig tftp on 2
3 Mise en place du serveur PXE Introduction à pxelinux Parcourez la documentation http://syslinux.zytor.com/wiki/index.php/pxelinux De quel système de démarrage pxelinux est-il un dérivé? Pour quel usage est-il conçu? Comment s appelle le fichier chargé par tftp à travers le réseau pour amorcer le chargeur de démarrage pxelinux? Quel dossier contient le(s) fichier(s) de configuration des menus de démarrage de pxelinux? Quel est le nom du fichier contenant le menu de démarrage par défaut? Copie des fichiers de boot de l image ISO du CD de Clonezilla Live Nous allons récupérer la configuration de syslinux d un CD live de Clonezilla, ainsi que l image du système Linux qu il contient Chargez l image ISO dans le lecteur de CD-ROM de votre machine virtuelle redhat Le contenu du CD s ouvre dans une fenêtre d explorateur sur le bureau Copiez à la souris son sous-dossier «live» vers le dossier «/tftpboot» Ouvrez ensuite le dossier «live» pour visualiser son contenu Recherchez sur Internet le rôle des 3 fichiers vmlinuz, initrd.img et filesystem.squashfs dans un CD live de Linux. Ouvrez le sous-dossier «syslinux» de l archive montée et copiez tout son contenu vers le dossier «/tftpboot» Fermez les dossiers et éjectez le CD-ROM du lecteur virtuel 3
Configuration de pxelinux Recherchez à l aide d une commande find le fichier l emplacement du fichier de boot PXE pxelinux.0 dans l ensemble de l arborescence de votre machine redhat et copiez le dans /tftpboot Commandes Placez vous dans le dossier /tftpboot, créez-y le sous-dossier pxelinux.cfg et déplacez-y le fichier syslinux.cfg sous le nom default Nous allons modifier ce fichier syslinux.cfg (renommé default) pour l adapter à notre configuration de boot PXE Ouvrez avec gedit le fichier /tftpboot/pxelinux.cfg/default En vous aidant du fichier PDF «Clonezilla Live on PXE Server», modifiez les parties en rouge du fichier default pour charger l image live de clonezilla par tftp à travers le réseau, et l avoir en français (avec un clavier français) Modifiez également les parties en bleu pour traduire le menu en français. Test du boot PXE de l image Clonezilla live Nous allons testez notre serveur PXE en bootant la machine virtuelle technique1 à travers le réseau Lancez VirtualBox Manager et éditez la configuration de la machine technique1 Dans l onglet, modifiez l ordre d'amorçage des unités en cochant «Réseau» et en le mettant en premier. Cliquez sur «OK» puis fermez «VirtualBox Manager» Démarrez la machine virtuelle technique1 La machine boote à travers le réseau grâce à notre serveur PXE et affiche le menu de pxelinux Si l on choisit «Clonezilla live», l image du CD est chargée à travers le réseau, puis démarrée. Eteignez la machine virtuelle technique1 : il nous faut préparer un dossier partagé sur notre serveur redhat qui accueillera les images disques sauvegardées avant de pouvoir utiliser pleinement clonezilla. 4
4 Mise en place du serveur SAMBA Nous devons partager un dossier de notre serveur redhat pour accueillir les sauvegardes d images disques de clonezilla. Il est possible d effectuer un partage NFS comme au TP n 1, ou un partage CIFS (SMB) grâce à un serveur SAMBA. Nous allons choisir cette solution car elle est plus sécurisée (restriction des utilisateurs autorisés), plus efficace en débit sur de gros fichiers, et permettra plus facilement d accéder au partage sous des machines Windows. Configuration du partage SAMBA Créez à la racine un dossier /images destiné à accueillir les images disques et affectez-y tous les droits récursifs pour tout le monde Créez un nouvel utilisateur Linux sans lui donner de mot de passe Linux Ajoutez cet utilisateur aux utilisateurs autorisés SAMBA en lui donnant comme mot de passe SAMBA «C309» mkdir /images chmod R 777 /images/ useradd clonezilla smbpasswd a clonezilla Remarque : les utilisateurs autorisés SAMBA doivent être des utilisateur Unix, mais ils possèdent leur propre mot de passe éventuellement différent de celui du compte Unix (option unix password sync = no ci-dessous) Ouvrez avec gedit le fichier de configuration du serveur samba /etc/samba/smb.conf et copiez le contenu suivant Redémarrez le serveur SAMBA et activez-le au démarrage service smb restart chkconfig smb on Affichez la liste des ressources SAMBA disponibles pour l utilisateur clonezilla sur la machine redhat : smbclient -U clonezilla -L redhat Copie d écran Vérifiez sous la machine serveur Windows 2008 que vous pouvez accédez au dossier partagé /Images Remarque : si l on veut désigner la machine redhat par son nom plutôt que son @IP, il faut la rajouter au serveur DNS 5
Configuration du montage SAMBA automatique sous Clonezilla Nous voudrions que le dossier /images de notre serveur redhat soit utilisé automatiquement par clonezilla comme dossier d archive des images disques lors des opérations de sauvegarde ou restauration. Lisez le document PDF «Preseeding the mounting of image repository» Quel est le point de montage utilisé par clonezilla pour désigner le dossier d archive des images disques? Dans le fichier /tftpboot/pxelinux.cfg/default, quelles options faut-il rajouter à la commande append du menu Clonezilla pour monter le dossier /images de la machine redhat en utilisant l utilisateur SAMBA clonezilla? Effectuez ces modifications sur le fichier /tftpboot/pxelinux.cfg/default 4 Déploiement de l image de la machine technique1 vers technique2 Sauvegarde de l image du disque dur de la machine cliente technique1 Bootez la machine technique1 en PXE sur le réseau et effectuez une sauvegarde de son disque dur complet à l aide de clonezilla, en utilisant les options suivantes lors des différents écrans : - sauvegarde en mode «device-image» (disque vers image) - skip : utiliser /home/partimag existant - Beginner Mode débutant : Accepter les options par défaut - savedisk : Sauvegarder le disque local dans une image - Saisissez un nom pour l image : technique1 - [ ] sda 26.8GB_VBOX_HARDDISK - Non, ne pas vérifier l image sauvegardée A la fin de la sauvegarde, éteignez la machine par l option (0) Poweroff Copies d écrans 6
Restauration de l image du disque de la machine technique1 sur la machine technique2 Bootez la machine technique2 en PXE sur le réseau et effectuez une restauration depuis l image du disque dur de la machine technique1 prise précédemment, en choisissant convenablement les options. Copies d écrans Finalisation du clonage La machines «clonée» étant identique à l initiale, il nous reste à la personnaliser. Comme la configuration réseau est fournie par le serveur DHCP, il n y a en fait plus qu à définir son nom sous Fedora 14 et Windows 7 Ouvrez sur votre machine serveur Windows 2008 l outil d administration Supprimez dans l onglet «Computer» l ancienne machine technique2 pour ne pas avoir de conflit avec la nouvelle qui vient d être crée par clonage Démarrez la machine clonée technique2 en root sous Fedora 14 sur leurs disques locaux et redéfinissez correctement son nom dans le fichier /etc/sysconfig/network Vérifiez ensuite que vous pouvez vous loger sur cette machine avec les comptes technicien ou stagiaire Redémarrez la machine technique2 sous Windows 7 en vous connectant avec le compte Administrateur Rectifiez alors le nom de la machine tout en l intégrant en même temps au domaine AD agence-i.c309.local Remarque : Ces étapes d intégration au domaine Active Directory de la machine Windows et de modification du nom de la machine Linux auraient pu être effectuées automatiquement par des scripts de post installation. Avec certains logiciels commerciaux, il est même possible de modifier simplement de très nombreux paramètres systèmes (clé windows, nom de l ordi, mots de passe, domaine ou groupe de travail, paramètres réseau, etc) au moment même du déploiement pour automatiser complètement la démarche. 7