2.7 KiB
🐧 Debian Base
✨ Scripts utiles pour preparer rapidement une base serveur Debian sans environnement graphique.
🎯 Objectif
Ce depot contient un script interactif permettant de configurer les premiers parametres d'une machine Debian serveur :
- 🏷️ nom de machine
- 🌐 adresse IP statique
- 🚪 passerelle par defaut
- 🧭 serveur(s) DNS
Chaque partie est facultative. Il est donc possible de modifier uniquement le hostname, uniquement le reseau, ou les deux.
🧰 Fichier principal
configure-debian-network.sh
Le script cible une installation serveur Debian classique utilisant :
- 📄
/etc/network/interfaces - ⚙️ le service
networking - 🔐 une execution en root via
sudo
Il ne vise pas les postes avec NetworkManager, interface graphique ou gestion reseau desktop.
🚀 Utilisation
sudo ./configure-debian-network.sh
Le script demande les informations une par une :
Nom de la machine (laisser vide pour ne pas modifier):
Adresse IP avec prefixe CIDR (ex: 192.168.1.50/24, laisser vide pour ne pas modifier le reseau):
Exemples de cas d'usage :
| Besoin | Action |
|---|---|
| 🏷️ Modifier uniquement le hostname | Renseigner le hostname, laisser l'IP vide |
| 🌐 Modifier uniquement le reseau | Laisser le hostname vide, renseigner l'IP |
| 🛠️ Modifier hostname et reseau | Renseigner toutes les informations |
| 💤 Ne rien changer | Laisser hostname et IP vides |
🛟 Sauvegardes
Avant modification, le script sauvegarde les fichiers concernes avec un suffixe date :
/etc/hostname.bak.YYYYMMDD-HHMMSS
/etc/hosts.bak.YYYYMMDD-HHMMSS
/etc/network/interfaces.bak.YYYYMMDD-HHMMSS
/etc/resolv.conf.bak.YYYYMMDD-HHMMSS
Seuls les fichiers necessaires sont sauvegardes selon les options choisies.
✅ Validation
Verification syntaxique :
bash -n configure-debian-network.sh
Verification manuelle recommandee apres execution :
hostnamectl
ip addr
ip route
cat /etc/resolv.conf
📝 Notes Debian
Le script est adapte aux serveurs Debian minimalistes. Sur une machine utilisant NetworkManager ou systemd-networkd, il faut utiliser le backend reseau correspondant plutot que modifier directement /etc/network/interfaces.
⚖️ Licence
Ce projet est distribue sous licence GNU Affero General Public License v3.0.
Voir LICENSE pour le texte complet.