serveur
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| serveur [2026/08/24 04:50] – [Pourquoi PXE et iPXE] rene | serveur [2026/08/28 20:47] (Version actuelle) – supprimée rene | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ======== Serveur Clonezilla des Abeilles ====== | ||
| - | ===== Pourquoi un serveur iPXE - Clonezilla ===== | ||
| - | Une vingtaine d' | ||
| - | |||
| - | ==== Pourquoi PXE et iPXE ==== | ||
| - | Suivant que les postes clients sont en BIOS (Legacy) ou en UEFI ils vont boutés en PXE ou en iPXE | ||
| - | |||
| - | Extrait | ||
| - | |||
| - | **Le boot PXE** (Preboot Execution Environment) repose sur deux protocoles importants : le protocole DHCP (Dynamic Host Configuration Protocol) pour fournir une configuration IP au client PXE, ainsi que l' | ||
| - | |||
| - | - Le client PXE, à savoir l' | ||
| - | - Le serveur DHCP répond à la demande en fournissant une adresse IP au client, ainsi que les informations nécessaires pour accéder au serveur PXE (adresse IP ou nom). | ||
| - | - Le client PXE peut accéder au réseau donc il envoie une demande de boot PXE sur le réseau, en utilisant le protocole TFTP pour accéder au serveur PXE. | ||
| - | - Le serveur PXE répond à la demande de l' | ||
| - | - Le client PXE télécharge ces fichiers à partir du serveur PXE (via le protocole TFTP) et les utilise pour démarrer sur l' | ||
| - | |||
| - | **Le boot iPXE** est une méthode plus récente qui permet à un ordinateur de démarrer sur le réseau. Le protocole iPXE est une extension du protocole PXE qui offre des fonctionnalités supplémentaires telles que: | ||
| - | * le démarrage à partir d'un serveur web via HTTP | ||
| - | * le support des scripts et des menus de démarrage personnalisés | ||
| - | |||
| - | **UEFI vs BIOS** : détecter l’architecture via DHCP pour envoyer ipxe.efi en UEFI et undionly.kpxe en BIOS, sinon l’amorçage échoue | ||
| - | |||
| - | **Passerelle** : si vous voulez Internet pour les clients, activer ip_forward et éventuellement NAT | ||
| - | |||
| - | ===== Objectif du serveur ===== | ||
| - | |||
| - | * **eth0** → accès **Internet** via le DHCP de votre réseau externe | ||
| - | * **eth1** → réseau **interne** dédié au déploiement : | ||
| - | * Serveur DHCP interne | ||
| - | * Boot iPXE (DHCP + TFTP) | ||
| - | * Clonezilla pour cloner des postes | ||
| - | * Après clonage, les postes pourront accéder à Internet via la machine serveur (routage + NAT) | ||
| - | ===== Installation ===== | ||
| - | '' | ||
| - | |||
| - | |||
| - | ==== 1. Vérification et configuration des interfaces réseau ==== | ||
| - | |||
| - | === Identifier les interfaces === | ||
| - | ip a | ||
| - | |||
| - | === Si vous utilisez systemd-networkd sur : === | ||
| - | ''/ | ||
| - | ini | ||
| - | [Match] | ||
| - | Name=eth0 | ||
| - | | ||
| - | [Network] | ||
| - | DHCP=yes | ||
| - | et sur | ||
| - | |||
| - | ''/ | ||
| - | ini | ||
| - | [Match] | ||
| - | Name=eth1 | ||
| - | | ||
| - | [Network] | ||
| - | Address=192.168.50.1/ | ||
| - | Activez | ||
| - | sudo systemctl restart systemd-networkd | ||
| - | |||
| - | ==== 2. Installez les services nécessaires ==== | ||
| - | Nous utiliserons **dnsmasq**, | ||
| - | sudo apt update | ||
| - | sudo apt install dnsmasq ipxe tftpd-hpa | ||
| - | |||
| - | ==== 3. Préparer le répertoire TFTP ==== | ||
| - | sudo mkdir -p /srv/tftp | ||
| - | sudo chmod -R 755 /srv/tftp | ||
| - | |||
| - | Copier les images iPXE : | ||
| - | sudo cp / | ||
| - | |||
| - | ====4. Configurer dnsmasq (DHCP interne + TFTP) ==== | ||
| - | |||
| - | Éditer : | ||
| - | |||
| - | ''/ | ||
| - | |||
| - | # Interface interne uniquement | ||
| - | interface=eth1 | ||
| - | bind-interfaces | ||
| - | | ||
| - | # DHCP range for client machines | ||
| - | dhcp-range=192.168.50.10, | ||
| - | | ||
| - | # Gateway vers Internet à travers le serveur | ||
| - | dhcp-option=3, | ||
| - | dhcp-option=6, | ||
| - | | ||
| - | # TFTP server | ||
| - | enable-tftp | ||
| - | tftp-root=/ | ||
| - | | ||
| - | # Fichiers de boot iPXE | ||
| - | dhcp-boot=undionly.kpxe | ||
| - | |||
| - | |||
| - | Redémarrer | ||
| - | sudo systemctl restart dnsmasq | ||
| - | |||
| - | |||
| - | ===== 5. Mettre les fichiers Clonezilla sur le serveur Web ===== | ||
| - | |||
| - | Les images Clonezilla doivent être servies par HTTP (plus rapide que TFTP). | ||
| - | |||
| - | ==== Créer un dossier : ==== | ||
| - | |||
| - | sudo mkdir -p / | ||
| - | |||
| - | |||
| - | ==== Télécharger Clonezilla zip ==== | ||
| - | |||
| - | Extraire le fichier zip dans | ||
| - | / | ||
| - | cd / | ||
| - | sudo cp filesystem.squashfs | ||
| - | |||
| - | |||
| - | |||
| - | ==== 6. Configurer le script iPXE ==== | ||
| - | |||
| - | Créer le fichier | ||
| - | |||
| - | ''/ | ||
| - | |||
| - | #!ipxe | ||
| - | | ||
| - | kernel http:// | ||
| - | initrd http:// | ||
| - | boot | ||
| - | |||
| - | |||
| - | ==== Modifier dnsmasq pour que iPXE lance ce script : ==== | ||
| - | Ajouter à | ||
| - | |||
| - | ''/ | ||
| - | |||
| - | dhcp-userclass=set: | ||
| - | dhcp-boot=tag: | ||
| - | |||
| - | |||
| - | |||
| - | Redémarrer : | ||
| - | sudo systemctl restart dnsmasq | ||
| - | |||
| - | ====7. Configurer le routage Internet pour les postes clonés ==== | ||
| - | === Activer l'IP forwarding : === | ||
| - | Dans | ||
| - | |||
| - | ''/ | ||
| - | net.ipv4.ip_forward = 1 | ||
| - | |||
| - | |||
| - | Appliquer : | ||
| - | sudo sysctl -p | ||
| - | |||
| - | Configurer le NAT : | ||
| - | sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | ||
| - | |||
| - | Rendre permanent : | ||
| - | sudo apt install iptables-persistent | ||
| - | sudo netfilter-persistent save | ||
| - | |||
| - | Les postes du réseau interne pourront maintenant accéder à Internet via le serveur. | ||
| - | |||
| - | |||
| - | ==== 8. Test du boot iPXE ==== | ||
| - | |||
| - | |||
| - | - Brancher un poste sur le réseau interne (via eth1) | ||
| - | - Activer le boot PXE dans le BIOS | ||
| - | - Vérifier que : | ||
| - | * il obtient une IP → 192.168.50.x | ||
| - | * il télécharge `undionly.kpxe` | ||
| - | * iPXE charge `boot.ipxe` | ||
| - | * Clonezilla démarre | ||
| - | |||
| - | |||
serveur.1787547012.txt.gz · Dernière modification : de rene
