Cours Administrateur Systemes & Reseaux
Notes de cours completes couvrant l'ensemble des notions d'administration systemes et reseaux niveau junior/intermediaire. Contexte : infrastructure d'une mission diplomatique internationale (~300 postes, Windows/Linux, VLANs segmentes, VPN multi-sites).
1. Modele OSI
Le modele OSI decoupe les communications reseau en 7 couches independantes. Il n'est pas implemente directement mais sert de reference pour comprendre les protocoles et diagnostiquer les pannes (methode "bottom-up").
| Couche | Nom | PDU | Protocoles / Equipements | Role |
|---|---|---|---|---|
| 7 | Application | Donnees | HTTP, HTTPS, FTP, DNS, SMTP, DHCP | Interface utilisateur |
| 6 | Presentation | Donnees | SSL/TLS, JPEG, ASCII, chiffrement | Traduction, compression |
| 5 | Session | Donnees | NetBIOS, RPC, SQL | Etablissement / fermeture sessions |
| 4 | Transport | Segment / Datagramme | TCP (fiable), UDP (rapide) | Transport de bout en bout |
| 3 | Reseau | Paquet | IP, ICMP, OSPF → Routeur | Adressage et routage |
| 2 | Liaison | Trame (Frame) | Ethernet, 802.1Q, WiFi → Switch L2 | Acces au support, adresses MAC |
| 1 | Physique | Bit | RJ45, fibre optique, WiFi → Hub, repeteur | Signal electrique/optique |
Pieges frequents : ARP peut etre classe L2 ou L3 selon les auteurs (il fait le lien entre les deux). Les firewalls peuvent operer de L3 a L7. SSL/TLS est L5/L6 selon l'implementation.
Diagnostic par couche (bottom-up) :
- L1 Physique : cable branche ? voyant switch allume ? tester avec un autre cable.
- L2 Liaison : adresse MAC visible dans ARP ? VLAN correct ? port switch configure ?
- L3 Reseau : IP correcte ? masque correct ? passerelle configuree ? route valide ?
- L4 Transport : port TCP/UDP ouvert ? firewall bloque ? service tourne ?
- L7 Application : service demarre ? configuration correcte ? logs d'erreurs ?
2. TCP et UDP
TCP (Transmission Control Protocol)
Protocole oriente connexion, fiable. Garantit la livraison des donnees dans l'ordre, avec retransmission en cas de perte. Usage : HTTP, HTTPS, SSH, FTP, SMTP, SMB.
Etablissement de connexion — 3-Way Handshake :
Client Serveur
|---- SYN (seq=x) -------->| Client initie la connexion
|<--- SYN-ACK (seq=y) -----| Serveur accepte et acquitte
|---- ACK (ack=y+1) ------>| Client confirme
| [Connexion etablie] |
Fermeture de connexion : 4 etapes (FIN / ACK / FIN / ACK) — fermeture gracieuse des deux cotes.
UDP (User Datagram Protocol)
Protocole sans connexion, non fiable. Envoie les datagrammes sans accuse de reception ni garantie d'ordre. Beaucoup plus rapide que TCP car pas de handshake ni de controle de flux. Usage : DNS, DHCP, streaming video, VoIP, gaming, SNMP, NTP.
| TCP | UDP | |
|---|---|---|
| Connexion | Oriente connexion (3-way handshake) | Sans connexion |
| Fiabilite | Garantie (retransmission, ordre) | Aucune |
| Vitesse | Plus lent (overhead) | Plus rapide |
| Usage | HTTP, SSH, FTP, SMTP, SMB | DNS, DHCP, VoIP, streaming |
3. IPv4 / CIDR / Subnetting
Adresses speciales
| Adresse | Role |
|---|---|
| 127.0.0.1 | Loopback — teste la pile TCP/IP locale, ne sort pas sur le reseau |
| 169.254.x.x | APIPA — le DHCP a echoue, adresse auto-assignee |
| 0.0.0.0 | Route par defaut / adresse non configuree |
| 255.255.255.255 | Broadcast limite (tout le segment) |
Plages privees RFC 1918
| Plage | CIDR | Hotes max | Usage typique |
|---|---|---|---|
| 10.0.0.0 – 10.255.255.255 | /8 | ~16 millions | Grandes entreprises, datacenters |
| 172.16.0.0 – 172.31.255.255 | /12 | ~1 million | Entreprises moyennes |
| 192.168.0.0 – 192.168.255.255 | /16 | ~65 000 | Domicile, petites entreprises |
Calcul de sous-reseaux (Subnetting)
Bits hotes = 32 - prefixe CIDR
Total adresses = 2^(bits hotes)
Hotes utilisables = 2^(bits hotes) - 2 (reseau + broadcast exclus)
| CIDR | Masque | Hotes utilisables | Usage typique |
|---|---|---|---|
| /24 | 255.255.255.0 | 254 | LAN standard |
| /25 | 255.255.255.128 | 126 | Sous-reseau moyen |
| /26 | 255.255.255.192 | 62 | ~60 hotes |
| /27 | 255.255.255.224 | 30 | ~30 hotes |
| /28 | 255.255.255.240 | 14 | Petit segment |
| /29 | 255.255.255.248 | 6 | DMZ, petits groupes |
| /30 | 255.255.255.252 | 2 | Liaison point-a-point WAN |
Methode : pour trouver le bon prefixe, chercher 2^n ≥ (hotes requis + 2). Ex : 30 hotes → 2^5 = 32 ≥ 32 → /27.
4. ARP et ICMP
ARP (Address Resolution Protocol)
ARP resout une adresse IP en adresse MAC sur le reseau local. Sans ARP, il est impossible d'envoyer une trame Ethernet a la bonne machine.
1. PC A veut envoyer a 10.20.0.50
2. Verifie le cache ARP : arp -a
3. Si absent : broadcast "Qui a 10.20.0.50 ?" (FF:FF:FF:FF:FF:FF)
4. 10.20.0.50 repond en unicast avec sa MAC
5. PC A stocke l'entree en cache (~2 min)
ARP Gratuit (Gratuitous ARP) : une machine annonce sa propre IP/MAC sans demande. Usage normal : detection de conflits IP. Usage malveillant : ARP Spoofing / Poisoning (attaque Man-in-the-Middle).
ICMP (Internet Control Message Protocol)
Protocole de diagnostic et de messages d'erreur. Utilise par ping et traceroute.
| Message | Signification |
|---|---|
| Echo Request / Echo Reply | ping — teste la joignabilite |
| TTL Exceeded | Le paquet a fait trop de sauts (boucle probable) |
| Destination Unreachable | Le routeur ne trouve pas de route vers la destination |
| Port Unreachable | La destination est atteinte mais le port est ferme (UDP) |
TTL par OS : Linux/Mac/Cisco = 64, Windows = 128, Cisco IOS = 255. Le TTL diminue de 1 a chaque routeur traverse. Si TTL atteint 0, le paquet est detruit et un "TTL Exceeded" est envoye a l'emetteur — c'est le principe de traceroute.
5. DHCP
DHCP attribue automatiquement une adresse IP et la configuration reseau a chaque machine. Ports : serveur sur UDP 67, client sur UDP 68.
Processus DORA
Client Serveur
|--DISCOVER (broadcast)----------->| "Y a-t-il un serveur DHCP ?"
|<--OFFER (broadcast/unicast)------| "Je t'offre 10.20.0.50 / GW / DNS"
|--REQUEST (broadcast)------------>| "J'accepte l'offre" (broadcast pour informer les autres serveurs)
|<--ACKNOWLEDGE (broadcast/unicast)| "Confirme ! Bail valide 8 jours"
Renouvellement du bail : a 50% de la duree le client tente de renouveler (unicast). A 87,5% il reessaie. A 100% il recommence le processus DORA complet.
Diagnostics DHCP
| Symptome | Cause probable | Solution |
|---|---|---|
| IP 169.254.x.x (APIPA) | Le client n'a pas recu de reponse DHCP | ipconfig /release puis /renew, verifier le service DHCP et le VLAN du port |
| Scope epuise | Toutes les IPs sont attribuees | Agrandir la plage, supprimer les baux expires, reduire la duree de bail |
| Conflit d'adresse IP | IP statique dans la plage DHCP dynamique | Mettre l'IP statique hors de la plage, ou creer une reservation DHCP |
6. DNS
Le DNS traduit les noms de domaine en adresses IP (et inversement). Port 53 TCP+UDP. UDP pour les requetes <512 octets, TCP pour les transferts de zone et les reponses plus longues (DNSSEC).
Types d'enregistrements
| Type | Role | Exemple |
|---|---|---|
| A | Nom → IPv4 | srv01 → 10.20.0.10 |
| AAAA | Nom → IPv6 | srv01 → 2001:db8::1 |
| CNAME | Alias → autre nom (pas une IP) | www → srv01.mission.local |
| MX | Serveur de messagerie (avec priorite) | 10 mail.mission.local |
| PTR | IP → Nom (DNS inverse) | 10.0.20.10 → srv01 |
| NS | Serveur de noms autoritaire | mission.local → ns1 |
| SOA | Start Of Authority (infos sur la zone) | Numero de serie, TTL par defaut |
| TXT | Texte libre | SPF, DKIM, verification de domaine |
| SRV | Localisateur de service | _ldap._tcp → DC01:389 |
Resolution DNS recursive
PC → DNS local (cache PC)
→ Serveur DNS configure (ex: 10.20.0.1) [cache local]
→ Root servers (.)
→ Serveur TLD (.com, .org...)
→ Serveur autoritaire du domaine
→ Reponse avec l'IP, mise en cache selon le TTL
TTL (Time To Live) : duree pendant laquelle un resolveur met en cache la reponse. TTL bas = propagation rapide mais plus de requetes. TTL eleve = moins de charge mais propagation lente.
Commandes DNS
nslookup intranet.mission.local # Resolution standard
nslookup -type=MX mission.local # Enregistrements MX
nslookup intranet.mission.local 8.8.8.8 # Forcer un DNS specifique
Resolve-DnsName intranet.mission.local # PowerShell
ipconfig /flushdns # Vider le cache DNS client
ipconfig /displaydns # Afficher le cache DNS client
dig intranet.mission.local # Linux
7. NAT / PAT
NAT (Network Address Translation) traduit les adresses IP privees en adresses publiques pour l'acces a Internet.
| Type | Description | Usage |
|---|---|---|
| NAT Statique | 1 IP privee ↔ 1 IP publique fixe | Exposer un serveur (web, mail) en DMZ |
| NAT Dynamique | Pool d'IPs privees ↔ pool d'IPs publiques | Rarement utilise en pratique |
| PAT / NAT Overload | Tout le reseau prive → 1 seule IP publique (differentiation par port source) | Standard dans 99% des routeurs/box |
Fonctionnement PAT
Le routeur maintient une table de traduction qui associe chaque connexion interne a un port source unique :
IP Privee Port Source IP Publique Port Traduit
10.20.0.10 54321 203.0.113.1 54321
10.20.0.20 54321 203.0.113.1 54322 (port change si conflit)
10.20.0.50 54000 203.0.113.1 54323
Port Forwarding (DNAT) : permet d'acceder depuis Internet a un serveur interne. Ex : tout trafic entrant sur 203.0.113.1:443 est redirige vers 10.20.0.100:443.
8. VLAN / Switching / STP
VLANs
Un VLAN (Virtual LAN) cree des domaines de broadcast logiquement separes sur le meme equipement physique. Les avantages sont la securite (isolation des departements), la reduction des domaines de broadcast, et le controle du trafic inter-segements via firewall.
| Type de port | Description | Usage |
|---|---|---|
| Access port | Un seul VLAN, trafic non tague. La machine ne sait pas qu'elle est dans un VLAN. | PC, imprimantes, serveurs |
| Trunk port (802.1Q) | Plusieurs VLANs simultanément, trafic tague avec un identifiant de 4 octets insere dans la trame Ethernet. | Liens switch-switch, switch-routeur |
Communication inter-VLAN : les VLANs sont des reseaux L3 distincts. Pour communiquer, il faut obligatoirement un equipement de couche 3 (routeur ou switch L3).
- Router-on-a-Stick : un seul routeur avec des sous-interfaces (une par VLAN), chacune servant de passerelle.
- Switch L3 avec SVI : le switch cree une interface VLAN virtuelle (SVI) par VLAN qui sert de gateway. Plus performant.
Configuration Cisco IOS
# Creer un VLAN
Switch(config)# vlan 10
Switch(config-vlan)# name Direction
# Port access
Switch(config)# interface fa0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
# Port trunk
Switch(config)# interface gi0/1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan 10,20,30,40,50,99
Switch(config-if)# switchport trunk native vlan 99
# Verification
Switch# show vlan brief
Switch# show interfaces trunk
Switch# show interfaces gi0/1 switchport
STP (Spanning Tree Protocol)
STP previent les boucles de couche 2 dans les reseaux avec des liens redondants. Une boucle L2 sans STP provoque une "tempete de broadcast" qui paralyse completement le reseau.
Root Bridge : le switch avec le BID (Bridge ID = priorite + adresse MAC) le plus bas. Par defaut, priorite = 32768. On peut forcer un switch a devenir root : spanning-tree vlan 10 priority 4096.
| Etat du port STP | Description |
|---|---|
| Disabled | Port administrativement desactive |
| Blocking | Recoit les BPDU, ne transmet pas de donnees, n'apprend pas les MACs |
| Listening | Envoie/recoit des BPDU, pas de donnees (15 secondes) |
| Learning | Apprend les adresses MAC, pas encore de donnees (15 secondes) |
| Forwarding | Etat normal — transmet les donnees et apprend les MACs |
RSTP (802.1w) : version rapide de STP, convergence en <1 seconde au lieu de 30-50 secondes. C'est le standard actuel.
PortFast : pour les ports connectes a des PCs/serveurs uniquement, passe directement en Forwarding. Ne jamais activer sur un port trunk.
BPDU Guard : si un BPDU est recu sur un port PortFast, le port passe en err-disable. Protege contre la connexion non autorisee d'un switch.
9. Routage
Un routeur decide du chemin que doit emprunter un paquet en consultant sa table de routage. La decision est basee sur l'adresse IP de destination.
| Routage statique | Routage dynamique (OSPF, BGP) | |
|---|---|---|
| Configuration | Manuelle | Automatique entre routeurs |
| Adaptation aux pannes | Aucune (route fixe) | Recalcul automatique |
| Complexite | Simple | Plus complexe |
| Usage | Petits reseaux, routes de secours | Grands reseaux, WAN complexe, operateurs |
# Cisco IOS - Routes statiques
ip route 10.30.0.0 255.255.255.0 10.99.1.2 # Route vers site Washington
ip route 172.16.0.0 255.255.0.0 10.99.2.2 # Route vers Geneve
ip route 0.0.0.0 0.0.0.0 203.0.113.2 # Route par defaut (Internet)
# Verification
show ip route
show ip route 10.30.0.0
traceroute 10.30.0.50
# Linux
ip route add 10.30.0.0/24 via 10.99.1.2
ip route show
ip route get 10.30.0.50 # Quel chemin pour cette IP ?
# Windows
route print
New-NetRoute -DestinationPrefix "10.30.0.0/24" -NextHop "10.99.1.2" -InterfaceIndex 5
10. Firewall
Types de firewalls
| Type | Description | Avantages/Limites |
|---|---|---|
| Packet filter (stateless) | Filtre paquet par paquet sur IP/port/protocole | Rapide, ne distingue pas les sessions |
| Stateful inspection | Maintient l'etat des connexions, autorise automatiquement les reponses | Standard actuel, efficace |
| WAF (Web Application Firewall) | Analyse le contenu HTTP/HTTPS (L7), detecte SQLi, XSS, etc. | Protege les applications web |
| Proxy Firewall | Agit comme intermediaire, inspecte le contenu | Tres securise, peut dechiffrer le TLS |
Principes fondamentaux
- Deny All : bloquer tout sauf ce qui est explicitement autorise (liste blanche). C'est l'approche la plus securisee.
- Implicit Deny : la derniere regle implicite est toujours "tout refuser". Ce qui n'est pas autorise est bloque.
- First-Match : les regles sont evaluees sequentiellement. La premiere regle qui correspond s'applique, les suivantes sont ignorees.
Exemple de regles PFSense
# Interface WAN (Internet → Mission)
ALLOW ANY → 203.0.113.50:443 TCP (VPN SSL entrant)
ALLOW ANY → 203.0.113.50:25 TCP (SMTP entrant)
DENY ANY → ANY ANY (tout le reste)
# Interface LAN VLAN10 Direction
ALLOW VLAN10 → 10.20.0.100:22,80,445 TCP (SSH, HTTP, SMB vers serveur fichiers)
DENY VLAN10 → VLAN40 ANY (Direction ne peut pas acceder a Securite)
DENY VLAN10 → ANY ANY (tout le reste bloque)
DMZ (Demilitarized Zone)
Zone reseau intermediaire entre Internet et le LAN interne. Accueille les serveurs accessibles depuis Internet (web, mail, reverse proxy). Si un serveur DMZ est compromis, le firewall bloque l'acces au reseau interne.
11. Ports et protocoles essentiels
| Service | Port | Proto | Notes |
|---|---|---|---|
| HTTP | 80 | TCP | Non chiffre |
| HTTPS | 443 | TCP | TLS/SSL |
| FTP controle | 21 | TCP | Commandes FTP |
| FTP donnees | 20 | TCP | Transfert fichiers |
| SSH | 22 | TCP | TOUJOURS preferer a Telnet |
| Telnet | 23 | TCP | Non chiffre — a bannir |
| SMTP | 25 | TCP | Mail serveur a serveur |
| SMTP chiffre | 587 / 465 | TCP | 587=STARTTLS, 465=SMTPS |
| DNS | 53 | TCP+UDP | UDP pour requetes, TCP pour zones |
| DHCP Serveur | 67 | UDP | Recoit les requetes clients |
| DHCP Client | 68 | UDP | Recoit les reponses serveur |
| LDAP | 389 | TCP | Active Directory non chiffre |
| LDAPS | 636 | TCP | LDAP sur TLS |
| Kerberos | 88 | TCP+UDP | Authentification AD |
| RDP | 3389 | TCP | Bureau a distance Windows |
| SMB/CIFS | 445 | TCP | Partages reseau Windows |
| SNMP | 161/162 | UDP | Monitoring (161=requetes, 162=traps) |
| NTP | 123 | UDP | Synchronisation de l'horloge |
| MySQL | 3306 | TCP | Base de donnees |
12. VPN
| Type | Protocole | Port | Cas d'usage |
|---|---|---|---|
| IPSec IKEv2 | IKEv2 + ESP | UDP 500, 4500 | VPN site-a-site, tres stable avec MOBIKE (reconnexion auto) |
| SSL VPN | TLS | TCP 443 | Acces distant via navigateur, traverse facilement les firewalls |
| OpenVPN | SSL/TLS | UDP 1194 (ou TCP) | Tres configurable, multi-plateforme |
| WireGuard | ChaCha20/Poly1305 | UDP 51820 | Tres rapide et leger, code simple |
Split tunneling : seul le trafic destine au reseau interne passe par le VPN. Le reste (Internet) passe directement. Contraire du "full tunnel" ou tout passe par le VPN.
NAT Traversal (NAT-T) : IKEv2 sur UDP 4500 est concu pour traverser les NAT agressifs (hotels, hotspots). Preferer IKEv2 avec NAT-T pour les connexions depuis des reseaux inconnus.
13. Cybersecurite
Hardening Windows Server — Checklist
# 1. Renommer le compte Administrator (cible privilegiee des attaques)
Rename-LocalUser -Name "Administrator" -NewName "admin-srv01"
# 2. Desactiver le compte Guest
Disable-LocalUser -Name "Guest"
# 3. Desactiver SMBv1 (vulnerable - WannaCry/EternalBlue)
Set-SmbServerConfiguration -EnableSMB1Protocol $false
# 4. Activer le Firewall Windows
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True
# 5. Augmenter la taille des journaux de securite
wevtutil sl Security /ms:1073741824 # 1 Go pour Security log
# 6. Appliquer les mises a jour
Install-Module PSWindowsUpdate
Get-WUInstall -AcceptAll -AutoReboot
# 7. Desactiver les services inutiles
Set-Service -Name "Telnet" -StartupType Disabled
Set-Service -Name "RemoteRegistry" -StartupType Disabled
Bonnes pratiques : politique de mots de passe forte (14 car. min, complexite, expiration 90 jours, historique 24), lockout apres 5 tentatives, BitLocker pour le chiffrement disque, NLA pour RDP, ne jamais exposer RDP directement sur Internet (utiliser VPN).
Events Windows importants
| Event ID | Signification |
|---|---|
| 4624 | Connexion reussie |
| 4625 | Echec de connexion (brute-force si repete) |
| 4688 | Creation de processus (utile pour detecter les malwares) |
| 4698 | Tache planifiee creee (persistance malware) |
| 4663 | Acces a un fichier sensible |
| 4740 | Compte verrouille |
Reponse a incident — phases
- Confinement immediat : isoler la machine du reseau (debrancher le cable, desactiver le port switch), NE PAS eteindre (preservation des preuves en RAM).
- Investigation : capturer la RAM, analyser les connexions reseau (
netstat -anb), inspecter les processus (tasklist /v), chercher la persistance (registre, taches planifiees, Autoruns SysInternals). - Eradication : en environnement sensible, toujours reconstruire le poste de zero ("rebuild from scratch"). Le nettoyage est insuffisant (rootkits, backdoors).
- Amelioration : bloquer les macros Office via GPO, former les utilisateurs, deployer un EDR, configurer DMARC/DKIM/SPF pour le mail.
14. Active Directory / GPO
Structure Active Directory
mission.local
├── OU=Utilisateurs
│ ├── OU=Direction
│ ├── OU=Consulaire
│ ├── OU=Informatique
│ └── OU=Securite
├── OU=Ordinateurs
│ ├── OU=Postes-Direction
│ ├── OU=Postes-Consulaire
│ └── OU=Serveurs
└── OU=Groupes
├── GRP-VPN-Users
├── GRP-Admins-IT
└── GRP-Partage-Fichiers
Protocoles d'authentification
| Protocole | Port | Description |
|---|---|---|
| Kerberos | 88 TCP/UDP | Protocole principal dans un domaine AD. Tickets avec duree de vie limitee. |
| NTLM | — | Protocole legacy, utilise pour la compatibilite (hors domaine, anciens OS). |
| LDAP | 389 TCP | Interrogation et modification de l'annuaire AD. Non chiffre. |
| LDAPS | 636 TCP | LDAP sur TLS. A privilegier. |
Commandes PowerShell Active Directory
# Rechercher un utilisateur
Get-ADUser -Identity jmartin
Get-ADUser -Identity jmartin -Properties * # Toutes les proprietes
Get-ADUser -Filter {Name -like "Mar*"} # Recherche par nom
# Gestion des comptes
Search-ADAccount -LockedOut # Comptes verrouilles
Unlock-ADAccount -Identity jmartin # Deverrouiller
Enable-ADAccount -Identity jmartin # Activer
Disable-ADAccount -Identity jmartin # Desactiver
Set-ADAccountPassword -Identity jmartin -Reset -NewPassword (Read-Host -AsSecureString)
# Gestion des groupes
Get-ADGroupMember -Identity "Domain Admins"
Add-ADGroupMember -Identity "GRP-IT" -Members jmartin
Remove-ADGroupMember -Identity "GRP-IT" -Members jmartin -Confirm:$false
# Gestion des ordinateurs
Get-ADComputer -Filter {Name -like "PC-*"}
Move-ADObject -Identity "CN=PC01,CN=Computers,DC=mission,DC=local" `
-TargetPath "OU=Postes-Direction,DC=mission,DC=local"
GPO (Group Policy Objects)
Les GPO permettent d'appliquer des configurations et des restrictions a des OUs entieres. L'heritage se fait de la racine vers les OUs enfants. Un GPO peut etre bloque (Block Inheritance) ou force (Enforced / No Override).
gpupdate /force # Forcer la mise a jour des GPO sur un poste
gpresult /r # Afficher les GPO appliquees (resume)
gpresult /h C:\gpo.html # Rapport HTML detaille
gpmc.msc # Console de gestion des GPO
15. Linux / SSH / Bash
Commandes systeme essentielles
# Informations systeme
hostname -f # FQDN du serveur
uname -a # Noyau et architecture
cat /etc/os-release # Version de l'OS
uptime # Temps de fonctionnement et charge
free -h # RAM disponible
df -h # Espace disque par partition
du -sh * # Espace par dossier
# Processus
top / htop # Processus en temps reel
ps aux # Snapshot statique des processus
kill -9 # Tuer un processus
# Services (systemd)
systemctl status nginx # Etat d'un service
systemctl start / stop / restart nginx
systemctl enable / disable nginx # Demarrage automatique
journalctl -u nginx -f # Logs du service en temps reel
tail -f /var/log/syslog # Logs systeme en temps reel
</code></pre>
Permissions Linux
Droit Valeur Sur fichier Sur repertoire
r (read) 4 Lire le contenu Lister le contenu (ls)
w (write) 2 Modifier Creer/supprimer des fichiers
x (execute) 1 Executer Entrer dans le repertoire (cd)
chmod 754 fichier # rwx r-x r-- (proprietaire=7, groupe=5, autres=4)
chown user:group fichier # Changer proprietaire et groupe
id / groups # Voir les groupes de l'utilisateur courant
sudo -l # Voir les commandes sudo autorisees
SSH
ssh user@10.20.0.10 # Connexion SSH
ssh -p 2222 user@10.20.0.10 # Port personnalise
ssh -L 8080:localhost:80 user@10.20.0.10 # Tunnel local (port forwarding)
ssh-keygen -t ed25519 -C "cedric@mission" # Generer une paire de cles
ssh-copy-id user@10.20.0.10 # Copier la cle publique
# Configuration SSH serveur (/etc/ssh/sshd_config)
PermitRootLogin no # Interdire la connexion root directe
PasswordAuthentication no # Forcer les cles SSH
Port 2222 # Changer le port par defaut
AllowUsers jmartin cedric # Restreindre les utilisateurs
Reseau sous Linux
ip a # Interfaces et adresses IP
ip r # Table de routage
ip route add 10.30.0.0/24 via 10.99.1.2 # Ajouter une route
ss -tulnp # Ports en ecoute avec processus (remplace netstat)
netstat -an # Connexions actives
ping / traceroute
nslookup / dig google.com # Resolution DNS
arp -n # Table ARP
nmap -sS 10.20.0.0/24 # Scan du reseau (droits root necessaires)
16. PowerShell
PowerShell manipule des objets .NET et non du texte brut comme Bash. Le pipeline transmet des objets avec leurs proprietes, ce qui permet de filtrer et de transformer les donnees avec precision.
# Bases
Get-Command *Service* # Chercher une commande
Get-Help Get-Process -Examples # Aide et exemples
Get-Process | Where-Object CPU -gt 10 # Filtrer les processus
Get-Process | Select-Object Name, CPU, ID # Selectionner des proprietes
Get-Service | Format-List * # Afficher toutes les proprietes
# Reseau
ipconfig /all
Test-NetConnection -ComputerName 10.20.0.100 -Port 445 # Tester un port
Get-NetTCPConnection | Where-Object State -eq "Established"
Resolve-DnsName google.com
# DHCP (sur serveur)
Get-DhcpServerv4Scope # Lister les scopes
Get-DhcpServerv4ScopeStatistics -ScopeId 10.20.0.0 # % d'utilisation
Get-DhcpServerv4Lease -ScopeId 10.20.0.0 # Baux actifs
Add-DhcpServerv4Reservation -ScopeId 10.20.0.0 -IPAddress 10.20.0.200 `
-ClientId "AA-BB-CC-DD-EE-FF" -Description "Imprimante"
# DNS (sur serveur)
Get-DnsServerZone
Get-DnsServerResourceRecord -ZoneName "mission.local"
Add-DnsServerResourceRecordA -ZoneName "mission.local" -Name "intranet" `
-IPv4Address "10.20.0.100" -CreatePtr
Clear-DnsServerCache
# Services
Get-Service | Where-Object Status -eq "Stopped"
Start-Service -Name DHCPServer
Stop-Service -Name Spooler
Execution Policy
Politique Description
Restricted Aucun script (defaut sur certains Windows Server)
AllSigned Tous les scripts doivent etre signes par une CA approuvee
RemoteSigned Scripts locaux OK, scripts telecharges doivent etre signes. Recommande.
Unrestricted Tout OK. Dangereux en production.
Bypass Rien bloque. Usage temporaire pour les admins.
Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
powershell.exe -ExecutionPolicy Bypass -File script.ps1 # Passer outre temporairement
17. Methodologie de Troubleshooting
Methode OSI Bottom-Up
Toujours diagnostiquer depuis la couche la plus basse. Des qu'une couche est validee, passer a la suivante. Des qu'une couche echoue, c'est la qu'est le probleme.
Couche Questions Outils
L1 Physique Cable branche ? Voyant allume ? Bon cable ? Testeur de cable, remplacer le cable
L2 Liaison MAC visible en ARP ? VLAN correct ? Port switch configure ? arp -a, show mac address-table, show interfaces status
L3 Reseau IP correcte ? Masque correct ? Gateway correcte ? Route valide ? ipconfig /all, ping gateway, tracert, route print
L4 Transport Port ouvert ? Firewall bloque ? Service ecoute ? netstat, telnet <IP> <PORT>, Test-NetConnection
L7 Application Service demarre ? Configuration correcte ? Logs d'erreurs ? services.msc, eventvwr, journalctl
Les 6 etapes CompTIA Network+
- Identifier le probleme : symptomes, perimetre, chronologie
- Etablir une theorie : cause la plus probable
- Tester la theorie : valider ou invalider
- Etablir un plan d'action et le mettre en oeuvre
- Verifier que le probleme est resolu et prevenir la recurrence
- Documenter : ticket, base de connaissances, changelog
Indice APIPA : une IP en 169.254.x.x indique systematiquement un echec du processus DHCP. Verifier : le service DHCP, le VLAN du port switch, le DHCP Relay Agent si le serveur est sur un autre segment.
Commandes de diagnostic Windows
ipconfig /all # Config reseau complete (IP, MAC, DNS, GW, DHCP)
ipconfig /release # Liberer le bail DHCP
ipconfig /renew # Obtenir un nouveau bail DHCP
ipconfig /flushdns # Vider le cache DNS
ping 127.0.0.1 # Tester la pile TCP/IP locale
ping 10.20.0.254 # Tester la gateway
ping 8.8.8.8 # Tester la connectivite Internet
ping google.com # Tester la resolution DNS + Internet
tracert 8.8.8.8 # Tracer le chemin reseau
nslookup google.com # Tester la resolution DNS
netstat -an # Connexions actives
arp -a # Table ARP (IP <-> MAC)
route print # Table de routage
pathping google.com # ping + traceroute combines
Test-NetConnection -ComputerName 10.20.0.100 -Port 445 # Tester un port TCP
18. Wireshark et Monitoring
Filtres Wireshark essentiels
# Filtres par IP
ip.addr == 10.20.0.50 # Tout le trafic d'une IP
ip.src == 10.20.0.50 # Uniquement le trafic sortant
ip.dst == 10.20.0.100 # Uniquement le trafic entrant
!(ip.addr == 10.20.0.1) # Exclure une IP
# Filtres par protocole
dns # Tout le DNS
dhcp # Tout le DHCP
arp # Tout l'ARP
http # Trafic HTTP
tls # Trafic TLS/HTTPS
icmp # Pings
# Filtres par port
tcp.port == 443 # HTTPS
tcp.dstport == 22 # SSH entrant
udp.port == 53 # DNS
tcp.port in {80 443 8080 8443} # Plusieurs ports
# Flags TCP
tcp.flags.syn == 1 && tcp.flags.ack == 0 # SYN seuls (scan de ports ?)
tcp.flags.reset == 1 # Connexions refusees ou reinitalisees
tcp.flags.fin == 1 # Fin de connexion
tcp.analysis.retransmission # Retransmissions (probleme reseau)
tcp.analysis.zero_window # Fenetre TCP nulle (perf degradee)
# Filtres avances
frame contains "password" # Chercher du texte dans les paquets
http.request.method == "POST" # Requetes POST
http.response.code == 404 # Erreurs 404
dns.qry.name contains "google" # Requetes DNS contenant "google"
tcpdump (ligne de commande)
tcpdump -i eth0 "port 445" # Capturer sur un port
tcpdump -i em0 "host 10.20.0.10 and port 445" # Hote et port specifiques
tcpdump -xx port 9025 # Afficher les octets en hexa
tcpdump -w capture.pcap # Sauvegarder dans un fichier
Lecture des logs Windows
eventvwr.msc # Visionneuse d'evenements
# Logs importants :
# Windows Logs > Security : connexions, echecs, modifications de comptes
# Windows Logs > System : demarrage, arrets, erreurs materiel/drivers
# Applications and Services > ... : logs applicatifs specifiques
# PowerShell
Get-EventLog -LogName Security -Newest 100
Get-EventLog -LogName Security -EventId 4625 # Echecs de connexion
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 50
19. Virtualisation / Cloud / Sauvegardes
Types d'hyperviseurs
Type Description Exemples
Type 1 (Bare-metal) S'installe directement sur le materiel physique, sans OS hote. Plus performant. VMware ESXi, Hyper-V, Proxmox VE, XCP-ng, KVM
Type 2 S'installe sur un OS existant. Moins performant, pour tests et developpement. VMware Workstation, VirtualBox, Parallels
Notion Definition
Snapshot Sauvegarde de l'etat d'une VM a un instant T, reversible. N'est PAS un backup ! Consomme de l'espace disque.
Live Migration (vMotion) Deplacer une VM en cours d'execution vers un autre hote physique sans interruption de service.
Overcommit CPU/RAM Attribuer plus de ressources virtuelles qu'il n'y en a en physique. Possible car les VMs n'utilisent pas 100% en meme temps.
HA (High Availability) Redemarrage automatique d'une VM sur un autre hote en cas de panne.
FT (Fault Tolerance) VM miroir sur un second hote, bascule instantanee sans perte.
Regle de sauvegarde 3-2-1
- 3 copies des donnees
- 2 supports differents (ex : disque interne + NAS)
- 1 copie hors site (cloud, site distant)
Terme Definition
RPO (Recovery Point Objective) Perte de donnees maximale acceptable. Ex : RPO = 4h → sauvegardes toutes les 4h.
RTO (Recovery Time Objective) Duree maximale acceptable d'interruption. Ex : RTO = 2h → le systeme doit etre restaure en moins de 2h.
Cloud — Concepts de base
Modele Description Exemples
IaaS Infrastructure as a Service : VM, reseau, stockage brut AWS EC2, Azure VM, GCP Compute Engine
PaaS Platform as a Service : environnement d'execution gere Azure App Service, Google App Engine
SaaS Software as a Service : application directement accessible Microsoft 365, Google Workspace, Salesforce
20. Reference rapide des commandes
Windows — Reseau
ipconfig /all # Toutes infos reseau (IP, MAC, DNS, GW)
ipconfig /release / /renew # Liberer / Renouveler bail DHCP
ipconfig /flushdns / /displaydns # Vider / Afficher cache DNS
ping 8.8.8.8 -t # Ping continu (Ctrl+C pour arreter)
tracert 8.8.8.8 # Tracer le chemin reseau
nslookup google.com # Resolution DNS
nslookup google.com 8.8.8.8 # Forcer un DNS specifique
netstat -an # Connexions actives
netstat -an | findstr :443 # Filtrer par port
arp -a # Table ARP
arp -d # Vider la table ARP
route print # Table de routage
pathping google.com # Ping + traceroute combines
netsh winsock reset # Reinitialiser la pile TCP/IP
Test-NetConnection -ComputerName 10.0.0.1 -Port 443
Windows — GPO
gpupdate /force # Forcer MAJ GPO
gpresult /r # GPO appliquees (resume)
gpresult /h C:\gpo.html && start C:\gpo.html # Rapport HTML
gpmc.msc # Console GPO
gpedit.msc # Editeur GPO local
Linux — Reseau
ip a # Interfaces et adresses IP
ip r # Table de routage
ip route get 10.30.0.50 # Quel chemin pour cette IP ?
ss -tulnp # Ports en ecoute
ping / traceroute
nslookup / dig google.com
arp -n # Table ARP
nmap -sn 10.20.0.0/24 # Decouverte des hotes du reseau
Linux — Systeme
top / htop # Processus en temps reel
ps aux | grep nginx # Chercher un processus
kill -9 <PID>
df -h # Espace disque
du -sh * # Espace par dossier
free -h # Memoire disponible
uptime # Charge systeme
tail -f /var/log/syslog # Logs en temps reel
journalctl -u <service> -f # Logs systemd en temps reel
Diagnostic switch Cisco
show version # Modele et version IOS
show running-config # Configuration actuelle
show interfaces status # Etat de tous les ports
show interface gi0/1 # Detail d'un port
show vlan brief # VLANs configures
show interfaces trunk # Ports trunk
show mac address-table # Table MAC
show spanning-tree summary # Resume STP
show ip route # Table de routage
show cdp neighbors # Voisins Cisco (topologie)
show log # Journaux systeme
</div>
Network & Systems Administrator Course Notes
Complete course notes covering all systems and network administration concepts at junior/intermediate level. Context: infrastructure of an international diplomatic mission (~300 workstations, Windows/Linux, segmented VLANs, multi-site VPN).
1. OSI Model
The OSI model breaks network communications down into 7 independent layers. It is not implemented directly but serves as a reference for understanding protocols and diagnosing faults (bottom-up method).
Layer Name PDU Protocols / Devices Role
7 Application Data HTTP, HTTPS, FTP, DNS, SMTP, DHCP User interface
6 Presentation Data SSL/TLS, JPEG, ASCII, encryption Translation, compression
5 Session Data NetBIOS, RPC, SQL Session establishment/teardown
4 Transport Segment / Datagram TCP (reliable), UDP (fast) End-to-end transport
3 Network Packet IP, ICMP, OSPF → Router Addressing and routing
2 Data Link Frame Ethernet, 802.1Q, WiFi → L2 Switch Media access, MAC addresses
1 Physical Bit RJ45, fiber, WiFi → Hub, repeater Electrical/optical signal
Mnemonic (bottom to top): "Please Do Not Throw Sausage Pizza Away" → Physical, Data Link, Network, Transport, Session, Presentation, Application.
Bottom-up diagnostic:
- L1 Physical: cable plugged in? switch light on? try another cable.
- L2 Data Link: MAC visible in ARP? correct VLAN? switch port configured?
- L3 Network: correct IP? correct mask? gateway configured? valid route?
- L4 Transport: TCP/UDP port open? firewall blocking? service running?
- L7 Application: service started? correct configuration? error logs?
2. TCP and UDP
TCP (Transmission Control Protocol)
Connection-oriented, reliable protocol. Guarantees ordered delivery with retransmission on loss. Use: HTTP, HTTPS, SSH, FTP, SMTP, SMB.
Client Server
|---- SYN (seq=x) -------->| Client initiates connection
|<--- SYN-ACK (seq=y) -----| Server accepts and acknowledges
|---- ACK (ack=y+1) ------>| Client confirms
| [Connection established] |
UDP (User Datagram Protocol)
Connectionless, unreliable protocol. Sends datagrams without acknowledgement or order guarantee. Much faster than TCP. Use: DNS, DHCP, video streaming, VoIP, gaming, SNMP, NTP.
TCP UDP
Connection Connection-oriented (3-way handshake) Connectionless
Reliability Guaranteed (retransmission, ordering) None
Speed Slower (overhead) Faster
Use cases HTTP, SSH, FTP, SMTP, SMB DNS, DHCP, VoIP, streaming
3. IPv4 / CIDR / Subnetting
Special addresses
Address Role
127.0.0.1 Loopback — tests local TCP/IP stack, never leaves the host
169.254.x.x APIPA — DHCP failed, auto-assigned address
0.0.0.0 Default route / unconfigured address
255.255.255.255 Limited broadcast (entire segment)
Private ranges RFC 1918
Range CIDR Max hosts Typical use
10.0.0.0 – 10.255.255.255 /8 ~16 million Large enterprises, datacenters
172.16.0.0 – 172.31.255.255 /12 ~1 million Medium enterprises
192.168.0.0 – 192.168.255.255 /16 ~65,000 Home, small offices
Subnetting formulas
Host bits = 32 - CIDR prefix
Total addresses = 2^(host bits)
Usable hosts = 2^(host bits) - 2 (network + broadcast excluded)
CIDR Mask Usable hosts
/24 255.255.255.0 254
/26 255.255.255.192 62
/27 255.255.255.224 30
/28 255.255.255.240 14
/29 255.255.255.248 6
/30 255.255.255.252 2 (point-to-point WAN)
4. ARP and ICMP
ARP (Address Resolution Protocol)
ARP resolves an IP address to a MAC address on the local network. Without ARP, Ethernet frames cannot be delivered to the right machine.
1. PC A wants to send to 10.20.0.50
2. Checks ARP cache: arp -a
3. If missing: broadcast "Who has 10.20.0.50?" (FF:FF:FF:FF:FF:FF)
4. 10.20.0.50 replies with its MAC (unicast)
5. PC A stores the entry in cache (~2 min)
Gratuitous ARP: a device announces its own IP/MAC without being asked. Normal use: IP conflict detection at boot. Malicious use: ARP Spoofing/Poisoning (Man-in-the-Middle attack).
ICMP
Message Meaning
Echo Request / Echo Reply ping — tests reachability
TTL Exceeded Packet traversed too many hops (loop probable)
Destination Unreachable Router cannot find a route to destination
TTL by OS: Linux/Mac/Cisco = 64, Windows = 128, Cisco IOS = 255. TTL decrements by 1 at each router. This is the basis of traceroute.
5. DHCP
DHCP automatically assigns an IP address and network configuration to each machine. Ports: server on UDP 67, client on UDP 68.
Client Server
|--DISCOVER (broadcast)----------->| "Is there a DHCP server?"
|<--OFFER (broadcast/unicast)------| "I offer you 10.20.0.50 / GW / DNS"
|--REQUEST (broadcast)------------>| "I accept the offer"
|<--ACKNOWLEDGE (broadcast/unicast)| "Confirmed! Lease valid 8 days"
Best practice: devices with fixed IPs (servers, printers) should either be outside the DHCP dynamic range, or managed through DHCP reservations (fixed IP assigned via MAC address).
APIPA: a 169.254.x.x address always indicates a DHCP failure. Check: the DHCP service, the switch port VLAN, the DHCP Relay Agent if the server is on a different segment.
6. DNS
DNS translates domain names to IP addresses (and vice versa). Port 53 TCP+UDP.
Type Role Example
A Name → IPv4 srv01 → 10.20.0.10
AAAA Name → IPv6 srv01 → 2001:db8::1
CNAME Alias → another name (not an IP) www → srv01.mission.local
MX Mail server (with priority) 10 mail.mission.local
PTR IP → Name (reverse DNS) 10.0.20.10 → srv01
TXT Free text SPF, DKIM, domain verification
nslookup intranet.mission.local # Standard resolution
nslookup -type=MX mission.local # MX records
Resolve-DnsName intranet.mission.local # PowerShell
ipconfig /flushdns # Flush DNS cache
ipconfig /displaydns # Show DNS cache
dig intranet.mission.local # Linux
7. NAT / PAT
Type Description Use case
Static NAT 1 private IP ↔ 1 fixed public IP Expose a DMZ server to the Internet
PAT / NAT Overload Entire private network → 1 public IP (differentiated by source port) Standard in 99% of routers/gateways
Port Forwarding (DNAT): redirects inbound Internet traffic to an internal server. E.g.: all traffic on 203.0.113.1:443 is forwarded to 10.20.0.100:443.
8. VLAN / Switching / STP
Port type Description Use
Access port Single VLAN, untagged traffic. The device does not know it is in a VLAN. PCs, printers, servers
Trunk port (802.1Q) Multiple VLANs simultaneously, tagged with a 4-byte identifier inserted into the Ethernet frame. Switch-switch, switch-router links
Inter-VLAN routing: VLANs are separate L3 networks. Communication requires a Layer 3 device (router or L3 switch).
# Cisco IOS VLAN configuration
Switch(config)# vlan 10
Switch(config-vlan)# name Direction
# Access port
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
# Trunk port
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan 10,20,30,40,50,99
STP (Spanning Tree Protocol)
STP prevents Layer 2 loops in networks with redundant links. A L2 loop without STP causes a broadcast storm that completely paralyzes the network.
PortFast: for ports connected to PCs/servers only, skips Listening/Learning and goes directly to Forwarding. Never enable on a trunk port.
BPDU Guard: if a BPDU is received on a PortFast port, the port enters err-disable state. Protects against unauthorized switch connections.
9. Routing
# Cisco IOS static routes
ip route 10.30.0.0 255.255.255.0 10.99.1.2 # Route to Washington site
ip route 0.0.0.0 0.0.0.0 203.0.113.2 # Default route (Internet)
# Verification
show ip route
traceroute 10.30.0.50
# Linux
ip route add 10.30.0.0/24 via 10.99.1.2
ip route show
# Windows
route print
10. Firewall
Key principles:
- Deny All: block everything except what is explicitly allowed (whitelist). Most secure approach.
- First-Match: rules are evaluated sequentially. The first matching rule applies; subsequent rules are ignored.
- Stateful: tracks connection state, automatically allows replies to internally initiated connections.
Classic pitfall: a broad DENY rule placed before specific ALLOW rules will block traffic even if the ALLOW rule exists further down. Always order from most specific to most general.
11. Essential Ports and Protocols
Service Port Proto Notes
HTTP 80 TCP Unencrypted
HTTPS 443 TCP TLS/SSL
SSH 22 TCP Always prefer over Telnet
Telnet 23 TCP Unencrypted — ban it
SMTP 25 TCP Server-to-server mail
DNS 53 TCP+UDP UDP for queries, TCP for zone transfers
DHCP Server 67 UDP Receives client requests
DHCP Client 68 UDP Receives server responses
LDAP 389 TCP Active Directory (unencrypted)
LDAPS 636 TCP LDAP over TLS
Kerberos 88 TCP+UDP AD authentication
RDP 3389 TCP Windows Remote Desktop
SMB/CIFS 445 TCP Windows network shares
SNMP 161/162 UDP Network monitoring
NTP 123 UDP Clock synchronization
12. VPN
Type Protocol Port Use case
IPSec IKEv2 IKEv2 + ESP UDP 500, 4500 Site-to-site VPN, very stable with MOBIKE (auto-reconnect)
SSL VPN TLS TCP 443 Remote access, easily traverses firewalls
OpenVPN SSL/TLS UDP 1194 Highly configurable, cross-platform
WireGuard ChaCha20/Poly1305 UDP 51820 Very fast and lightweight
13. Cybersecurity
Windows Server Hardening Checklist
# Rename the Administrator account
Rename-LocalUser -Name "Administrator" -NewName "admin-srv01"
# Disable SMBv1 (vulnerable - WannaCry/EternalBlue)
Set-SmbServerConfiguration -EnableSMB1Protocol $false
# Enable Windows Firewall
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True
# Increase Security log size
wevtutil sl Security /ms:1073741824 # 1 GB
# Disable unnecessary services
Set-Service -Name "Telnet" -StartupType Disabled
# Apply updates
Get-WUInstall -AcceptAll -AutoReboot
Incident Response Phases
- Immediate containment: isolate the machine from the network (unplug cable, disable switch port). DO NOT power off (preserves RAM evidence).
- Investigation: capture RAM, analyze network connections (
netstat -anb), inspect processes, check for persistence (registry, scheduled tasks, Autoruns).
- Eradication: in sensitive environments, always rebuild the workstation from scratch. Cleanup is insufficient (rootkits, backdoors).
- Improvement: block Office macros via GPO, train users, deploy EDR, configure DMARC/DKIM/SPF.
14. Active Directory / GPO
Protocol Port Description
Kerberos 88 TCP/UDP Primary AD authentication protocol. Time-limited tickets.
NTLM — Legacy protocol, used for compatibility.
LDAP 389 TCP Query and modify the AD directory. Unencrypted.
LDAPS 636 TCP LDAP over TLS. Preferred.
# User management
Get-ADUser -Identity jmartin
Search-ADAccount -LockedOut # Locked accounts
Unlock-ADAccount -Identity jmartin
Enable-ADAccount / Disable-ADAccount -Identity jmartin
Set-ADAccountPassword -Identity jmartin -Reset -NewPassword (Read-Host -AsSecureString)
# Group management
Add-ADGroupMember -Identity "GRP-IT" -Members jmartin
Remove-ADGroupMember -Identity "GRP-IT" -Members jmartin -Confirm:$false
# GPO
gpupdate /force # Force GPO update
gpresult /r # Applied GPOs (summary)
gpmc.msc # GPO management console
15. Linux / SSH / Bash
# System info
hostname -f / uname -a / cat /etc/os-release
uptime / free -h / df -h / du -sh *
# Services
systemctl status / start / stop / restart <service>
systemctl enable / disable <service> # Auto-start at boot
journalctl -u <service> -f # Real-time service logs
tail -f /var/log/syslog # Real-time system logs
# Permissions
chmod 754 file # rwx r-x r--
chown user:group file
sudo -l # View authorized sudo commands
# SSH
ssh user@10.20.0.10
ssh -L 8080:localhost:80 user@10.20.0.10 # Local tunnel
ssh-keygen -t ed25519 # Generate key pair
ssh-copy-id user@10.20.0.10 # Copy public key
16. PowerShell
PowerShell manipulates .NET objects, not plain text like Bash. The pipeline passes objects with their properties, enabling precise filtering and transformation.
Get-Process | Where-Object CPU -gt 10 # Filter processes
Get-Service | Select-Object Name, Status # Select properties
Test-NetConnection -ComputerName 10.20.0.100 -Port 445
# DHCP
Get-DhcpServerv4Scope
Get-DhcpServerv4ScopeStatistics -ScopeId 10.20.0.0
Get-DhcpServerv4Lease -ScopeId 10.20.0.0
# DNS
Get-DnsServerResourceRecord -ZoneName "mission.local"
Add-DnsServerResourceRecordA -ZoneName "mission.local" -Name "intranet" `
-IPv4Address "10.20.0.100" -CreatePtr
# AD
Get-ADUser -Identity jmartin
Unlock-ADAccount -Identity jmartin
17. Troubleshooting Methodology
OSI Bottom-Up: always diagnose from the lowest layer up. Once a layer is validated, move to the next. When a layer fails, that is where the problem lies.
Layer Questions Tools
L1 Physical Cable plugged in? Light on? Good cable? Cable tester, replace cable
L2 Data Link MAC visible in ARP? Correct VLAN? Switch port configured? arp -a, show mac address-table
L3 Network Correct IP? Correct mask? Gateway set? Valid route? ipconfig /all, ping gateway, tracert
L4 Transport Port open? Firewall blocking? Service listening? netstat, Test-NetConnection, telnet
L7 Application Service started? Correct config? Error logs? services.msc, eventvwr, journalctl
APIPA indicator: a 169.254.x.x IP always indicates a DHCP failure. Check: the DHCP service, the switch port VLAN, the DHCP Relay Agent if the server is on a different segment.
18. Wireshark and Monitoring
# By IP
ip.addr == 10.20.0.50
ip.src == 10.20.0.50
# By protocol
dns / dhcp / arp / http / tls / icmp
# By port
tcp.port == 443
udp.port == 53
# TCP flags
tcp.flags.syn == 1 && tcp.flags.ack == 0 # SYN only (port scan?)
tcp.flags.reset == 1 # Refused/reset connections
tcp.analysis.retransmission # Retransmissions (network issue)
tcp.analysis.zero_window # Zero window (performance issue)
19. Virtualisation / Cloud / Backups
Concept Definition
Snapshot Saves VM state at a point in time, reversible. NOT a backup! Consumes disk space.
Live Migration (vMotion) Move a running VM to another physical host with zero downtime.
HA (High Availability) Automatic VM restart on another host if the current host fails.
RPO Maximum acceptable data loss. RPO = 4h means backups every 4h.
RTO Maximum acceptable downtime. RTO = 2h means system must be restored within 2h.
3-2-1 Backup rule: 3 copies of data, on 2 different media, with 1 copy offsite (cloud, remote site).
Model Description Examples
IaaS Raw infrastructure: VMs, network, storage AWS EC2, Azure VM
PaaS Managed runtime environment Azure App Service, Google App Engine
SaaS Application directly accessible Microsoft 365, Google Workspace
20. Command Reference
Windows — Network
ipconfig /all # All network info (IP, MAC, DNS, GW)
ipconfig /release / /renew # Release / Renew DHCP lease
ipconfig /flushdns / /displaydns # Flush / Show DNS cache
ping 8.8.8.8 -t # Continuous ping (Ctrl+C to stop)
tracert 8.8.8.8 # Trace network path
nslookup google.com # DNS resolution
netstat -an # Active connections
netstat -an | findstr :443 # Filter by port
arp -a / arp -d # Show / Clear ARP table
route print # Routing table
Test-NetConnection -ComputerName 10.0.0.1 -Port 443
Linux — Network & System
ip a / ip r # Interfaces and routes
ss -tulnp # Listening ports with process
ping / traceroute / nslookup / dig
arp -n # ARP table
df -h / du -sh * # Disk space
free -h / uptime # System state
tail -f /var/log/syslog # Real-time logs
systemctl status/start/stop/restart <service>
Cisco Switch Diagnostics
show version # Model and IOS version
show interfaces status # All ports status
show vlan brief # Configured VLANs
show interfaces trunk # Trunk ports
show mac address-table # MAC table
show spanning-tree summary # STP summary
show ip route # Routing table
show cdp neighbors # Cisco neighbors (topology)
show log # System logs