From 549cefe5384facdb5d37e589ad77e31b35266dc9 Mon Sep 17 00:00:00 2001 From: Francois Lesueur Date: Thu, 21 Oct 2021 17:22:14 +0200 Subject: [PATCH] cm1 --- .gitignore | 1 + Makefile | 27 ++++++++++++++++++++++ README.md | 22 +++++++++--------- cm1.md | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 106 insertions(+), 10 deletions(-) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 cm1.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea1472e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +output/ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..869c554 --- /dev/null +++ b/Makefile @@ -0,0 +1,27 @@ +OUTDIR= output +SRC= $(wildcard *.md) +PDF= $(addprefix $(OUTDIR)/,$(SRC:.md=.pdf)) +HTML= $(addprefix $(OUTDIR)/,$(SRC:.md=.html)) + + +all: $(PDF) $(HTML) + +pdf: $(PDF) + +html: $(HTML) + +directories: $(OUTDIR) + +$(OUTDIR): + mkdir $(OUTDIR) + +$(OUTDIR)/%.html: %.md $(OUTDIR) + pandoc $< -o $@ -s + +$(OUTDIR)/%.pdf: $(OUTDIR)/%.html + wkhtmltopdf $< $@ + +clean: + \rm -rf *.html *.pdf $(OUTDIR) + + diff --git a/README.md b/README.md index 71990c1..65e7448 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,34 @@ # M3102 - DUT2 Info - Services réseaux +_François Lesueur ([francois.lesueur@univ-ubs.fr](mailto:francois.lesueur@univ-ubs.fr))_ + Cette page recense les séances du module M3102 "Services réseaux". L'objectif est d'expliquer le fonctionnement d'Internet en tant que réseau de réseaux, Internet est donc notamment l'union des systèmes d'information de tous les acteurs. Séance après séance, vous allez créer un SI minimal (DNS, HTTP, Mail, etc.) interconnectable avec le reste du monde et ainsi constater qu'Internet est le résultat de chaque acteur/AS qui offre et consomme des services. -Ce module se situe entre M2102 (Couches OSI, de la modulation à IP, avec un peu de routage/adressage IP) et M4101C. Il dure 6 semaines, avec chaque semaine 1 séance de cours (1h30) et 2 séances de TD (2*1h30). Le contenu sera détaillé au fur et à mesure de la période. +Ce module se situe entre M2102 (Couches OSI, de la modulation à IP, avec un peu de routage/adressage IP) et M4101C. Il dure 6 semaines, avec chaque semaine 1 séance de cours (1h30) et 2 séances de TD (2*1h30) (attention, pour des raisons d'edt, la séance de cours a en fait lieu à la fin de la semaine précédent les TD). Le contenu sera détaillé au fur et à mesure de la période. -Une large part des séances pratiques sera réalisée sur la plateforme MI-LXC (https://github.com/flesueur/mi-lxc), pour laquelle il faudra télécharger une VM Virtualbox **avant** le TD1.2 "Découverte de MI-LXC" (lien à venir, il faudra arriver en séance avec Virtualbox installé et le .ova de MI-LXC déjà téléchargé, l'installation et la déouverte de la VM seront ensuite le programme de la séance). +Une large part des séances pratiques sera réalisée sur la plateforme MI-LXC (https://github.com/flesueur/mi-lxc), pour laquelle il faudra télécharger une VM Virtualbox **avant** le TD1.2 "Découverte de MI-LXC" : [.ova à télécharger ici](https://filesender.renater.fr/?s=download&token=2ca6036b-49b8-4b4c-93bb-95c5de051400). Il faudra arriver en séance avec Virtualbox installé et le .ova de MI-LXC déjà téléchargé, l'installation et la découverte de la VM seront ensuite le programme de la séance TD1.2. -## Programme prévisionnel +## Programme * S1 : - * CM1 introduction "C'est quoi internet ?" et panorama du cours - * TD1.1 Wargame shell [Overthewire Bandit](https://overthewire.org/wargames/bandit/) - * TD1.2 Découverte [MI-LXC](https://github.com/flesueur/mi-lxc) + * [CM1](cm1.md) Introduction "C'est quoi internet ?" et panorama du cours + * [TD1.1](td1.1.md) Wargame shell + * [TD1.2](td1.2.md) Découverte MI-LXC * S2 : - * CM2 Cryptographie et sécurité des communications + * CM2 Cryptographie et sécurité des communications (complément en ligne : [Section "Bases de la crypto"](https://github.com/flesueur/csc/blob/master/cours.md#bases-de-la-crypto)) * TD2.1 Cryptogaphie JdR * TD2.2 Apache/CMS * S3 : - * CM3 DNS (en ligne : [S. Bortzmeyer](https://www.iletaitunefoisinternet.fr/post/1-dns-bortzmeyer/)) + * CM3 DNS (complément en ligne : [S. Bortzmeyer](https://www.iletaitunefoisinternet.fr/post/1-dns-bortzmeyer/)) * TD3.1 DNS(SEC) * TD3.2 CA ACME * S4 : - * CM4 Mail (en ligne : [B. Sonntag](https://www.iletaitunefoisinternet.fr/post/7-email-sonntag/)) + * CM4 Mail (complément en ligne : [B. Sonntag](https://www.iletaitunefoisinternet.fr/post/7-email-sonntag/)) * TD4.1 SMTP, POP, IMAP * TD4.2 SPF, DKIM, Spam, webmail * S5 : - * CM5 Firewall + * CM5 Firewall (complément en ligne : [Filtrage et surveillance réseau](https://github.com/flesueur/srs/blob/master/cm3-filtrage.md)) * TD5.1 IPTables * TD5.2 Architecture réseau * S6 : diff --git a/cm1.md b/cm1.md new file mode 100644 index 0000000..431c7b5 --- /dev/null +++ b/cm1.md @@ -0,0 +1,66 @@ +CM1 Introduction - Notes de cours +================================= + +C'est quoi internet ? +===================== + +* Des protocoles pour l'interopérabilité : BGP, DNS, SMTP, HTTP, ... +* Des organisations qui orchestrent : IETF, ICANN (dont IANA), RIR RIPE/NANOG/etc. +* Des acteurs : des GAFA/BATX aux utilisateurs, en passant par les milliers de petits hébergeurs +* Des lieux : points de peering, datacenters +* Du matériel : des ordinateurs, des routeurs, des câbles/fibres [J. Mau](https://www.iletaitunefoisinternet.fr/post/3-infra-maud/) +* Des logiciels : du firmware de routeur, des services de cœur (BGP, DNS), des serveurs et clients à chaque bout de la chaîne +* Quelques *killer app* : email, web +* Des usages : messagerie, réseau social, encyclopédie +* D'un réseau militaire (ARPANET) à un outil de partage de connaissances sans frontières (ou de ciblage publicitaire et de commande de sushis, selon les opinions...) + + +Comment est structuré internet ? +================================ + +Un réseau de réseaux : + +* Acentré (pas de chef, pas de décision unique sans consensus des acteurs indépendants, pas de point de défaillance unique (SPOF)). *Est-ce toujours aussi vrai ? De la panne Facebook aux clouds* +* Structuré autour de la notion d'AS (systèmes autonomes, environ 100 000) qui forment le découpage de premier niveau +* Chaque AS (exemple : RENATER, Orange) est ensuite sous-divisé en interne +* Les AS s'interconnectent entre eux et le protocole BGP assurent la glu entre ces AS +* Un bon thread qui explique cela [ici](https://twitter.com/AtaxyaNetwork/status/1445096685286350849) : chaque AS est une île, BGP sert à construire les ponts, l'objectif étant de permettre de transmettre des messages d'une île à une autre île éloignée, par le passage donc de plusieurs îles et ponts intermédiaires. + + +Internet, le routage, les services, les couches OSI +=================================================== + +De manière *très* synthétique : + +* Chaque lien physique entre 2 machines/routeurs (fibre, câble, sans-fil) : un protocole couche 2 +* Internet c'est la connectivité IP (Internet Protocol) globale couche 3 de bout en bout +* Au dessus d'IP, on retrouve classiquement TCP et UDP : + * Au-dessus de TCP : HTTP, SMTP, ... + * Au-dessus d'UDP : DNS, WebRTC et autres protocoles audio/vidéo, ... +* (ICMP, qui véhicule notamment les paquets ping, est de même niveau que IP) + + +Et pourquoi "Internet" pour un cours "Services réseaux" ? +========================================================= + +Parce que tout simplement, comme on va le voir pendant 6 semaines, les services réseaux que l'on déploie dans un SI ont, pour beaucoup (HTTP pour le web, SMTP pour le mail, DNS pour le nommage par exemple), vocation à s'interfacer avec le reste d'internet. Internet est un réseau de réseaux, il n'héberge pas de services en tant que tel, il n'y a pas de "zone de serveurs" : on ne fait qu'aller interagir avec les services hébergés dans un des autres réseaux d'internet. Et donc mettre en place des services réseaux, c'est souvent offrir des services sur internet. + + +Panorama du cours +================= + +* Introduction "C'est quoi internet ?" (aujourd'hui) +* Un peu de sécurité des communications (crypto) +* Du web (HTTP) +* Du DNS +* De l'autorité de certification +* Du mail +* Du firewall et de l'archi réseau +* De la gestion centralisée ou à distance : DHCP, SSH, Ansible + + +Les TODO +======== + +* Venir en TD avec son laptop. Combien faut-il en prévoir en complément ? +* Télécharger l'[ova de MI-LXC](https://filesender.renater.fr/?s=download&token=2ca6036b-49b8-4b4c-93bb-95c5de051400) et installer VirtualBox **avant le premier TD** !