Internets Informatique de l Internet: le(s) Internet(s) Joël Quinqueton Dépt MIAp, UFR IV UPV Université Montpellier III RENATER, R3LR Services Internet Protocoles Web Sécurité Composantes de l internet Effet boule de neige mail http://www.pcworld.com/news/article/0,a id,15199,00.asp Denial of service attack DoS (smurf, flood a machine with pings) DDoS RENATER R3LR Réseau national de télécommunications pour la technologie, l enseignement et la recherche Réseau régional recherche du Languedoc-Rousillon www.renater.fr 1
Site Montpellier Plaque Ile-de-France (Réseau HDMON Montpellier Nord) Croissance Internet (1) Croissance Internet (2) Croissance Internet (3) Qui paye? Pas de société «Internet Inc.» Opérateurs boucles haut débit Ils vendent l utilisation forfaitaire de leurs installations (en Mo de données qui transitent) Connexion de deux réseaux Arrangements financiers entre opérateurs 2
Aspects juridiques (1) Financement public des infra-structures Incompatible avec une utilisation commerciale Les messages transitent par des voies différentes selon leurs natures Exemple: RENATER dessert le domaine de l enseignement et de la recherche Aspects juridiques (2) Réseau planétaire Franchissement des frontières Application des législations nationales, voire régionales Développements locaux de chartes de «bon usage» des réseaux Etes-vous connectés à Internet? Connexion directe Accès à différents services et serveurs à partir du point de connexion Connexion dial-up Accès à un service unique (provider: AOL, free, etc.) Exécute les services demandés et redistribue aux clients connectés au site Connexion Dial-Up Centralisation des appels Internet Services Internet Repose sur la couche TCP/IP Rassemble une variété de protocoles pour faire communiquer les machines Ensemble de commandes permettant de connaître l état du réseau nslookup Etat du réseau (1) Permet de demander l adresse IP d un machine dont on a le nom «virtuel» nom.sous-domaine.domaine Utilisé pour traduire les messages sous forme humaine en trames IP ping Pour savoir si une machine est accessible 3
Etat du réseau (2) Etat du réseau (3) Etat du réseau (4) Etat du réseau (5) traceroute Pour connaître l itinéraire suivi par un message, à destination d un serveur distant Connexion distante (1) Connexion distante (2) telnet Permet de travailler sur une machine distante en mode «ligne de commande» (pas d interface graphique) Recherche de la machine Connexion, login, mot de passe 4
Connexion distante (3) Ce qui se passe réellement Un canal de communication est établi (login), puis en boucle: La machine locale envoie un message sous un format approprié La machine distante le reçoit et le traduit à nouveau Elle exécute les commandes correspondantes sur la machine distante Elle renvoie un message à la machine locale Qui le traduit et affiche l effet de la commande d origine Architecture client-serveur (1) Répartition de la charge de travail entre un serveur et un poste distant (le client). Par exemple: Lancement d une application stockée sur un disque distant (l application tourne sur le poste client) Accès à vos comptes et fichiers (l application entree) Architecture client-serveur: exemple Lancement d une application stockée sur un disque distant L application tourne sur le poste client L application demande périodiquement un accès à vos fichiers Architecture client-serveur (3) Client Réseau Serveur Programme Message d appel Prise en compte de la requête Réveil du serveur Réception du résultat Poursuite du traitement Message réponse Exécution requête Central Web Architecture client-serveur (4) Client Réseau Serveur Demande de connexion Emission de requêtes Réception de résultats Synchronisation Emission de requêtes Réception de résultats Synchronisation Central Web Demande de deconnexion Message de connexion Message de deconnexion Prise en compte de la connexion Création d un contexte Exécution des requêtes et gestion de la synchronisation Prise en compte de la deconnexion libération du contexte Architecture client-serveur (5) Quelle interface pour faire communiquer client et serveur? Sockets: introduits dans le monde UNIX et TCP, maintenant étendu à toutes platesformes Fournit les primitives pour le support des communications Les applicativions cliente et serveur ne voient les couches de communication qu à travers l API socket (abstraction) 5
Architecture client-serveur (6) Protocole Applicatif Application cliente API Socket Application : serveur API Socket UDP TCP UDP TCP IP Physique IP Physique Sockets et ports (1) Un numéro de port représente un canal de communication dans un réseau Ces numéros autorisent différents processus (applications) à utiliser les ressources réseaux d un ordinateur sans interférer les uns avec les autres Ils apparaissent dans les couches logicielles (gestion de sockets) Central Web Sockets et ports (2) Le port utilisé lors d un échange est parfois visible http://ead.univ-montp3.fr:8089 http://furnas.lirmm.fr:8080 Le serveur d un site web utilise habituellement le port 80. Ce numéro n a pas à être inclus dans l URL (mais peut l être) Sockets et ports (3) Les numéros de port varie dans l intervalle [0, 65535]. La plupart des applications utilisent de petites valeurs [0, 1023] Le numéro de port est inséré dans les datagrammes IP Note: un port désigne parfois un dispositif physique (port USB, ) Conventions Sockets et ports (4) Service Numéro de port Messages e-mail (SMTP) 25 Liaison telnet 23 Connexion shell sécurisée (ssh) 22 Login distant (rlogin) 513 Serveur web 80 DNS 53...... Sockets et ports (5) Internet Assigned Numbers Authority (IANA) Coordonateur des questions de numérotation Mandatée par la Internet Society (ISOC) Questions relevant de son «autorité» Adresse Internet Noms de domaines Numéros de ports 6
Protocoles Convention d échange des informations Spécialisées en fonction de certains types de tâches Echange de fichiers Envoi de courriers Echange de données hypertextes FTP (1) File Transfer Protocol Permet de copie un (des) fichier(s) à partir ou sur une machine distante Nécessité de posséder un compte sur la machine distante (pas toujours) FTP (2) File Transfer Protocol Utile: ces opérations de transfert ne nécessite pas de lancer un environnement complet (shell), ou d émuler une session terminal Parfois utilisable en mode «anonymous» : certains sites publics autorise tout utilisateur à rapatrier des données Moins fréquents : mode anonymous pour déposer des fichiers FTP (3) Commandes en nombre limité put (envoi) get (copie) mode (binaire ou texte) cd, lcd (déplacement) pwd, lpwd SFTP Secure File Transfer Protocol Les données échangées sont cryptées pour assurer la confidentialité SMTP Send Mail Transfer Protocol Protocole d échange de courriers Enveloppe appropriée du message Normalisation des adresses (réécriture) Gestion des fichiers attachés (MIME) 7
SMTP HTTP Hyper Text Transfer Protocol HTTP HTTP Protocole d échange de documents hypertextes get url version-http head url version-http post url version-http Proxy Intermédiaire des requêtes HTTP Garde en mémoire des pages déjà visitées Allègement du traffic Web A distinguer de l Internet qui concerne la technologie support du web (et de beaucoup d autres applications) Partie visible de l Internet Acteur majeur et stimulant des nouvelles économies 8
Moteurs de recherche Inconvénients Annuaire dynamique des sites et pages qu on trouve sur le web Principaux acteurs: Yahoo Google Voilà (France) Lycos Altavista MSN Kartoo (méta-moteur) Annuaires Surface réduite Pas d Information de détail Non évolutif Coût Central Web Moteurs de recherche Bruit Dépendant de la technologie Algorithmique Peu de maturité Spam Avantages Sécurité (1) Annuaires Information fiable Contrôle humain Indépendant de la technologie Moteurs de recherche Surface importante Information ciblée Robotisé Evolutif Gratuité Assurer la confidentialité des informations qui transitent sur le réseau Bloquer les envois d informations non désirées (SPAM) Bloquer les intrusions visant à détruire, modifier ou copier les données stockées par les utilisateurs, à emprunter leurs identités, etc. Central Web Sécurité (2) La seule bonne stratégie consiste à filtrer Toutes les informations entrantes De tous les ports accessibles depuis l extérieur Puis à rejeter tous les pacquets suspects Intrusions Sécurité (3) Un utilisateur réussit à utiliser un système distant en empruntant une identité connue En exploitant un trou de sécurité (faille du système) Cibles: les serveurs 9
Sécurité (4) Virus informatiques Programme qui se dissémine au travers du réseau Qu un utilisateur naîf lance à son insu Envoi massif de requêtes saturant le réseau Etc. Sécurité (5) Comment se protéger? Utiliser des mots de passe non triviaux (crack) Ne jamais activer un fichier (pièce jointe, fchier téléchargé, etc.) dont on ne connaît pas l origine ou la nature du contenu S assurer de l examen régulier de ses données (anti-virus) Mise à jour du système et des fichiers de définitions virales, etc. 10