Bienvenue

mon journal de bord

2025-11-13: 3h

Créer les VM

  • Créer la VM sur cloud
  • Ajouter l’utilisateur sysadmin
    • Commandes:
      • sudo adduser sysadmin
      • sudo usermod -aG sudo sysadmin
      • echo ‘%sudo ALL=(ALL:ALL) NOPASSWD:ALL’ | sudo tee /etc/sudoers.d/90-local-sudo >/dev/null
      • sudo chmod 0440 /etc/sudoers.d/90-local-sudo
  • Créez et ajoutez une paire de clé SSH pour le compte « sysadmin »
    • Commandes:
    • #1. Créer une clé SSH dans le terminal de Windows
      • cd /dossierDeDestination
      • # Pour le fichier des destination: sshsysadmin
        • # « passer » les autres question avec la touche « Entrée ».
        • # donne 2 fichiers « sshsysadmin » et « sshsysadmin.pub »
    • #3. Ajouter la clé sur le serveur (À faire dans la VM)
      • sudo -u sysadmin mkdir -p /home/sysadmin/.ssh
      • sudo chmod 700 /home/sysadmin/.ssh
    • #Mettre le contenu de sshsysadmin.pub dans la ligne suivante:
      • echo ‘ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOTfiHgjK7yzSNz18VOk8AiE84lWVfb52OfsbBImdk6j mbelisle@cstj.qc.ca’ | sudo tee /home/sysadmin/.ssh/authorized_keys >/dev/null
      • echo ‘ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE7+zLon1FMeVKVy+Sh+gPPAZwU+Hf4o5cjMCanyJdre mbelisle@cstj.qc.ca’ | sudo tee /home/sysadmin/.ssh/authorized_keys >/dev/null
      • sudo chown -R sysadmin:sysadmin /home/sysadmin/.ssh
      • sudo chmod 600 /home/sysadmin/.ssh/authorized_keys
      • #5. Tester la connexion, exemple:
        • # mdp: SecretA25420*
          • # adresse externe: 34.95.3.154
          • ssh sysadmin@ 34.95.3.154
          • ssh -i « .\sshsysadmin » sysadmin@ 34.95.3.154
          • ssh -i « D:\dossierDeDestination\sshsysadmin » sysadmin@ 34.95.3.154
          • ssh-keygen -t ed25519 -C « mbelisle@cstj.qc.ca »
  • Créer la VM dans cloud
  • Ajouter utilisateur sysadmin
    • Commandes::
      • sudo adduser sysadmin
      • echo ‘%sudo ALL=(ALL:ALL) NOPASSWD:ALL’ | sudo tee /etc/sudoers.d/90-local-sudo >/dev/null
      • sudo chmod 0440 /etc/sudoers.d/90-local-sudo
      • sudo usermod -aG sudo sysadmin
  • Utiliser la meme clé SSH que le serveur01pour le compte « sysadmin »
    • Commandes:
    • Ajouter la clé sur le serveur (À faire dans la VM)
      • sudo -u sysadmin mkdir -p /home/sysadmin/.ssh
      • sudo chmod 700 /home/sysadmin/.ssh
    • Mettre le contenu de sshsysadmin.pub dans la ligne suivante:
      • echo ‘ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOTfiHgjK7yzSNz18VOk8AiE84lWVfb52OfsbBImdk6j mbelisle@cstj.qc.ca’ | sudo tee /home/sysadmin/.ssh/authorized_keys >/dev/null
      • echo ‘ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE7+zLon1FMeVKVy+Sh+gPPAZwU+Hf4o5cjMCanyJdre mbelisle@cstj.qc.ca’ | sudo tee /home/sysadmin/.ssh/authorized_keys >/dev/null
      • sudo chown -R sysadmin:sysadmin /home/sysadmin/.ssh
      • sudo chmod 600 /home/sysadmin/.ssh/authorized_keys
    • Tester la connexion, exemple:
      • # mdp: SecretA25420*
      • #adresse externe: 34.95.3.154
      • ssh sysadmin@35.203.26.216
      • ssh -i « .\sshsysadmin » sysadmin@35.203.26.216
      • ssh -i « D:\dossierDeDestination\sshsysadmin » sysadmin@35.203.26.216

Date: 2025-11-20: 3h

Serveur01

Étape 1

Installer la pile AMP sur au serveur (sécurisez MySQL)

  • 1. IDÉALEMENT VÉRIFIER ET
    • Commande:
      • sudo apt update
  • 2. INSTALLER LES DIFFÉRENTS SERVCIES AVEC:
    • Commandes:
      • sudo apt install apache2
      • sudo apt install mysql-server php
      • sudo apt install libapache2-mod-php php-mysql -y
  • 3. VÉRIFIER QUE LES PAQUETS SONT INSTALLÉS
    • Commandes:
      • apache2 -v
      • mysql –version
      • php -v
  • 4. SÉCURISER MYSQL
    • Commandes:
      • sudo mysql_secure_installation
  • 5. RÉPONDRE AUX QUESTIONS (0 pour LOW et y pour les autres questions)
  • 6. VÉRIFIER QUE LA PAGE PAR DÉFAUT AFFICHE

Télécharger wordpress

INSTALLER UN LOGICIEL POUR LES ZIP, EXEMPLE UNZIP.

UNZIP:

CREER BASE DE DONNÉES:

Étape 2

Associer l’adresse IP externe de serveur01 à un nom de domaine utiliser un des services suivants pour avoir un nom de domaine gratuit : noip.com –nom de domaine: es-matricule. ddns.net

  • Commande:
    • sudo nano /etc/apache2/sites-available/000-default.conf

Étape 3

ACTIVER HTTPS SUR VOTRE SITE WORDPRESS VIA « CERTBOT

  • Commandes:
  • #1. Installer Certbot
    • sudo apt update
    • sudo apt install certbot python3-certbot-apache -y
  • #2. Démarrer l’assistant de création de certificat Certbot
    • sudo certbot –apache -d es-6313680.ddns.net
  • #3. Ajouter un fichier
    • sudo nano /etc/apache2/sites-available/000-default-le-ssl.conf
  • l’icône qui confirme que votre site Web est sécurisé avec HTTPS

Date: 2025-11-27: 3h

Étape 4

Mettre le site dans /var/www/html

DONNER LE DROIT À UNE APPLICATION COMME WORDPRESS DE MODIFIER LES FICHIERS D’UN DOSSIER

Installer wordpress : ERREUR IDENTIFIANT 6313680 (il manque le e avant le matricule)

Date: 2025-12-04: 3h

Ajouter les pages 

Vérifier que les commentaires sont bloqués :

2025-12-04

Serveur-NFS

Étape 1

Ajuster la page d’accueil et la page d’erreur 404 de ce site Web

  • Commandes:
  • Mettre les fichiers dans le dossier..
  • # Créer et ajuster les droits du dossier
    • sudo mkdir -p /projet-synthese
    • sudo chown -R nobody:nogroup /projet-synthese
    • sudo chmod 755 /projet-synthese
  • # Partager au serveur Web (mettre le IP INTERNE du serveur Web)
    • sudo nano /etc/exports
    • # Y mettre la ligne suivante:
    • /projet-synthese 10.162.0.2(rw,sync,no_subtree_check)
    • sudo exportfs -ra
    • sudo systemctl restart nfs-kernel-server
  • Importer les fichiers
  • deplacer vers dossier /projet-synthese
    • sudo mv 404.html /projet-synthese
    • sudo mv index.html /projet-synthese
    • sudo mv styles.css /projet-synthese
    • Verifier que les fichiers sont biens dans le dossier
    • cd /projet-synthese
    • ls
      • 404.html  index.html  styles.css
  • SUR LE SERVEUR WEB (serveur01)
    • Commandes:
      • sudo apt update
      • sudo apt install -y nfs-common
      • sudo mkdir -p /mnt/nfs/projet-synthese
    • # Spécifier le serveur NFS (mettre le IP INTERNE du serveur-nfs)
      • sudo mount 10.162.0.3:/projet-synthese /mnt/nfs/projet-synthese
    • # Tester, ceci devrait afficher les fichiers du serveur-nfs!
      • ls /mnt/nfs/projet-synthese
    • # Si l’étape précédente fonctionne et affiche les fichiers monter le dossier de façon permanente:
      • sudo nano /etc/fstab
      • 10.162.0.3:/projet-synthese  /mnt/nfs/projet-synthese  nfs  defaults  0  0
    • # Pour la suite, créer un hôte virtuel qui va mettre le dossier /mnt/nfs/projet-synthese comme DocumentRoot et Directory pour votre page Web NFS qui ressemblera à nfs.matricule.zapto.org
    • – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
    • Ajouter/modifier un fichier « .htaccess »
    • PAGES D’ERREURS VERSION FICHIER .htaccess
    • 1. CRÉER LE FICHIER .htaccess DANS LE DOSSIER VOULU
      • sudo nano /mnt/nfs/projet-synthese/.htaccess
    • 2. Y AJOUTER LA PAGE DÉSIRÉE
      • ErrorDocument 404 /404.html
    • 3. TESTER SI ÇA FONCTIONNE EN PROVOQUANT L’ERREUR SUR LE WEB

Étape 2

Accéder au site via le nom de domaine et de sous-domaine « nfs » -> «nfs.es-6313680.ddns.net».

  • Sous-domaine
    • Commandes:
    • Les droits sur le dossier et l’hôte virtuel:
      • sudo chown -R www-data:www-data /mnt/nfs/projet-synthese
      • sudo nano /etc/apache2/sites-available/nfs.conf
      • <VirtualHost *:80>
      •     ServerName nfs.es-6313680.ddns.net
      •     DocumentRoot /mnt/nfs/projet-synthese
      •     <Directory /mnt/nfs/projet-synthese>
      •         Options -Indexes +FollowSymLinks
      •         AllowOverride All
      •         Require all granted
      •     </Directory>
      • </VirtualHost>
    • #4. Prendre en compte le .conf et repartir le service
      • sudo a2ensite nfs.conf
      • sudo systemctl reload apache2
  • #5. Faire passer votre site Web en HTTPS avec certbot
    • sudo certbot –apache -d nfs.es-6313680.ddns.net

Date: 2025-12-14: 5h

NODE RED

1- Installation de NodeRed

2-S’assurer que NodeRed démarre au démarrage de laVM.

  • Commande:
    • sudo systemctl enable nodered.service
    • sudo systemctl start nodered.service
    • Vérifications
    • systemctl status nodered

3-Ouvrir les ports de NodeRed dans les règles du pare-feu du « serveur01 »

  • Commande:
    • sudo systemctl enable nodered.service
    • sudo systemctl start nodered.service
    • Vérifications
    • systemctl status nodered

4- Nouvelle regle pare-feu

ZABBIX

Étape 1

Étape 2

hôte virtuel pour le « sous-domaine » et le « HTTPS » de Zabbix

Étape 3

MEDIAWIKI

Étape 1

Créer la base de données et l’utilisateur

Étape 2

hôte virtuel pour le « sous-domaine » et le « HTTPS » de MediaWiki

2025-12-11: 3h

Difficultés

1- «nfs.es-6313680.ddns.net»

Erreur

  • Mauvais ServeurName
  • Mauvais DocumentRoot
  • Informations manquantes sur un dossier

Correction

  • changer le non du serveur de nfs.es-6313680.gleeze.com à nfs.es-6313680.ddns.net
  • changer le nom du dossier de /var/www/html/nfs à /mnt/nfs/projet-synthese
  • faire les deux corrections plus haut dans le fichier nfs-le-ssl.conf

2025-12-11

Difficultés

2- logo

Erreur

  • image refusé

Correction

  • réécrire ces deux lignes sépatément:
    • sudo chown -R www-data:www-data /var/www/html/site1
    • sudo chmod -R 755 /var/www/html/site1

2025-12-11

Difficultés

3- «es-6313680.ddns.net:1880»

Erreur

Après avoir les ports pour Node Red les sites es-6313680.ddns.net:1880 et es-6313680.ddns.net ne fonctionnaient plus
  • le pare-feu UFW n’autorise que Node-RED (1880) et SSH (22).
    Les ports 80 (HTTP) et 443 (HTTPS) pour WordPress ne sont pas ouverts, donc depuis l’extérieur le site ne répond pas.
Après corriger l’erreur plus haut es-6313680.ddns.net:1880 ne fonctionnaient toujours pas
  • regle pare-feu manquante

Correction

  • ouvrir les ports HTTP et HTTPS
  • nouvelle regle pare-feu
  • ajouter aux tags réseau

Recherche

    • IA
      • Node-Red
        • commande pour qu »il démarre au démarrage de laVM.
        • Commandes:
          • sudo systemctl enable nodered.service
          • sudo systemctl start nodered.service
          • Vérifications
          • systemctl status nodered
        • commandes pour ouvrir les ports de NodeRed dans les règles du pare-feu du « serveur01
        • Commandes:
          • sudo ufw allow ssh
          • sudo ufw allow 1880/tcp
          • sudo ufw enable
          • sudo ufw reload
          • Vérification
          • sudo ufw status
    • Zabbix
      • serveur nfs dans la liste des host
      • Commandes:
        • Étape 1 — Installer l’agent Zabbix sur le serveur NFS
          🔹 Sur le serveur NFS (pas serveur01)

          wget https://repo.zabbix.com/zabbix/7.4/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.4+ubuntu24.04_all.deb
        • sudo dpkg -i zabbix-release_latest_7.4+ubuntu24.04_all.deb
        • sudo apt update
        • sudo apt update sudo apt install zabbix-agent
          Vérifier :

          systemctl status zabbix-agent
        • Étape 2 — Configurer l’agent Zabbix (serveur NFS)
          Éditer le fichier :

          sudo nano /etc/zabbix/zabbix_agentd.conf
          Modifier au minimum :

          Server=IP_SERVEUR01 ServerActive=IP_SERVEUR01 Hostname=serveur-nfs
          👉 IP_SERVEUR01 = IP privée du serveur Zabbix
          👉 Hostname doit correspondre exactement au host Zabbix
          Redémarrer l’agent :

          sudo systemctl restart zabbix-agent sudo systemctl enable zabbix-agent
        • Étape 3 — Ouvrir le pare-feu (si actif)
          Sur le serveur NFS :

          sudo ufw allow 10050/tcp
          Sur serveur01 (si besoin) :

          sudo ufw allow 10051/tcp
        • Étape 4 — Ajouter le serveur NFS dans Zabbix Web
          Interface Web :

          Configuration → Hosts → Create host
        • Étape 5 — Ajouter un Template (OBLIGATOIRE)
          Dans Templates :
          Ajouter :

          Linux by Zabbix agent
          👉 Sans template = aucune donnée

        • Étape 6 — Sauvegarder et vérifier
          Après 1–2 minutes :

          Monitoring → Hosts
          Tu dois voir :
          ✅ serveur01
          ✅ serveur nfs
          Puis :

          Monitoring → Latest data

Fin

Projet Synthèse