Files
debian-base/README.md
T
2026-05-22 13:49:15 +02:00

4.1 KiB

🐧 Debian Base

Debian Bash Network License

Scripts utiles pour préparer rapidement une base serveur Debian sans environnement graphique.

🎯 Objectif

Ce dépôt regroupe des scripts Bash pour automatiser les tâches courantes de préparation, configuration et maintenance d'une base serveur Debian minimaliste.

L'objectif est de garder une collection de scripts :

  • 🧱 simples à lire et à auditer ;
  • 🔐 exécutables explicitement avec les privilèges nécessaires ;
  • 🧭 adaptés à des serveurs sans environnement graphique ;
  • 📚 documentés dans ce README au fur et à mesure des ajouts.

🧰 Scripts disponibles

Script Rôle
configure-debian-network.sh Configurer le hostname, l'IP statique, la gateway et les DNS
install-docker-ce.sh Installer Docker CE depuis le dépôt officiel Docker

Le script réseau cible une installation serveur Debian classique utilisant :

  • 📄 /etc/network/interfaces
  • ⚙️ le service networking
  • 🔐 une exécution en root via sudo

Il ne vise pas les postes avec NetworkManager, interface graphique ou gestion réseau desktop.

🚀 Utilisation réseau

Configurer la base réseau :

sudo ./configure-debian-network.sh

Le script réseau demande les informations une par une :

Nom de la machine (laisser vide pour ne pas modifier):
Adresse IP avec préfixe CIDR (ex: 192.168.1.50/24, laisser vide pour ne pas modifier le réseau):

Exemples de cas d'usage :

Besoin Action
🏷️ Modifier uniquement le hostname Renseigner le hostname, laisser l'IP vide
🌐 Modifier uniquement le réseau Laisser le hostname vide, renseigner l'IP
🛠️ Modifier hostname et réseau Renseigner toutes les informations
💤 Ne rien changer Laisser hostname et IP vides

🐳 Installation Docker CE

Installer Docker CE depuis le dépôt officiel Docker :

sudo ./install-docker-ce.sh

Installer Docker CE et ajouter un utilisateur au groupe docker :

sudo ./install-docker-ce.sh olivier

Le script Docker effectue les actions suivantes :

  • 🧹 suppression des anciens paquets Docker conflictuels si présents ;
  • 🔑 ajout de la clé GPG officielle Docker dans /etc/apt/keyrings/docker.asc ;
  • 📦 ajout du dépôt APT officiel via /etc/apt/sources.list.d/docker.sources ;
  • 🐳 installation de docker-ce, docker-ce-cli et containerd.io ;
  • 🧩 installation des plugins docker-buildx-plugin et docker-compose-plugin ;
  • ⚙️ activation et démarrage du service docker.

Vérification après installation :

docker --version
docker compose version
systemctl status docker

Si un utilisateur est ajouté au groupe docker, il doit ouvrir une nouvelle session avant de pouvoir utiliser Docker sans sudo.

🛟 Sauvegardes

Avant modification, le script sauvegarde les fichiers concernés 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 nécessaires sont sauvegardés selon les options choisies.

Validation

Vérification syntaxique :

bash -n configure-debian-network.sh
bash -n install-docker-ce.sh

Vérification manuelle recommandée après exécution :

hostnamectl
ip addr
ip route
cat /etc/resolv.conf

📝 Notes Debian

Le script est adapté aux serveurs Debian minimalistes. Sur une machine utilisant NetworkManager ou systemd-networkd, il faut utiliser le backend réseau correspondant plutôt que modifier directement /etc/network/interfaces.

⚖️ Licence

Ce projet est distribué sous licence GNU Affero General Public License v3.0.

Voir LICENSE pour le texte complet.