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 régional recherche du Languedoc-Rousillon Réseau national de télécommunications pour la technologie, l’enseignement et la recherche 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 Etes-vous connectés à Internet ? 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 Connexion Dial-Up 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 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 Centralisation des appels Etat du réseau (1) • nslookup – 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 Architecture client-serveur (1) 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 • 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 Programme Réseau Message d’appel Serveur Prise en compte de la requête Réveil du serveur Réception du résultat Message réponse Exécution requête Poursuite du traitement © Central Web Architecture client-serveur (4) Serveur Client Réseau Demande de connexion Message de connexion Prise en compte de la connexion Création d’un contexte Emission de requêtes Réception de résultats Synchronisation Exécution des requêtes et gestion de la Emission de requêtes Réception de résultats Synchronisation Demande de deconnexion © Central Web synchronisation Message de deconnexion 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) Application cliente Protocole Applicatif Application : serveur API Socket UDP Sockets et ports (1) API Socket TCP UDP TCP IP IP Physique Physique • 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 (4) • Conventions 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 (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, …) 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 (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 SFTP • Secure File Transfer Protocol – Les données échangées sont cryptées pour assurer la confidentialité 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 (3) • Commandes en nombre limité – put (envoi) – get (copie) – mode (binaire ou texte) – cd, lcd (déplacement) – pwd, lpwd –… 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 Inconvénients Moteurs de recherche • 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 Moteurs de recherche • Bruit • Dépendant de la technologie • Algorithmique • Peu de maturité • Spam © Central Web Avantages Annuaires • Information fiable • Contrôle humain • Indépendant de la technologie Moteurs de recherche • Surface importante • Information ciblée • Robotisé • Evolutif • Gratuité Sécurité (1) • 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 Sécurité (3) • Intrusions – 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