Vous êtes sur la page 1sur 20

Introduction gnrale

Larchitecture TCP/IP comprend de nombreux programmes


applicatifs, utilitaires et protocoles complmentaires. lorigine
TCP/IP ne spcifiait aucun protocole de ligne, il sappuyait sur les
rseaux existants. Lutilisation massive de TCP/IP a fait apparatre
des rseaux tout IP et la ncessit de disposer dun protocole de
liaison (SLIP, PPP). De mme, TCP/IP a t adapt aux protocoles dits
Haut Dbit comme le Frame Relay et lATM qui constituent
aujourdhui le cur de la plupart des rseaux privs et doprateurs.

Figure 1: Protocoles et applications de l'architecture TCP/IP

Les principaux protocoles et applications de lenvironnement TCP/IP


sont :
HTTP, HyperText Transport Protocol, assure le transfert de
fichier hypertextes entre un serveur Web et un client Web
FTP, File Transfer Protocol, est un systme de manipulation de
fichiers distance (transfert, suppression, cration...)
TELNET, TELetypewriter NETwork protocol (ARPA) ou
TERminaL NETwork protocol, systme de terminal virtuel,
permet louverture de sessions avec des applications distantes
SMTP, Simple Mail Transfer Protocol, offre un service de
courrier lectronique
TFTP, Trivial FTP, est une version allge du protocole FTP,

DNS, Domain Name System, est un systme de bases de


donnes rparties assurant la correspondance dun nom
symbolique et dune adresse Internet (adresse IP)
RIP, Routing Information Protocol, est le premier protocole de
routage (vecteur distance) utilis dans Internet.
SNMP, Simple Network Management Protocol, est devenu le
standard des protocoles dadministration de rseau.
ICMP, Internet Control and error Message Protocol, assure un
dialogue IP/IP et permet notamment : la signalisation de la
congestion, la synchronisation des horloges et lestimation des
temps de transit... Il est utilis par lutilitaire Ping qui permet
de tester la prsence dune station sur le rseau.
Ces applications se diffrent par le protocole de transport
employ. Soit on utilise le protocole TCP qui garantit la rception
de donnes mais ne garantit pas le temps de transfert, ou UDP
qui par contre offre un court dlai de transmission mais ne
garantit pas lordonnancement des paquets et risque de les
perdre.
Ce projet se dcompose en 2 parties : la premire partie est une
tude thorique dans laquelle on se focalisera sur 3 applications
qui fonctionnent avec le protocole TCP : HTTP, SMTP et FTP.
Ensuite la deuxime partie est une Etude pratique qui comporte
la ralisation pratique sous LINUX des 3 protocoles traits par la
premire partie.

Sommaire
Introduction gnrale............................................................................................ 1
Chapitre I : Etude Thorique................................................................................... 3
I.

3.

Serveur WEB.................................................................................................... 3
1.

Introduction.................................................................................................. 3

2.

Communication entre navigateur et serveur................................................4


Requte http.................................................................................................... 4
4.

Rponse http............................................................................................. 7

MAIL : POSTFIX, PROCMAIL, FETCHMAIL...............................................................14

Chapitre I : Etude Thorique


I.

Serveur WEB

1. Introduction
Un serveur Web est un serveur informatique utilis pour publier
des sites web sur Internet ou un intranet. L'expression serveur Web
dsigne galement le logiciel utilis sur le serveur pour excuter les
requtes HTTP, le protocole de communication employ sur le World
Wide Web.

Un serveur web diffuse gnralement des sites web, il peut contenir


d'autres services lis comme l'envoi d'e-mails, du streaming, le
transfert de fichiers par FTP, etc.
Le World Wide Web WWW , littralement la toile daraigne
mondiale , communment appel le Web, et parfois la Toile, est un
systme hypertexte public fonctionnant sur Internet. Le Web permet de
consulter, avec un navigateur, des pages accessibles sur des sites.
Le Web nest quune des applications dInternet, distincte dautres
applications comme le courrier lectronique, la messagerie instantane,
et le partage de fichiers en pair pair. Le protocole HTTP (HyperText Transfer
Protocol) est le protocole le plus utilis sur Internet depuis 1990.
Les versions de http sont volues pour intgrer plusieurs services :
La version 0.9 tait uniquement destine transfrer des
donnes sur Internet (en particulier des pages Web crites
en HTML.
La version 1.0 du protocole (la plus utilise) permet dsormais
de transfrer des messages avec des en-ttes dcrivant le
contenu du message en utilisant un codage de type MIME.
Le but du protocole HTTP est de permettre un transfert de fichiers
(essentiellement au format HTML) localiss grce une chane de
caractres appele URL entre un navigateur (le client) et un serveur
Web (appel d'ailleurs http sur les machines UNIX).

Figure 2: Logo de http

2. Communication entre navigateur et serveur


La communication entre le navigateur et le serveur se fait en deux
temps :

Figure 3: communication client serveur

Le navigateur effectue une requte HTTP

Le serveur traite la requte puis envoie une rponse HTTP


En ralit la communication s'effectue en plus de temps si on
considre le traitement de la requte par le serveur. Etant donn
que l'on s'intresse uniquement au protocole HTTP, le traitement du
ct serveur ne sera pas explicit dans le cadre de cet article.

3.Requte http
Une requte HTTP est un ensemble de lignes envoy au serveur par
le navigateur. Elle comprend :
Une ligne : c'est une ligne prcisant le type de document
demand, la mthode qui doit tre applique, et la version du
protocole utilise. La ligne comprend trois lments devant tre
spars par un espace :

La mthode

L'URL

La version du protocole utilis par le client


(gnralement HTTP/1.0)
Les champs d'en-tte de la requte: il s'agit d'un ensemble de
lignes facultatives permettant de donner des informations
supplmentaires sur la requte et/ou le client (Navigateur, systme
d'exploitation, ...). Chacune de ces lignes est compose d'un nom
qualifiant le type d'en-tte, suivi de deux points (:) et de la valeur de
l'en-tte
Le corps de la requte: c'est un ensemble de lignes optionnelles
devant tre spares des lignes prcdentes par une ligne vide et
permettant par exemple un envoi de donnes par une commande
POST lors de l'envoi de donnes au serveur par un formulaire
Une requte HTTP a donc la syntaxe suivante :

METHODE URL VERSION<crlf>


EN-TETE : Valeur<crlf>
.
.
.
EN-TETE : Valeur<crlf>
Ligne vide<crlf>
CORPS DE LA REQUETE

<crlf> signifie saut de ligne


On prend un exemple de la requte http :

GET http://www.commentcamarche.net HTTP/1.0


Accept : text/html
If-Modified-Since : Saturday, 15-January-2000
14:37:11 GMT
User-Agent : Mozilla/4.0 (compatible; MSIE 5.0;
Windows 95)

Ou trouve dans les tableaux ci-dessous les listes de commandes


ainsi que des en-ttes :

Figure 4: Commandes de HTTP

Figure 5: En tte

4. Rponse http
Une rponse HTTP est un ensemble de lignes envoyes au
navigateur par le serveur. Elle comprend :
Une ligne de statut: c'est une ligne prcisant la version du
protocole utilis et l'tat du traitement de la requte l'aide d'un
code et d'un texte explicatif. La ligne comprend trois lments
devant tre spars par un espace :

La version du protocole utilis

Le code de statut

La signification du code
Les champs d'en-tte de la rponse: il s'agit d'un ensemble de
lignes facultatives permettant de donner des informations
supplmentaires sur la rponse et/ou le serveur. Chacune de ces
lignes est compose d'un nom qualifiant le type d'en-tte, suivi de
deux points (:) et de la valeur de l'en-tte
Le corps de la rponse: il contient le document demand
Une rponse HTTP a donc la syntaxe suivante

VERSION-HTTP CODE EXPLICATION<crlf>


EN-TETE : Valeur<crlf>
.
.
.
EN-TETE : Valeur<crlf>
Ligne vide<crlf>
CORPS DE LA REPONSE

<crlf> signifie saut de ligne

Comme illustration on prend lexemple suivant :

HTTP/1.0 200 OK
Date : Sat, 15 Jan 2000 14:37:12 GMT Server :
Microsoft-IIS/2.0
Content-Type : text/HTML
Content-Length : 1245
Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT

Figure 6: en-tte de rponse

ServeurWebleplusrpandusurInternet
Programmequitournesurunemachine(soitserveurouposteenlocal)qui
permetdesclientsdaccderdespagesweb
Permetlutilisationdemodules
Permetlapossibilitdedfiniruneconfigurationspcifiquepourchaquer
pertoirepartag
Souvent utilis avec des modules comme Perl et/ou PHP afin de
rendre le contenu des pages dynamiques
Cest un serveur web HTTP aussi flexible que puissant;
Il supporte des modules externes 100% configurables;
Peut tre personnalis en crivant soi-mme ses propres modules
en utilisant lAPI Apache;
Son code source est disponible et est accompagn dune licence
restrictive;
Il est test en permanence, et les bugs sont corrigs rapidement

Installation dapache

Installation termin

Chercher ladresse de la machine qui est encadr

Si on tape ladresse de lhote ou localhost ca donne la meme chose

Le protocole TCP est entrain decouter nimporte quel adresse dans le port 80 qui
est celui de http si on veut afficher en nombre

arreter apache

Le port http (80) nest plus list parmis les port qui sont en cours de traitement

Si on veut relancer encore apache on tape au lieu de stop restart ou start comme
suit

On remarque que le nom de domaine nest pas qualifi parce quon travaille avec
ladresse du localhost

Mettre une page web

1 . On change le rpertoire de travail par cd /var/www


On cherche les fichier par ls

On remarque un fichier html cest ce fichier quon doit modifier ci on veut


crer notre page local

En ouvrant le local host on aura la page modif

MAIL : POSTFIX, PROCMAIL,


FETCHMAIL
L'objectif du tutorial est l'installation et l'utilisation de postfix pour
l'envoi de courriels, de fetchmail pour la rcupration et de deux
courrielleurs pour la visualisation et l'envoi des courriels.
Pourquoi utiliser deux courrielleurs ?
Thunderbird permet la lecture des courriels depuis son PC comme le
fait tout un chacun mais mutt lit ses courriels en console donc depuis
n'importe quel PC pourvu que le serveur soit reli au net.

Pour que le tutoriel soit plus clair, je vais dfinir deux boites aux
lettres:
la boite d'un fournisseur d'accs comme free, laposte toto@fai.fr
la boite du serveur de courriel interne toto@postfix.fr
Installation des paquets
Avant tout il faut installer un certains nombres de paquets. Un
simple

Autre config