C3 - Administrer des systèmes informatiques communicants complexes

Description

Cette compétence vise à installer, configurer, mettre à disposition, maintenir en condition opérationnelle et sécuriser des systèmes informatiques communicants complexes.

Composantes Essentielles

  • en garantissant un niveau de sécurité et de confidentialité adapté aux enjeux
  • en procédant à des installations et des configurations dans des contextes variés
  • en s'appuyant sur une connaissance de l'architecture des systèmes et des réseaux
  • en appliquant les obligations légales, les normes en vigueur, et les bonnes pratiques
  • en mettant en place des mesures correctives adaptées à la nature des incidents identifiés

Apprentissages Critiques

  • AC1 Identifier les différents composants (matériels et logiciels) d'un système numérique
  • AC2 Utiliser les fonctionnalités de base d'un système multitâches / multiutilisateurs
  • AC3 Installer et configurer un système d'exploitation et des outils de développement
  • AC4 Configurer un poste de travail dans un réseau d'entreprise

Mes Acquisitions

Voici comment j'ai développé et acquis cette compétence à travers mes projets et expériences :

🖥️ 1. Il a acquis des compétences pour utiliser les fonctionnalités de base d’un système multitâches / multiutilisateurs

AC2

CONTEXTE ET DESCRIPTION

Dans le cadre d'une SAE (Situation d'Apprentissage et d'Évaluation), on a dû créer et configurer une machine virtuelle Debian pour apprendre la gestion multiutilisateurs et multitâches. Cette expérience pratique m'a permis de maîtriser l'environnement virtualisé avec gestion simultanée du système hôte Windows et du système invité Debian.

Points clés

👥
Gestion multiutilisateurs

Ajout de permissions : sudo usermod -aG sudo debian
Suppression d'utilisateur : sudo userdel nom_utilisateur
Créer un utilisateur : sudo useradd -m nom_utilisateur

Multitâche

Environnement virtualisé avec gestion simultanée du système hôte Windows et invité Debian. Possibilité de connexions simultanées des différents utilisateurs, utilisation efficace de la ligne de commande pour plusieurs opérations, et vérification des capacités multitâches et multiutilisateurs du système.

IMAGES

Information utilisateurs - Gestion multiutilisateurs VM Debian

Gestion des utilisateurs dans la VM Debian

🔍 2. Il est capable d'identifier les différents composants (matériels et logiciels) d'un système numérique

AC1

CONTEXTE ET DESCRIPTION

Dans le cadre de l'apprentissage de l'identification des composants système, j'ai utilisé la commande lshw (List Hardware) sur une machine virtuelle Debian. Cette commande permet d'analyser et d'identifier tous les composants matériels et logiciels du système de manière détaillée.

Points clés

Commande lshw (List Hardware)

Fonction : sudo lshw - Affiche une liste détaillée de tous les composants matériels
Options utiles : lshw -short pour un affichage condensé
Format : lshw -html pour un rapport HTML

Composants identifiés

La commande retourne des informations sur : le processeur (CPU), la mémoire vive (RAM), le stockage (disques durs/SSD), les cartes réseau, les bus système, les contrôleurs, et tous les périphériques connectés avec leurs spécifications techniques détaillées.

IMAGES

Résultat de la commande lshw - Identification des composants système

Résultat de la commande lshw montrant les composants système

⚙️ 3. Il a appris à installer et configurer un système d'exploitation et des outils de développement

AC3

CONTEXTE ET DESCRIPTION

Dans le cadre de la SAE S1.03 "Installation d'un poste pour le développement", j'ai réalisé l'installation complète d'un environnement de développement Linux (Debian Bullseye) sur une machine virtuelle VirtualBox. Ce projet pratique s'est déroulé sur plusieurs séances et m'a permis de maîtriser :

  • L'installation d'un système d'exploitation à partir d'un fichier VDI pré-configuré
  • La configuration complète de l'environnement de travail multiutilisateur
  • La gestion avancée des périphériques (USB, audio, webcam, Bluetooth)
  • L'installation et la configuration d'outils de développement (Java)

Points clés

💽
Installation avec fichier VDI

Préparation VirtualBox : Téléchargement et installation de VirtualBox 7.0.10
Fichier VDI : Utilisation d'un disque virtuel Debian Bullseye pré-configuré
📄 Voir le mode opératoire (page 6)

👥
Configuration multiutilisateur

Création utilisateurs : sudo useradd -m utilisateur + attribution de mots de passe
Droits administrateur : sudo usermod -aG sudo utilisateur pour droits sudo
Interface graphique : Installation XFCE4 avec sudo apt install xfce4
📄 Voir le mode opératoire (page 19)

Gestion des périphériques

USB 💾 : Configuration du partage USB entre hôte et invité, montage automatique
Audio 🎧 : Configuration des pilotes audio et test des sorties son
Webcam 📷 : Intégration de la webcam avec applications de capture
Bluetooth 📶 : Activation et configuration du Bluetooth

📄 Voir le mode opératoire (page 49)
Environnement de développement

Java Development : Installation OpenJDK 19 avec sudo apt install openjdk-19-jdk
Compilation et test : Création, compilation et exécution d'un programme Java de test
Gestionnaire de paquets : Utilisation d'apt-get pour installer les outils nécessaires
Variables d'environnement : Configuration JAVA_HOME et PATH pour le développement

📄 Voir le mode opératoire (page 110)

IMAGES

Installation Affichage

🐳 4. À l'aide de docker, il est capable d'installer des services réseau de base et configurer un poste de travail dans un réseau d'entreprise

AC4

CONTEXTE ET DESCRIPTION

Dans le cadre du projet MateZone (SAE 2.03), j'ai développé et déployé une application de messagerie instantanée en utilisant Docker pour la containerisation. Ce projet m'a permis de maîtriser l'architecture client-serveur avec déploiement conteneurisé, incluant la configuration de services web Apache, la gestion des ports réseau et l'hébergement d'applications Java.

Points clés

📦
Containerisation avec Dockerfile

Image de base : FROM debian:latest - Utilisation d'une image Debian officielle
Services installés : Apache2, PHP, OpenJDK-17-JDK pour l'environnement Java
Configuration : apt-get install -y apache2 php libapache2-mod-php openjdk-17-jdk
Variables d'environnement : Configuration JAVA_HOME et DISPLAY pour l'application

🌐
Configuration réseau et services web

Serveur Apache : Configuration pour écouter sur les ports 80 et 8080
Gestion des ports : EXPOSE 80 8080 - Exposition des ports pour connexions externes
Redirection de ports : Mapping des ports pour accès depuis le système hôte
Interface web : Hébergement de l'interface de présentation du projet

Déploiement application Java

Code source : Copie des fichiers Java avec COPY ./app/MateZone_code/ /app/MateZone_code/
Compilation : RUN javac -encoding UTF-8 -d ./classes @compile.list
Répertoire de travail : WORKDIR /app/MateZone_code pour l'exécution
Permissions : Configuration des droits d'accès avec chown -R www-data:www-data

Orchestration et déploiement

Service en arrière-plan : CMD ["apachectl", "-D", "FOREGROUND"] - Démarrage automatique d'Apache
Architecture client-serveur : Container hébergeant à la fois l'interface web et l'application Java
Accessibilité : Application accessible via navigateur web grâce au mapping de ports
Intégration : Solution complète pour démonstration et présentation du projet

IMAGES

Configuration Docker pour MateZone - Dockerfile et containerisation

Configuration Docker du projet MateZone avec Apache et Java

Interface principale MateZone - Application déployée via Docker

Interface principale de l'application MateZone déployée

🏗️ 5. Il a acquis des connaissances de base sur l'architecture des systèmes et des réseaux

Contexte : Acquisition de connaissances fondamentales sur l'architecture des systèmes informatiques à travers la ressource R2.04 "Communication et fonctionnement de bas niveau". Ces travaux pratiques m'ont permis de comprendre le fonctionnement interne des systèmes, depuis le matériel jusqu'aux programmes utilisateur.

Travaux pratiques réalisés :

  • TP1 - BIOS, processeur, mémoire, noyau, périphériques
  • TP2 - Fichiers de périphériques et pilotes
  • TP3 - Pointeurs et transtypage en C
  • TP4 - Pseudo-terminaux, console et terminaux
  • TP5 - Communication entre processus

Compétences développées : Ces TP m'ont permis d'acquérir une compréhension approfondie du fonctionnement de bas niveau des systèmes informatiques, essentielle pour l'administration système et le diagnostic de problèmes matériels ou logiciels.

IMAGES DES TRAVAUX PRATIQUES

Trace d'exécution TP3 - Pointeurs et transtypage en C

TP3 : Trace d'exécution du programme pointeurs en C

Code source TP3 - Programme pointeur.c avec analyse des variables

TP3 : Code source pointeur.c avec analyse des adresses mémoire

💻 6. Au niveau de la programmation shell, il est capable de mettre en place des mesures correctives adaptées à la nature des incidents identifiés

Contexte : Dans le cadre des TP de services réseau, j'ai développé un script shell sophistiqué nommé "pingsalles.sh" qui permet de diagnostiquer automatiquement l'état de connectivité de toutes les machines d'une ou plusieurs salles informatiques. Ce script illustre parfaitement ma capacité à créer des outils de diagnostic réseau adaptés aux incidents rencontrés.

Fonctionnalités du script pingsalles.sh :

  • Ping automatisé : Test de connectivité de 30 machines par salle (c-di-$salle-01 à c-di-$salle-30)
  • Gestion multi-salles : Traitement simultané de plusieurs salles (718, 720, 725, 727, 729, 731) via une boucle for
  • Formatage intelligent : Numérotation automatique avec printf "%02d" pour garantir le format "01", "02", etc.
  • Retour d'état : Affichage clair "OK" ou "inaccessible ou inconnue" pour chaque machine testée
  • Comptage des machines actives : Décompte automatique des postes allumés par salle

Mesures correctives intégrées au script :

  • Détection d'incidents : Identification automatique des machines éteintes ou en panne réseau
  • Gestion des erreurs : Redirection des sorties d'erreur (>/dev/null 2>&1) pour un affichage propre
  • Test de retour : Utilisation de $? pour vérifier le succès ou l'échec de chaque ping
  • Diagnostic rapide : Permet aux administrateurs d'identifier rapidement les postes défaillants pour intervention
  • Rapport de synthèse : Affichage du nombre total de machines actives par salle pour suivi global

Impact opérationnel : Ce script automatise le diagnostic réseau des salles informatiques, permettant une détection rapide des pannes et une intervention ciblée des équipes techniques. Il représente une solution pratique aux incidents récurrents de connectivité réseau.

SCRIPT SHELL

Script shell pingsalles.sh pour diagnostic réseau

Script pingsalles.sh pour le diagnostic automatisé des machines réseau