Mes ressources
Les commandes et procédures que j'utilise au quotidien. Clique sur une commande pour la copier.
🐧 Commandes Linux
🪟 Commandes Windows (CMD & PowerShell)
📡 Réseau & Cisco IOS
🐳 Docker
📦 Git
📘 Procédures d'installation & configuration
🔥 pfSense — installation et configuration de base Pare-feu / routeur
1. Prérequis
- Une VM (Proxmox, VirtualBox, VMware) avec 2 cartes réseau : WAN (vers Internet) et LAN (réseau interne).
- 1 vCPU, 1 à 2 Go de RAM, 16 Go de disque. ISO téléchargée sur
pfsense.org.
2. Installation
- Démarrer sur l'ISO → Install → partitionnement Auto (ZFS) → redémarrer.
- À la console : « Should VLANs be set up now? » →
n(on les fera plus tard). - Assigner les interfaces : WAN =
vtnet0/em0, LAN =vtnet1/em1. - Option
2du menu console → définir l'IP du LAN (ex :192.168.10.1/24) et activer le DHCP.
3. Interface web
- Depuis un poste du LAN :
https://192.168.10.1— identifiants par défautadmin/pfsense. - Suivre l'assistant : nom d'hôte, DNS, fuseau horaire, changer le mot de passe admin.
4. Créer des VLAN
- Interfaces → Assignments → VLANs → Add : interface parent = LAN, tag =
10,20… - Interface Assignments : ajouter chaque VLAN, l'activer, lui donner une IP (ex :
10.0.10.1/24). - Services → DHCP Server : activer le DHCP sur chaque VLAN.
5. Règles de pare-feu
- Firewall → Rules : les règles sont lues de haut en bas, la première qui correspond s'applique.
- Par défaut tout est bloqué sur une nouvelle interface : ajouter une règle Pass explicite.
- Exemple : bloquer VLAN Invités → LAN, puis autoriser Invités → any (Internet).
6. Redirection de port (NAT)
Firewall → NAT → Port Forward → Add : interface WAN, port 443 → IP du serveur en DMZ, port 443. La règle de pare-feu associée est créée automatiquement.
7. VPN OpenVPN (accès distant)
- System → Cert Manager : créer une CA puis un certificat serveur.
- VPN → OpenVPN → Wizards : suivre l'assistant (authentification locale).
- System → Package Manager : installer
openvpn-client-exportpour générer les fichiers clients.
💡 Toujours faire une sauvegarde : Diagnostics → Backup & Restore avant une grosse modification.
🧭 Apache Guacamole avec Docker Bastion d'accès RDP / SSH / VNC
Guacamole permet d'accéder à ses serveurs depuis un simple navigateur. Il se compose de 3 briques : guacd (le moteur qui parle RDP/SSH), guacamole (l'interface web) et une base de données (utilisateurs et connexions).
1. Préparer le dossier
mkdir -p ~/guacamole/init && cd ~/guacamole
# Générer le script de création de la base
docker run --rm guacamole/guacamole:1.5.5 /opt/guacamole/bin/initdb.sh --postgresql > init/initdb.sql
2. Fichier docker-compose.yml
services:
guacd:
image: guacamole/guacd:1.5.5
restart: unless-stopped
postgres:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_DB: guacamole_db
POSTGRES_USER: guacamole_user
POSTGRES_PASSWORD: MotDePasseSolide
volumes:
- ./init:/docker-entrypoint-initdb.d:ro
- ./data:/var/lib/postgresql/data
guacamole:
image: guacamole/guacamole:1.5.5
restart: unless-stopped
depends_on: [guacd, postgres]
environment:
GUACD_HOSTNAME: guacd
POSTGRESQL_HOSTNAME: postgres
POSTGRESQL_DATABASE: guacamole_db
POSTGRESQL_USER: guacamole_user
POSTGRESQL_PASSWORD: MotDePasseSolide
ports:
- "8080:8080"
3. Lancer et se connecter
docker compose up -d
docker compose logs -f guacamole # vérifier qu'il n'y a pas d'erreur
- Ouvrir
http://IP_DU_SERVEUR:8080/guacamole - Identifiants par défaut :
guacadmin/guacadmin→ créer un nouvel admin et supprimer guacadmin. - Paramètres → Connexions → Nouvelle connexion : protocole RDP, hôte, port 3389, identifiants, et cocher « Ignorer le certificat du serveur » en lab.
🔐 En production : placer Guacamole derrière un reverse proxy HTTPS (Nginx) et activer la double authentification (extension TOTP).
🗂️ Active Directory sur Windows Server AD DS, DNS, OU, GPO
- Donner une IP fixe au serveur et le renommer (ex :
SRV-AD01), puis redémarrer. - Gestionnaire de serveur → Ajouter des rôles : cocher AD DS (et DNS).
- Cliquer sur le drapeau → Promouvoir ce serveur en contrôleur de domaine → nouvelle forêt (ex :
entreprise.local). - Après redémarrage : Utilisateurs et ordinateurs Active Directory → créer des OU (Direction, Compta, Informatique…).
- Créer utilisateurs et groupes dans les OU.
- Gestion des stratégies de groupe : créer une GPO, la lier à une OU, puis
gpupdate /forcesur le client. - Sur le poste client : DNS = IP du contrôleur de domaine, puis joindre le domaine.
# La même chose en PowerShell Install-WindowsFeature AD-Domain-Services -IncludeManagementTools Install-ADDSForest -DomainName "entreprise.local" New-ADOrganizationalUnit -Name "Informatique" New-ADUser -Name "Jean Dupont" -SamAccountName jdupont -Path "OU=Informatique,DC=entreprise,DC=local" -AccountPassword (Read-Host -AsSecureString) -Enabled $true Add-Computer -DomainName entreprise.local -Restart # sur le client
🖥️ Proxmox VE — créer une VM Debian Virtualisation
- Téléverser l'ISO : local → ISO Images → Upload.
- Create VM : nom, ISO, disque (VirtIO SCSI), CPU (type
host), RAM, réseau (vmbr0, modèle VirtIO). - Installer Debian (sans environnement de bureau, cocher « serveur SSH »).
- Installer l'agent :
apt install qemu-guest-agentpuis l'activer dans Options → QEMU Guest Agent. - Transformer une VM propre en Template pour cloner rapidement les suivantes.
- Programmer des sauvegardes : Datacenter → Backup.
🔑 SSH par clé (sans mot de passe) Sécurisation serveur
# Sur MON poste : créer une paire de clés ssh-keygen -t ed25519 -C "yannis@poste" # Envoyer la clé publique au serveur ssh-copy-id -i ~/.ssh/id_ed25519.pub user@IP_SERVEUR # Sur le SERVEUR : désactiver la connexion par mot de passe et root sudo nano /etc/ssh/sshd_config PasswordAuthentication no PermitRootLogin no sudo systemctl restart ssh
⚠️ Tester la connexion par clé dans un second terminal avant de fermer le premier, sinon risque de se bloquer dehors.
🐳 Installer Docker sur Debian Conteneurs
sudo apt update && sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo usermod -aG docker $USER # puis se déconnecter / reconnecter
docker run hello-world
🎫 GLPI sur Debian (LAMP) Gestion de parc & tickets
sudo apt install -y apache2 mariadb-server php php-{mysql,curl,gd,intl,xml,mbstring,zip,bz2,ldap,bcmath}
sudo mysql_secure_installation
sudo mysql -e "CREATE DATABASE glpi; CREATE USER 'glpi'@'localhost' IDENTIFIED BY 'MotDePasse'; GRANT ALL ON glpi.* TO 'glpi'@'localhost';"
# Télécharger la dernière version sur github.com/glpi-project/glpi/releases
sudo tar -xzf glpi-*.tgz -C /var/www/html/
sudo chown -R www-data:www-data /var/www/html/glpi
- Ouvrir
http://IP/glpiet suivre l'assistant (baseglpi). - Comptes par défaut :
glpi/glpi(admin) — changer tous les mots de passe et supprimerinstall/install.php. - Installer l'agent GLPI sur les postes pour l'inventaire automatique.
Aucun résultat pour cette recherche.