Académique Documents
Professionnel Documents
Culture Documents
Département Electronique
diplôme d’Ingénieur
Spécialité : Electronique
Options : Electronique Automatique
Sécurisation de la VoIP
via
Asterisk et X-lite
Présenté par :
Département Electronique
Sécurisation et Optimisation de la
VoIP
via Asterisk et X-lite
Présenté par :
ZOARITSIHOARANA Fitiavana Avo Tongalafatra
REMERCIEMENTS
Avant toutes choses, je tiens à remercier DIEU TOUT PUISSANT qui m’a
donné la force et la patience d’accomplir ce travail. Grâce Lui soit rendue.
J’exprime ma reconnaissance envers Mr ANDRIANARY Philippe Antoine,
Directeur de l’Ecole Supérieure Polytechnique d’Antananarivo (ESPA), envers Mr
RATSIMBA Mamy Nirina, Chef du département Electronique ainsi qu’envers tous
mes professeurs qui ont tout donné pour garantir la meilleure qualité d’éducation au
sein de l’établissement.
Je remercie chaleureusement Mr RAKOTOMIRAHO Soloniaina qui a bien
voulu assumer le rôle de Président malgré ses nombreuses responsabilités.
Mes vifs remerciements vont également aux membres du jury composé de Mr
RATSIMBA Mamy Nirina, Mr RATSIMBAZAFY Guy Prédon et Mr
RANDRIAMAROSON Rivo pour l’intérêt qu’ils ont porté à mes recherches en
acceptant d’examiner mon travail.
J’adresse mes plus sincères remerciements à mon encadreur, Mme
RABEHERIMANANA Lyliane qui a bien voulu me faire part de ses connaissances
et qui n’a jamais ménagé ni temps ni effort pour me permettre d’achever mon projet.
J’exprime mes plus profondes reconnaissances envers la Banque Africaine de
Développement (BAD) qui a accepté de me prêter main forte durant la réalisation de
ce projet et en particulier envers Mr RANDRIAMIFIDISOA Hajaniaina pour ses
précieux conseils et son aide durant toute la période de travail.
Je tiens à exprimer mes plus profonds remerciements et mes plus profondes
reconnaissances envers mes parents et mes grands-parents pour leur amour constant,
pour leurs encouragements et pour le soutien qu’ils m’ont toujours donnés.
Je remercie chacun de mes amis et tous les membres de ma famille pour tout le
support qu’ils m’ont toujours apportés.
Enfin, je remercie tous ceux qui, de près ou de loin, ont contribué à la réussite
de ce mémoire.
AVO
i
Résumé
La voix sur IP ou Voice over Internet Protocol (VoIP) est une technologie de
communication utilisant le protocole internet. L’existence de serveur gratuit comme Asterisk
est un avantage considérable par rapport au téléphone traditionnel. De plus, la VoIP offre à
ses utilisateurs divers types de services autres que les appels téléphoniques. L’existence des
téléphones « logiciels » qui peuvent être installés sur tous les ordinateurs ordinaires entraîne
le fait que tout le monde peut bénéficier des bienfaits de la technologie. En effet, les
softphones comme X-lite sont disponibles gratuitement. En d’autres termes, la VoIP offre une
meilleure qualité de service à moindre prix. L’un des objectifs de cette étude est de donner un
aperçu de la capacité réelle de cette technologie.
Ceci étant, il est nécessaire de savoir que malgré tous les avantages qu’elle a, la VoIP
n’est pas à l’abri de quelques imperfections qui pourraient nuire à ses clients et ainsi à son
développement. De plus elle est menacée par plusieurs attaques visant à réduire la
performance des services qu’elle offre. Par ailleurs, ces services, aussi bons soient-ils peuvent
encore être améliorés. Un autre but de cette étude est protéger le réseau VoIP contre toutes
attaques malveillantes qui pourraient nuire à son bon fonctionnement. Enfin, cette étude
traitera également de la façon d’améliorer la qualité des services de la VoIP.
ii
SOMMAIRE
REMERCIEMENTS ................................................................................................................. i
Résumé....................................................................................................................................... ii
SOMMAIRE ............................................................................................................................iii
Liste des Figures ...................................................................................................................... vi
Liste des Tableaux .................................................................................................................viii
Liste des abréviations .............................................................................................................. ix
INTRODUCTION .................................................................................................................... 1
Chapitre I : GENERALITES SUR LA VoIP .......................................................................... 2
I.1. PRÉSENTATION DE LA TECHNOLOGIE .............................................................. 2
I.1.1. DEFINITION ........................................................................................................... 2
I.1.2. ARCHITECTURE................................................................................................... 2
I.1.3. PRINCIPE DE FONCTIONNEMENT ................................................................. 4
I.2. PROTOCOLE SIP ( Session Inititation Protocol) ....................................................... 4
I.2.1. DESCRIPTION GENERALE DU PROTOCOLE SIP ....................................... 4
I.2.2. PRINCIPE DE FONCTIONNEMENT ................................................................. 5
I.2.3. RÔLE DES COMPOSANTS .................................................................................. 7
I.2.4. CARACTÉRISTIQUES .......................................................................................... 8
I.3. PROTOCOLES DE TRANSPORT ET DE CODAGE DE LA VOIX ...................... 9
I.3.1. LE PROTOCOLE RTP .......................................................................................... 9
a) Description générale de RTP
b) Les fonctions de RTP
c) Atouts et inconvénients
I.3.2. LE PROTOCOLE RTCP ..................................................................................... 10
a) Description générale de RTCP
b) Point fort et limite du protocole RTCP
I.4. QUALITÉ DU SERVICE (QoS) ................................................................................. 12
I.4.1. CONTRAINTES DE LA VoIP ............................................................................. 12
a) Le phénomène d’écho
b) La latence
c) La gigue
d) Les pertes de paquets
I.4.2. LES VULNÉRABILITÉS DE L’INFRASTRUCTURE .................................... 15
a) Faiblesses dans la configuration des dispositifs de la VoIP
b) Les téléphones IP
iii
c) Les serveurs
d) Les vulnérabilités du système d’exploitation
I.5. PRÉSENTATION DU LOGICIEL Packet Tracer .................................................... 17
I.5.1. PROPRIÉTÉS DU LOGICIEL ............................................................................ 18
a) Principaux protocoles
b) Equipements disponibles
c) Connexions possibles
I.5.2. INTERFACE GRAPHIQUE DU LOGICIEL .................................................... 20
I.6. CONCLUSION ............................................................................................................. 20
Chapitre II : CONFIGURATION DE LA VoIP .................................................................. 21
II.1. ARCHITECTURE DU RÉSEAU VoIP DÉPLOYÉ ................................................ 21
II.2. CONFIGURATION D’ASTERISK .......................................................................... 22
II.2.1. ARCHITECTURE D’ASTERISK...................................................................... 22
II.2.2. CONFIGURATION DES FICHIERS ................................................................ 22
II.2.3. LE PLAN DE NUMÉROTATION ..................................................................... 26
II.2.4. CONFIGURATION DES MESSAGES TEXTES ............................................ 26
II.3. CONFIGURATION DE X-LITE ............................................................................... 27
II.3.1. A PROPOS DE X-LITE ....................................................................................... 27
II.3.2. CONFIGURATION DES COMPTES DANS X-LITE..................................... 29
II.3.3. CONFIGURATION DES AUTRES OPTIONS ................................................ 31
II.4. CONCLUSION ........................................................................................................... 33
Chapitre III : METHODES DE SECURISATION DE LA VoIP....................................... 34
III.1. SÉCURISATION PROTOCOLAIRE .................................................................... 34
III.1.1. PRESENTATION DE LA METHODE............................................................ 34
III.1.2. UTILISATION DU PROTOCOLE SRTP ....................................................... 35
III.2. SÉCURISATION DE L’APPLICATION ............................................................... 38
III.2.1. CONDITIONS NECESSAIRES........................................................................ 38
III.2.2. UTILISATION DE X-Lite ................................................................................. 38
III.2.3. MATERIELS SPECIFIQUES .......................................................................... 38
III.3. SÉCURISATION DU SYSTEME D’EXPLOITATION ....................................... 44
III.3.1. CONDITIONS NECESSAIRES........................................................................ 44
III.3.2. UTILISATION DE FIREWALL ....................................................................... 45
III.4. CONCLUSION .......................................................................................................... 46
CONCLUSION GENERALE................................................................................................ 47
Annexe I : LE PROTOCOLE H323...................................................................................... 48
Annexe II : ATTAQUES SUR LE PROTOCOLE .............................................................. 50
A.II.1. Sniffing ..................................................................................................................... 50
iv
v
vi
vii
viii
ix
x
INTRODUCTION
1
Chapitre I
I.1.2. ARCHITECTURE
La VoIP étant une nouvelle technologie de communication, elle n'a pas encore de
standard unique. En effet, chaque constructeur apporte ses normes et ses fonctionnalités à ses
solutions. Les trois principaux protocoles sont H.323, SIP et MGCP/MEGACO. Il existe donc
plusieurs approches pour offrir des services de téléphonie et de visiophonie sur des réseaux
IP. Certaines placent l'intelligence dans le réseau alors que d'autres préfèrent une approche
égale à égale avec l'intelligence répartie à la périphérie. Chacune ayant ses atouts et ses
faiblesses. [2]
La Figure 1.1 décrit, de façon générale, la topologie d'un réseau de téléphonie IP. Elle
comprend des terminaux, un serveur de communication et une passerelle vers les autres
réseaux. Chaque norme a ensuite ses propres caractéristiques pour garantir une plus ou moins
grande qualité de service. L'intelligence du réseau est aussi déportée soit sur les terminaux,
soit sur les passerelles, contrôleurs de commutation, appelées Gatekeeper. Généralement, on
retrouve quelques éléments communs :
2
Le routeur permet d'aiguiller les données et le routage des paquets entre deux réseaux.
Certains routeurs permettent de simuler un Gatekeeper grâce à l'ajout de cartes spécialisées
supportant les protocoles VoIP. [3]
La passerelle permet d’interfacer le réseau commuté et le réseau IP.
Le PABX est le commutateur du réseau téléphonique classique. Il permet de faire le lien entre
la passerelle ou le routeur, et le réseau téléphonique commuté (RTC). Toutefois, si tout le
réseau devient IP, ce matériel devient obsolète.
Les Terminaux sont généralement de type logiciel (software phone) ou matériel (hardphone),
le softphone est installé dans le Personal Computer (PC) de l'utilisateur. L'interface audio
peut être un microphone et des haut-parleurs branchés sur la carte son, même si un casque est
recommandé. Pour une meilleure clarté, un téléphone USB ou Bluetooth peut être utilisé.
Le hardphone est un téléphone IP qui utilise la technologie de la Voix sur IP pour permettre
des appels téléphoniques sur un réseau IP tel que l'Internet. Les appels peuvent parcourir le
réseau internet ainsi qu’un réseau privé.
Un terminal utilise des protocoles comme le SIP (Session Initiation Protocol) ou l’un
des protocoles propriétaire tel que celui utilisé par Skype.
Réseau
téléphonique
Terminal VoIP Téléphone VoIP
PABX
Passerelle
Serveur
Réseau
téléphonique
Routeur
3
4
SIP est le standard ouvert de VoIP, interopérable, le plus étendu et vise à devenir le
standard des télécommunications multimédia (son, image, etc.). Skype par exemple, qui
utilise un format propriétaire, ne permet pas l'interopérabilité avec un autre réseau de voix sur
IP et ne fournit que des passerelles payantes vers la téléphonie standard. SIP n'est donc pas
seulement destiné à la VoIP mais pour de nombreuses autres applications telles que la
visiophonie, la messagerie instantanée, la réalité virtuelle ou même les jeux vidéo.
5
6
Une réponse à une requête est caractérisée, par un code et un motif, appelés
respectivement code d'état et raison phrase. Un code d'état est un entier codé sur 3 digits
indiquant un résultat à l'issue de la réception d'une requête. Ce résultat est précisé par une
phrase, textbased (UTF-8), expliquant le motif du refus ou de l'acceptation de la requête. Le
code d'état est donc destiné à l'automate gérant l'établissement des sessions SIP et les
motifs aux programmeurs. Il existe 6 classes de réponses et donc de codes d'état, représentées
par le premier digit (Tableau II).
3xx Redirection Une autre action doit être menée afin de valider la
requête
4xx Erreur du client La requête contient une syntaxe erronée ou ne peut pas
être traitée par ce serveur
5xx Erreur du serveur Le serveur n'a pas réussi à traiter une requête
apparemment correcte
6xx Echec général La requête ne peut être traitée par aucun serveur
7
Le Registrar est un serveur qui gère les requêtes REGISTER envoyées par les Users
Agents pour signaler leur emplacement courant. Ces requêtes contiennent donc une adresse
IP, associée à une UR, qui seront stockées dans une base de données (Fig.1.2).
Le proxy
interroge la
La base de données Base de
base de données
renvoie l’adresse IP données
du destinataire
I.2.4. CARACTÉRISTIQUES
Ouvert, standard, simple et flexible sont les principaux atouts du protocole SIP, voilà
en détails ces différents atouts :
Ouvert : les protocoles et documents officiels sont détaillés et accessibles à tous en
téléchargement.
Standard : l'IETF a normalisé le protocole et son évolution continue par la création ou
l'évolution d'autres protocoles qui fonctionnent avec SIP.
Simple : SIP est simple et très similaire à http.
Flexible : SIP est également utilisé pour tout type de sessions multimédia (voix, vidéo, mais
aussi musique, réalité virtuelle, etc.).
Téléphonie sur réseaux publics : il existe de nombreuses passerelles (services payants)
vers le réseau public de téléphonie (RTC, GSM, etc.) permettant d'émettre ou de recevoir des
appels vocaux.
8
Points communs avec H323 : l'utilisation du protocole RTP et quelques codecs son et vidéo
sont en commun.
Par contre une mauvaise implémentation ou une implémentation incomplète du
protocole SIP dans les Users Agents peut perturber le fonctionnement ou générer du trafic
superflu sur le réseau. Un autre inconvénient est le faible nombre d'utilisateurs : SIP est
encore peu connu et utilisé par le grand public, n'ayant pas atteint une masse critique, il ne
bénéficie pas de l'effet réseau.
9
reconstitution des données. Mais il faut savoir quand même que la perte d'un paquet n'est pas
un gros problème si les paquets ne sont pas perdus en trop grands nombres. Cependant il est
très important de savoir quel est le paquet qui a été perdu afin de pouvoir pallier à cette perte.
Identifier le contenu des données pour leurs associer un transport sécurisé et
reconstituer la base de temps des flux (horodatage des paquets : possibilité de
resynchronisation des flux par le récepteur). L'identification de la source c'est à dire
l'identification de l'expéditeur du paquet. Dans un multicast l'identité de la source doit être
connue et déterminée.
Transporter les applications audio et vidéo dans des trames (avec des dimensions qui
sont dépendantes des codecs qui effectuent la numérisation). Ces trames sont incluses dans
des paquets afin d'être transportées et doivent, de ce fait, être récupérées facilement au
moment de la phase de segmentation des paquets afin que l'application soit décodée
correctement.
c) Atouts et inconvénients
Le protocole RTP permet de reconstituer la base de temps des différents flux
multimédia (audio, vidéo, etc.), de détecter les pertes de paquets, et d’identifier le contenu des
paquets pour leur transmission sécurisée.
Par contre, il ne permet pas de réserver des ressources dans le réseau ou d’apporter une
fiabilité dans le réseau. Ainsi il ne garantit pas le délai de livraison.
10
11
a) Le phénomène d’écho
L'écho est le délai entre l'émission d'un signal et la réception de ce même signal
réverbéré. Ce problème se pose généralement dans les communications PC à Téléphone,
Téléphone à PC ou Téléphone à Téléphone. Il est causé par les composantes électroniques des
parties analogiques du système qui renvoient une partie du signal traité. Le phénomène d’écho
est désagréable, car le locuteur s’entend parler avec un décalage dans le temps qui ressemble à
un écho. Ceci peut l’interrompre ou le faire bégayer.
b) La latence
La latence est la mesure du délai dans un appel. En d’autres termes, c’est le temps de
déplacement des données ou des paquets de voix d'un point à un autre. La maîtrise du délai de
transmission est un élément essentiel pour bénéficier d'un véritable mode conversationnel et
minimiser la perception d'écho. Deux types de mesures sont à prendre en compte : la mesure
« round-trip latency » et la mesure « one-way latency ».
La mesure "round-trip latency" correspond au temps qu'il faut à une information pour
aller d'un point A vers un point B puis le temps qu'il faut à la réponse pour revenir en A. Elle
affecte la dynamique de la conversation. Prendre en compte la mesure de A vers B, puis celle
de B vers A, est important car les "performances de la ligne" ne sont pas forcements
symétrique. Avec une valeur de "round trip latency" égale ou supérieure à 300 ms, la qualité
de la conversation se dégrade et devient difficilement supportable (voix saccadées,...)
La mesure "one-way latency" qui détermine le temps écoulé entre l'émission d'un son
et sa réception. Elle est utilisée pour analyser l'origine de la latence.
12
Les chiffres du Tableau III (tirés de la recommandation UIT-T G114) sont donnés à
titre indicatif pour préciser les classes de qualité et d'interactivité en fonction du retard de
transmission dans une conversation téléphonique. Ces chiffres concernent le délai total de
traitement, et pas uniquement le temps de transmission de l'information sur le réseau.
Tableau III : Différentes classes de la latence [8]
200 ms 28 %
450 ms 35 %
700 ms 46 %
13
c) La gigue
La gigue ou « jitter » caractérise la variation de la latence dans le réseau. En effet,
suivant la charge du réseau, la latence peut être forte lors des surcharges et peu élevée dans le
cas contraire. Une gigue élevée (approximativement supérieure à 50 ms) peut entrainer une
augmentation de la latence et la perte de paquets. Lors d’une conversation, il est important
que les interlocuteurs entendent ce qu’ils se disent dans le même ordre dit. Dans le cas
contraire, il y a un risque que le contenu de la discussion ne soit pas compréhensible.
Malheureusement, le phénomène de gigue se caractérise par un déséquencement lors de la
transmission des paquets et des écarts de timing entre deux paquets successifs (fluidité de la
conversation), certains arrivant plus rapidement ou plus lentement qu'ils ne le devraient. Afin
de corriger les effets de gigue, les équipements terminaux de VoIP (par exemple téléphone)
réceptionnent les paquets de VoIP dans un buffer afin de pouvoir les remettre dans l'ordre et
de les restituer avec le bon timing avant que l'interlocuteur ne les entendent. Ce mécanisme de
correction fonctionne, mais peut entrainer d'autres problèmes. La mise en mémoire tampon
des paquets entraine des temps de traitements supplémentaires. Donc, plus le buffer est grand
et plus les délais sont importants. Il est donc indispensable de limiter la taille du buffer, mais
dans ce cas un autre problème peut survenir, en effet, si le buffer est plein alors des paquets
risquent d'être perdus (dropped) et le récepteur ne les entendra jamais. Ces paquets sont
appelés les "discarded packets". La gigue doit rester inférieure à 100 ms pour garder une
qualité acceptable. [9]
14
l'ordre de 1 %. L'appel A perd 1 paquet sur 100 paquets (random loss) alors que pour B la
perte de paquet se concentre par exemple au début et à la fin de la conversation. Lequel de ces
deux appels serait meilleur en terme de qualité? Il est évident que c’est le premier. C'est pour
cette raison qu'il est important de connaître la distribution de la perte des paquets
(uniformément répartie au cours de la conversation donc acceptable, ou concentrée à des
instants donc plus difficilement supportable). Bien évidemment, des attaques sur le protocole
peuvent survenir. Les détails sont donnés en annexe II.
b) Les téléphones IP
Un pirate peut compromettre un dispositif de téléphonie sur IP, par exemple un
téléphone IP, un softphone et autres programmes ou matériels clients. Généralement, il obtient
les privilèges qui lui permettent de commander complètement la fonctionnalité du dispositif.
15
Compromettre un point final (téléphone IP) peut être fait à distance ou par un accès physique
au dispositif. Le pirate pourrait changer les aspects opérationnels d'un tel dispositif: la pile du
système d'exploitation peut être modifiée. Ainsi la présence de l'attaquant ne sera pas
remarquée. Aussi un firmware modifié de manière malveillante peut être téléchargé et
installé. Les modifications faites à la configuration des logiciels de téléphonie IP peuvent
permettre:
Aux appels entrants d'être réorientés vers un autre point final sans que l'utilisateur
soit au courant.
Aux appels d’être surveillés.
A l'information de la signalisation et/ou les paquets contenant de la voix d’être
routés vers un autre dispositif et également d’être enregistrés et/ou modifiés.
De compromettre la disponibilité du point final. Par exemple, ce dernier peut rejeter
automatiquement toutes les requêtes d’appel, ou encore, éliminer tout déclenchement de
notification tel qu’un son, une notification visuelle à l’arrivée d’un appel. Les appels peuvent
également être interrompus à l’improviste (quelques téléphones IP permettent ceci via une
interface web).
D’autre part, toutes les informations concernant l'utilisateur qui sont stockées sur le
dispositif peuvent être extraites. L’acquisition d'un accès non autorisé sur un dispositif de
téléphonie IP peut être le résultat d'un autre élément compromis sur le réseau IP, ou de
l'information récoltée sur le réseau.
Les softphones ne réagissent pas de la même façon aux attaques comparés à leurs
homologues téléphones IP. Ils sont plus susceptibles aux attaques dues au nombre de vecteurs
inclus dans le système, à savoir les vulnérabilités du système d'exploitation, les vulnérabilités
de l’application, les vulnérabilités du service, des vers, des virus, etc. En plus, le softphone
demeure sur le segment de données et est ainsi sensible aux attaques lancées contre ce
segment et pas simplement contre l’hôte qui héberge l’application softphone. Les téléphones
IP exécutent quant à eux leurs propres systèmes d’exploitation avec un nombre limité de
services supportés et possèdent donc moins de vulnérabilités.
c) Les serveurs
Un pirate peut viser les serveurs qui fournissent le réseau de téléphonie sur IP.
Compromettre une telle entité mettra généralement en péril tout le réseau de téléphonie dont
le serveur fait partie. Par exemple, si un serveur de signalisation est compromis, un attaquant
peut contrôler totalement l'information de signalisation pour différents appels. Ces
16
17
Couches Protocoles
Liaison Ethernet (802.3), 802.11, HDLC, Frame Relay, PPP STP, RSTP,
VTP, DTP, CDP, 802.1q, PAgP, LACP L2 QoS, SLARP, Auto
Secure Wifi: Simple WEP, WPA, EAP
Réseau IPv4, ICMP, ARP, IPv6, ICMPv6, IPSec, GRE, ISAKMP Routage:
RIPv1/v2/ng, Multi-Area OSPF, EIGRP, Static Routing Sécurité:
Context Based Access Lists , Zone-based policy firewall et Intrusion
Protection System (sur certain routeur) Multilayer Switching, L3
QoS, NAT
Transport TCP and UDP, TCP Nagle Algorithm & IP Fragmentation
Application HTTP, HTTPS, TFTP, Telnet, SSH, DNS, DHCP, NTP, SNMP,
AAA, Radius, TACACS, Syslog
b) Equipements disponibles
Packet Tracer propose les principaux équipements réseaux composant les réseaux
actuels. Chaque équipement possède une vue physique comprenant des modules à ajouter, une
vue « configuration » pour configurer les principales options via une interface graphique et
une vue permettant la configuration via CLI.
Ces équipements sont : routeurs, commutateurs, terminaux (ordinateur, portable,
serveur, imprimante et téléphone IP), point d’accès Modem, concentrateurs. Sachant que
chaque équipement se voit attribuer un certain nombre de modules, permettant d’ajouter soit
des ports supplémentaires, soit des nouveaux types de port, les équipements propriétaires
Cisco ont la possibilité de se voir attribuer les nouveaux IOS disponibles sur le site Cisco, si
ceux-ci sont compatibles. Ces IOS peuvent ajouter de nouvelles fonctionnalités ou options de
configuration.
18
c) Connexions possibles
Packet Tracer propose les principales connexions possibles entre différents
équipements réseaux : Le Tableau VI donne ces dites connexions.
Câble Console les connexions console peuvent être établies entre PC et routeurs
ou commutateurs. Elles servent principalement à configurer les
équipements.
Câble droit standard Ethernet pour connecter les équipements opérant dans
les différentes couches du modèle OSI. Packet Tracer supporte
le 10, 100 et 1000 Mbps.
Câble croisé standard Ethernet pour connecter les équipements opérant dans
les mêmes couches du modèle OSI. Packet Tracer supporte le
10, 100 et 1000 Mbps.
Fibre optique les connexions fibres peuvent être établies si les équipements
possèdent les ports fibre adéquates. Packet Tracer supporte le
100 et 1000 Mbps.
Ligne téléphonique Les connexions téléphoniques ne sont disponibles qu’entre les
équipements possédant des ports modem. Ces connexions se font
généralement à travers un nuage réseau.
Câble Coaxial Même chose que pour la ligne téléphonique, sauf que les ports
utilisés sont des ports coaxiales.
Câbles DCE et DTE les connexions sérials se font entre 2 ports séries. Elles sont
souvent utilisées pour simuler des liens WAN. Le doit être activé
sur le câble DCE pour activer la connexion. En fonction du
premier câble sélectionné (DTE ou DCE) le deuxième sera
forcément de l’autre type afin d'assurer la connexion.
19
I.6. CONCLUSION
Il est évident que la VoIP est la solution la plus rentable pour effectuer des
conversations. Les différents protocoles qu’elle possède, constituent l’une des forces majeures
de cette technologie. Plusieurs facteurs déterminent la qualité du service offert par cette
dernière notamment l’écho, la latence, la gigue et les pertes de paquets. En raison de la grande
disponibilité qu’elle offre, la VoIP est victime de plusieurs attaques telles que le sniffing, le
suivi des appels, la gigue et l’écoute clandestine. De plus, son infrastructure est quelque peu
vulnérable en raison des différents saboteurs qui ne veulent voir cette technologie se
développer. Par ailleurs, des logiciels de simulation sont disponibles pour tous ceux qui
veulent faire une expérience avec la VoIP. Packet Tracer est l’un des plus utilisés d’entre eux.
20
Chapitre II
CONFIGURATION DE LA VoIP
Serveur : Asterisk
Réseau IP
Le serveur est une machine sur laquelle est installé le système d’exploitation linux. En
général, il est préférable de choisir une version récente de la distribution utilisée mais
néanmoins, il est possible de travailler avec n’importe laquelle (Debian, Centos, Fedora Core,
21
. . .), du moment qu’on peut y installer Asterisk. Il est même possible d’utiliser un système
d’exploitation Windows vu qu’une version sous Windows d’Asterisk est maintenant
disponible. Les machines clientes, quant à elles, contiennent principalement des logiciels de
téléphonie comme X-lite ou Eyebeam quel que soit le système d’exploitation. Pour cette
étude, la distribution choisie est Debian et le softphone est X-lite.
22
agents.conf: Contient la configuration de l’utilisation des agents, comme dans le cas d’un
centre d’appel. Ceci nous permet de définir les agents et de leurs assigner des ID et des mots
de passe.
asterisk.conf: Définit certaines variables pour l’utilisation d’Asterisk. Il sert essentiellement à
indiquer à Asterisk où chercher certains fichiers et certains programmes exécutables.
extensions.conf: Configure le comportement d’Asterisk. C’est le fichier qui nous intéresse le
plus dans ce travail.
iax.conf: Configure les conversations VoIP en utilisant le protocole Inter-Asterisk Exchange
(IAX). Il contient la configuration des clients connectés via le protocole IAX pour les
transferts d’appels entre serveurs distants. La section générale établit les options globales du
serveur et sa configuration pour s’enregistrer comme client sur un serveur distant. Les
sections suivantes définissent les clients.
rtp.conf: Ce fichier de configuration définit les ports à utiliser pour le protocole RTP. Il faut
noter que les numéros listés sont des ports UDP.
sip.conf: Contient les paramètres relatifs au protocole SIP pour l’accès au serveur Asterisk,
les clients doivent y figurer afin de pouvoir recevoir ou effectuer un appel via le serveur. La
première partie sert pour les options générales de SIP comme l’adresse IP et le port
correspondant. Les sections suivantes définissent les paramètres clients tels que le nom
d’utilisateur, son mot de passe, l’adresse IP par défaut pour les utilisateurs non enregistrés. On
peut aussi définir d'autres options globales pour SIP telles que, quels ports utiliser et les
timeout qu'on va imposer. L’installation d’Asterisk est disponible en Annexe 1. Les
principaux fichiers à configurer sont sip.conf et extensions.conf.
Voici les paramètres essentiels de sip.conf :
username : Identifiant de l'utilisateur
secret : Mot de passe associé au compte
type : Indique le type de compte, et les restrictions associées. Il ya trois types de
comptes dont friend grâce auquel il est possible d’appeler et d’être appelé (autorise les appels
entrants et sortants) , user, permettant seulement d'être appelé (appels entrants) et peer,
permettant de définir une liaison entre deux terminaux seulement.
host : Spécifie une adresse IP à partir de laquelle l'utilisateur peut accéder à son
compte. La valeur dynamic autorise une adresse IP fournie dynamiquement, par un serveur
DHCP notamment. Cette valeur est donc moins restrictive.
callerid : Nom de l'utilisateur, entre guillemets, suivi de son extension téléphonique,
c'est-à-dire de son numéro d'appel (au format de la RFC 822). Attention : le numéro de
23
téléphone mentionné ici ne constitue pas une association du numéro avec l'utilisateur (cette
association sera faite ultérieurement). Ce paramètre permet simplement d'identifier
l'utilisateur (ou le terminal) lorsqu'il passe des appels. Autrement dit, cette information est
utilisée dans les appels sortants uniquement pour indiquer le nom (si le terminal appelé
permet d'afficher cette information) et le numéro de téléphone de l'utilisateur.
context : Spécifie le type de routage à appliquer pour l'utilisateur. Le type de routage
correspond à un contexte défini dans le plan de numérotation (fichier extensions.conf). Les
communications avec cet utilisateur sont donc soumises au contexte du même nom dans le
fichier extensions.conf.
language : Spécifie la langue utilisée pour les fichiers audio. Par exemple :
language=fr.
allow : Liste les codecs autorisés par l'utilisateur de ce compte. Par exemple, pour
autoriser le codec G.711, selon la loi mu, on saisira: allow=ulaw. Ce même paramètre est
aussi valable pour spécifier les codecs vidéo (par exemple : allow=h263).
disallow : Interdit les codecs qui sont mentionnés à sa suite. Une valeur possible de ce
paramètre est all. Dans ce cas, aucun codecs ne sera utilisable par l'utilisateur concerné, sauf
ceux spécifiés explicitement dans le (ou les) paramètre(s) allow.
nat : Précise si les flux traversant un réseau utilisent la translation d'adresse (NAT). La
valeur du paramètre nat est yes ou no. Ce paramètre est souvent indispensable car l'utilisation
du nat est classique, même chez les particuliers.
canreinvite : Ce paramètre peut prendre les valeurs yes ou no. Si sa valeur est fixée à
yes, lorsqu'une communication est en train de s'établir, le serveur Asterisk va récupérer des
informations (notamment vers qui envoyer les flux) et ils les réémettra dans un nouveau
message d'invitation une fois que la communication sera acceptée seulement. Attention, si
l'utilisateur se trouve derrière un NAT, il est indispensable de mettre la valeur de ce paramètre
à no pour laisser passer les flux multimédia correctement, car le nouveau message d'invitation
du serveur Asterisk ne tiendrait pas compte du NAT.
mailbox : Indique la boite vocale associée à ce compte. Nous détaillons ce paramètre
et son utilisation à la section qui traite de la messagerie audio.
dtmfmode : Ce champ indique le type de tonalité DTMF qui sera appliqué. Les valeurs
possibles sont in band, rfc2833, info ou auto.
24
La Figure 2.3 montre un extrait de la configuration du fichier sip.conf dans lequel sont
configurés les utilisateurs 6001 et 6002 ayant pour noms respectifs John DOE et Albert
DUPONT. Dans le présent fichier, les mots de passe des deux utilisateurs sont « secret ».
[template](!)
type=friend
host=dynamic
dtmfmode=rfc2833
disallow=all
allow=ulaw
allow=g729
allow=alaw
allow=h263
context = work
careinvite=no
[6001](template)
fullname = John DOE
username = jdoe
secret=secret
callerid=6001
[6002](template)
fullname = Albert DUPONT
username = adupont
secret=secret
callerid=6002
25
26
[messages]
exten=> _X.,1,Set(ACTUALTO=${CUT(MESSAGE(to),@,1)})
exten=> _X.,n,MessageSend(${ACTUALTO},${MESSAGE(from)})
exten=> _X.,n,NoOp(Send status is ${MESSAGE_SEND_STATUS})
exten => _X.,n,GotoIf($["${MESSAGE_SEND_STATUS}" != SUCCESS"]?sendfailedmsg)
exten=> _X.,n,Hangup()
exten=>_X.,n(sendfailedmsg),Set(MESSAGE(body)="[${STRFTIME(${EPOCH},,%d%m%Y-
%H:%M:%S)}]Sorry you can't send a message to ${EXTEN}.Please retry later.")
exten => _X.,n,Set(ME_1=${CUT(MESSAGE(from),<,2)})
exten => _X.,n,Set(ACTUALFROM=${CUT(ME_1,@,1)})
exten => _X.,n,MessageSend(${ACTUALFROM},ServiceCenter)
exten => _X.,n,Hangup()
27
En terme global de VoIP, X-lite prend en charge les supports pour les codecs audio tels
que AMR Wideband (G722.2), Broadvoice-32, Broadvoice-32 FEC, DVI4, DVI4 Wideband,
EVRC, G711aLaw, G711uLaw, G726, G729, GSM, iLBC, L16 PCM Wideband, Speex, Speex
FEC, Speex Wibeland, Speex Wibeland FEC ; les codecs vidéo tels que H263, H263+1998 et
H264. Une des fonctionnalités de X-lite est celui de choisir automatiquement le meilleur
codec selon la bande passante disponible et les conditions du réseau. Ce logiciel fait partie
d’une collection comprenant notamment Ekiga, Linphone et Eyebeam. Ce dernier et X-lite
étant disponibles à la fois sous Windows et sous Macintosh, Ekiga ne fonctionne que sous
Linux, Linphone sous Windows et Linux. Pour pouvoir installer X-lite, il faut disposer au
moins d’un processeur pentium II 300 ou équivalent, d’une mémoire RAM de 128 MB et
d’une version de Windows supérieure à Windows 2000. X-lite requiert que les utilisateurs qui
entrent en communication disposent chacun d’un haut-parleur et d’un microphone. X-lite peut
également communiquer avec d’autres matériels de communication tels que les téléphones IP.
[13]
La Figure 2.5 illustre ce à quoi devrait ressembler l’interface de X-lite si le serveur
Asterisk a été correctement configuré:
Figure 2.5 : Interface du softphone X-lite
28
Figure 2.6 : Fenêtre de configuration d’un compte
29
Lors de la création d’un nouvel utilisateur ou lors de la modification des propriétés des
utilisateurs actifs, une fenêtre comme celle indiquée à la Fig.2.7 apparait :
Figure 2.7 : Configuration d’un compte
Les configurations concernant les comptes des utilisateurs sont effectuées dans la
fenêtre indiquée dans la Fig.2.7. La procédure à suivre n’est pas très complexe. Il suffit de
remplir certains champs en fonction des paramètres établis dans les fichiers de configuration
du serveur Asterisk tandis que d’autres peuvent être remplis aléatoirement.
Display Name = aléatoire (il peut s’agir d’un nom ou d’un numéro)
User name = le Login SIP de l’utilisateur
Password = le mot de passe SIP de l’utilisateur
Authorization user name = le Login SIP de l’utilisateur
Domain= adresse IP du serveur
Domain Proxy = ne rien modifier
30
Etant donné que de nos jours, les messages textes sont plus à la mode et que la plupart
des gens, jeunes ou adultes, semblent se familiariser avec ces messages, X-lite offre aussi la
possibilité de s’envoyer des messages instantanés.
La Figure 2.8 représente un échange texte entre deux utilisateurs.
Figure 2.8 : Fenêtre de messagerie texte
31
Figure 2.9 : Sélection des codecs dans X-lite
32
II.4. CONCLUSION
La VoIP peut donc être déployée selon une architecture voulue en fonction du besoin
de l’utilisateur. Bien que le choix des serveurs de téléphonie soit multiple, plusieurs
choisissent Asterisk pour les nombreux avantages qu’il offre en termes de fiabilité, de coût et
surtout de performance. La capacité d’Asterisk à se conformer au besoin des utilisateurs lui
confère un avantage unique en son genre.
D’autre part, un serveur sans client est complètement inutile. Ce qui sous-entend
qu’Asterisk ne serait rien sans ses précieux clients tels que X-lite. Ce dernier, lorsqu’il est
correctement configuré, offre une large gamme de possibilité à l’utilisateur allant du simple
appel téléphonique aux messages textes. C’est en travaillant ensemble qu’Asterisk et X-lite
peuvent donner le meilleur d’eux-mêmes pour les utilisateurs. En effet, si le serveur est
défaillant, le softphone ne fonctionnerait pas et vice vers ça, s’il n’y a pas de logiciel client,
l’utilisateur ne pourrait rien faire.
33
Chapitre III
La VoIP peut dans une décennie constituer une des plus puissantes technologies jamais
conçues par l’homme. Néanmoins, si la qualité des services qu’elle offre ne satisfait pas les
clients et les utilisateurs, la VoIP ne pourra jamais émerger et prendre la place qui devrait être
sienne. Pour palier ce problème, il est nécessaire d’apporter des améliorations aux services
offerts. Ceci n’est pas chose aisée car la VoIP en elle-même ne peut être améliorée que si
d’autres ressources viennent s’y ajouter. Le cas du présent ouvrage qui traite de la VoIP avec
Asterisk offre la possibilité de sécuriser la VoIP en faisant des modifications au cœur même
du logiciel.
Ce chapitre a pour objectif d’illustrer les différentes solutions de sécurisation de la
VoIP. Pour atteindre ce but, il est nécessaire de faire appel à diverses méthodes spécifiques
visant chacune à améliorer la qualité du service afin de satisfaire au mieux l’utilisateur et afin
de lui garantir les meilleures protections possibles.
Cette sécurisation de la VoIP peut s’effectuer de trois manières différentes
indépendantes les unes des autres mais néanmoins plus efficace si exécutées en même temps.
Il y a donc la sécurisation au niveau du protocole, la sécurisation au niveau de l’application et
la sécurisation au niveau du système de l’exploitation.
34
la présente étude, le protocole utilisé afin d’atteindre ce but est le Secure Real-time Transport
Protocol (SRTP).
SRTP est comme sont nom l’indique un protocole de sécurisation basé sur le protocole
temps réel RTP. Il a été conçu afin de sécuriser la multiplication à venir des échanges
multimédias sur les réseaux. Parmi les protocoles de sécurité existants, il y a notamment IPsec
(IP Security), bâti lui aussi sur le protocole RTP et dont le mécanisme d'échanges de clés est
trop lourd. SRTP a été créé dans le but de couvrir les lacunes de ces protocoles. Il est
compatible à la fois avec des protocoles d'initiation de session de VoIP tel que SIP, ainsi que
le protocole de diffusion de contenu multimédia en temps réel RTSP (Real Time Streaming
Protocol).
SRTP offre de nombreux services de sécurité dont les principaux sont :
a) Rendre confidentielles les données RTP, que ce soit l’en-tête et la charge utile ou
seulement la charge utile.
b) Authentifier et vérifier l’intégrité des paquets RTP. L’émetteur calcule une empreinte
du message à envoyer, puis l’envoie avec le message même.
c) La protection contre le rejet des paquets. Chaque récepteur tient à jour une liste de tous
les indices des paquets reçus et bien authentifiés.
Un paquet SRTP est généré par transformation d’un paquet RTP grâce à des
mécanismes de sécurité. Donc le protocole SRTP effectue une certaine mise en forme des
paquets RTP avant qu’ils ne soient sur le réseau.
Le paquet SRTP est réalisé en rajoutant deux champs au paquet RTP :
SRTP MKI (SRTP Master Key identifier) : sert à ré-identifier une clef maîtresse particulière
dans le contexte cryptographique. Le MKI peut être utilisé par le récepteur pour retrouver la
clef primaire correcte quand le besoin d’un renouvellement de clefs survient.
35
partir de données capturées sur un réseau. Dans le cas de cette étude, il sera utilisé pour pirater
le réseau afin de pouvoir écouter les conversations s’effectuant entre deux utilisateurs des
softphones X-lite.
Figure 3.1 : Interface du logiciel Wireshark
D’autre part, il a également été nécessaire lors de ce projet de faire appel à VMware
Workstation. Il s’agit d’un logiciel permettant d’utiliser des machines virtuelles dont
notamment Windows XP contenant l’un des softphones nécessaires pour la simulation et
Debian 6 contenant le serveur Asterisk, le deuxième softphone étant installé dans la machine
réelle.
Dans un premier temps, le serveur n’est pas encore sécurisé et un appel entre les deux
softphones est effectué. Le piratage via Wireshark est également effectué. Il s’agit d’écouter la
conversation qui se fait entre les deux utilisateurs, ceci étant possible en lisant le contenu des
paquets échangés grâce au logiciel. Une fois décodé, la voix est récupéré par ce dernier et il
36
devient alors facile d’écouter la conversation en entier. Le résultat est celui affiché à la Figure
3.2.
Figure 3.2 : Résultat du piratage sans sécurisation du protocole
Pour bénéficier d’une meilleure sécurité pour les protocoles de la VoIP, il est
approprié de faire appel à SRTP. L’étape suivante consiste à refaire le même test mais cette
fois-ci avec un serveur sécurisé au niveau du protocole.
Ainsi, quelques lignes sont ajoutées dans le fichier extensions.conf d’Asterisk. La
configuration pour les utilisateurs 6001 et 6002 est montrée dans la Figure 3.3.
[work]
exten => _6XXX,1,Dial(SIP/${EXTEN},20)
exten => _6XXX,1,Set(_SIPSRTP=require) (l’utilisation de SRTP est requise)
exten => _6XXX,2,Set(_SIPSRTP_CRYPTO=enable) (activer le cryptage)
exten => _6XXX,n,Hangup()
Figure 3.4 : Résultat du piratage avec sécurisation de protocole
37
38
switchs et les téléphones IP. En effet, l’utilisation de téléphone IP permet d’une part de
disposer d’une meilleure sécurité vu que n’étant pas un logiciel, il est moins exposé aux virus
et autres attaques pouvant atteindre les softphones. De même, il est difficile aux utilisateurs
malveillants de pirater un téléphone IP. D’autre part, il fonctionne indépendamment d’autres
programmes. Ce qui permet de garantir une meilleure performance à tous les niveaux. Les
switchs quant à eux sont indispensables si les téléphones IP sont présents dans un réseau.
Lors de cette étude, le réseau avec téléphone IP et switch a été testé réellement et
virtuellement grâce à Packet Tracer.
Dans la simulation, il s’agit d’utiliser trois téléphones IP, deux routeurs (VoIP, DHCP)
et un switch. Sous Packet Tracer, l’utilisation de ces matériels est assez aisée. Il suffit de
configurer le routeur DHCP de façon à ce que celui-ci distribue des adresses IP aux
téléphones IP. Le routeur VoIP quant à lui est là pour assurer que la distribution des numéros
des téléphones IP soit bien effectuée. La Figure 3.5 montre l’architecture du réseau à réaliser
sous Packet Tracer.
Figure 3.5 : Utilisation de téléphone IP et switch sous Packet Tracer
39
DHCP >enable
DHCP #configure terminal
DHCP(config)#interface fastEthernet 0/0
DHCP(config-if)#ip address 192.168.1.1 255.255.255.0
DHCP(config-if)#no shutdown
Pour éviter que les téléphones n’utilisent les adresses IP allant de 192.168.1.1 à
192.168.1.5, une exclusion doit se faire dans le routeur DHCP (Figure 3.7). Le routeur par
défaut a pour adresse IP : 192.168.1.2
VOIP>enable
VOIP#configure terminal
VOIP(config)#interface fastEthernet 0/0 (activation de son interface fastethernet 0/0)
VOIP(config-if)#no shutdown
VOIP(config)#exit
VOIP(config)#interface fastEthernet 0/0.5
VOIP(config-subif)#encapsulation dot1Q 5
VOIP(config-subif)#ip address 192.168.1.2 255.255.255.0
40
Switch>enable
Switch #configure terminal
Switch (config)#vlan 5
Switch (config-vlan)#name PHONES
Switch (config-vlan)#exit
Switch (config)#vlan 40
Switch (config-vlan)#name DATA
Switch (config-vlan)#exit
Switch (config)#interface range fastEthernet 0/1-3
Switch (config-if-range)#switchport mode access
Switch (config-if-range)#switchport access vlan 40
Switch (config-if-range)#switchport voice vlan 5
Switch (config-if-range)#exit
Il en est de même pour l’interface connectée au routeur pour la VOIP (Figure 3.11). Le
mode trunk est utilisé car il passe par les deux VLAN.
41
VOIP(config)#telephony-service
VOIP(config-telephony)#max-dn 10
VOIP(config-telephony)#max-ephones 5
VOIP(config-telephony)#ip source-address 192.168.1.2 port 2000
VOIP(config-telephony)#exit
La commande ci-dessous est exécutée pour vérifier si les téléphones sont bien
enregistrés dans le routeur VOIP.
VOIP#show ephone
Ensuite, il faut associer un numéro aux 3 téléphones (dn = directory number). La
Figure 3.13 montre les configurations correspondantes à cette association.
VOIP(config)#ephone-dn 1
VOIP(config-ephone-dn)#number 100
VOIP(config-ephone-dn)#exit
VOIP(config)#ephone-dn 2
VOIP(config-ephone-dn)#number 101
VOIP(config-ephone-dn)#exit
VOIP(config)#ephone-dn 3
VOIP(config-ephone-dn)#number 102
VOIP(config-ephone-dn)#exit
42
Vient ensuite la création des ephones, pour associer les directory numbers aux IP des
téléphones (Figure 3.14).
VOIP(config)#ephone 1
VOIP(config-ephone)#button 1:1
VOIP(config-ephone)#exit
VOIP(config)#ephone 2
VOIP(config-ephone)#button 1:2
VOIP(config-ephone)#exit
VOIP(config)#ephone 3
VOIP(config-ephone)#button 1:3
VOIP(config-ephone)#exit
Figure 3.15 : Simulation d’appels sous Packet Tracer.
Pour les matériels physiques, étant donné que le département ne possède pas ces
matériels, la Banque Africaine de Développement (BAD) a accepté d’apporter leur noble
contribution en fournissant ces swicths et téléphones afin de pouvoir achever la présente
étude. Il s’agit de matériels fournis par POLYCOM, ce dernier étant l’une des plus grandes
marques de matériels réseaux.
43
44
études ont montré qu’il y a une très grande différence entre la qualité du son lorsque le
serveur est utilisé dans une machine dédiée et lorsque le serveur fonctionne en même temps
que d’autres programmes. Ce principe s’applique même aux grandes entreprises car celles-ci
utilisent un système selon lequel chaque élément est séparé et a sa propre fonction.
Dans le meilleur des cas, utiliser un serveur Asterisk dédié, c'est-à-dire un serveur qui
n’est pas un ordinateur, serait plus que bénéficiaire, surtout pour ceux qui ont le moyen de se
l’approprier. Cette solution, bien qu’assez chère permet à Asterisk de déployer toute sa
puissance et d’offrir à l’utilisateur d’obtenir une meilleure qualité de service.
45
III.4. CONCLUSION
Plusieurs failles peuvent donc se présenter dans un réseau VoIP. Les attaques
malveillantes contre les protocoles, les applications et les systèmes d’exploitation en font
parties. Néanmoins plusieurs solutions sont offertes afin de pouvoir contourner ces obstacles.
La protection de la VoIP à ces niveaux s’est révélée très utile. Notamment, il a été
nécessaire de renforcer la sécurité au niveau des protocoles grâce à l’utilisation de SRTP. Ceci
a permis au serveur de passer les appels sous un cryptage. La sécurisation de l’application
quant à elle a été basée principalement basé sur le fait que chaque matériel doit être
spécialement dédié à effectuer une tâche bien précise. L’ajout d’un pare-feu au niveau du
système serveur est un moyen efficace pour protéger le serveur en question.
46
CONCLUSION GENERALE
47
ANNEXES
Annexe I
LE PROTOCOLE H323
Le standard H.323 fournit, depuis son approbation en 1996, un cadre pour les
communications audio, vidéo et de données sur les réseaux IP. Il a été développé par l'ITU
(International Telecommunications Union) pour les réseaux qui ne garantissent pas une
qualité de service (QoS). Il est présent dans plus de 30 produits et il concerne le contrôle des
appels, la gestion multimédia, la gestion de la bande passante pour les conférences point-à-
point et multipoints. H.323 traite également de l'interfaçage entre le LAN et les autres
réseaux.
Le protocole H.323 fait partie de la série H.32x qui traite de la vidéoconférence au
travers différents réseaux. Il inclue H.320 et H.324 liés aux réseaux ISDN (Integrated Service
Data Network) et PSTN (Public Switched Telephone Network). Plus qu'un protocole, H.323
crée une association de plusieurs protocoles différents et qui peuvent être regroupés en trois
catégories : la signalisation, la négociation de codec, et le transport de l’information.
Les messages de signalisation sont ceux envoyés pour demander la mise en relation de
deux clients, qui indique que la ligne est occupée ou que le téléphone sonne, etc. En H.323, la
signalisation s’appuie sur le protocole RAS (Registration/Admission/Status) pour
l’enregistrement et l’authentification, et le protocole Q.931 pour l’initialisation et le contrôle
d’appel.
La négociation est utilisée pour se mettre d’accord sur la façon de coder les
informations à échanger. Il est important que les téléphones (ou systèmes) utilisent un
langage commun s’ils veulent se comprendre. Il s’agit du codec le moins gourmand en bande
passante ou de celui qui offre la meilleure qualité. Il serait aussi préférable d’avoir plusieurs
alternatives de langages. Le protocole utilisé pour la négociation de codec est le H.245.
Le transport de l’information s’appuie sur le protocole RTP qui transporte la voix, la
vidéo ou les données numérisées par les codecs. Les messages RTCP peuvent être utilisés
pour le contrôle de la qualité, ou la renégociation des codecs si, par exemple, la bande
passante diminue.
48
49
Annexe II
A.II.1. Sniffing
Un reniflage (Sniffing) peut avoir comme conséquence un vol d'identité et la révélation
d'informations confidentielles. Il permet également aux utilisateurs malveillants perfectionnés
de rassembler des informations sur les systèmes VoIP. Ces informations peuvent par exemple
être employées pour mettre en place une attaque contre d'autres systèmes ou données.
Plusieurs outils requis pour le sniffing, y compris pour le protocole H.323 et des plugins SIP,
sont disponibles en open source.
50
un flux RTP de l’appelant vers l’appelé, analyser son contenu et générer un paquet RTP
contenant un en-tête similaire mais avec un plus grand numéro de séquence et timestamp afin
que ce paquet soit reproduit avant les autres paquets (s’ils sont vraiment reproduits). Ainsi la
communication sera perturbée et l’appel ne pourra pas se dérouler correctement. Pour réaliser
cette attaque, l’attaquant doit être capable d’écouter le réseau afin de repérer une
communication et ainsi repérer les timestamps des paquets RTP. Il doit aussi être capable
d’insérer des messages RTP qu’il a généré ayant un timestamp modifié.
51
Annexe III
52
et des codecs. Il assure la commutation transparente entre toutes les interfaces supportées,
permettant de relier entre elles une diversité de systèmes téléphoniques en un unique réseau
commuté.
Cependant Asterisk n’est pas le seul serveur de téléphonie au monde. On peut citer:
Callweaver, FreeSWITCH, YATE (Yet Another Telephony Engin). Bien que tous ces
serveurs présentent chacun leurs propres avantages, d’une manière ou d’une autre, ils ont tous
été tirés de la version originale d’Asterisk. On peut par exemple noter un fait remarquable :
Callweaver est un fork de la version 1.2 d’Asterisk. Mis à part tous ces faits mentionnés,
d’autres raisons nous poussent les utilisateurs à choisir Asterisk. L’une des principales est
qu’il offre de nombreuses implémentations de protocole de télécommunications tels les
protocoles SIP, H323, IAX et bien d’autres encore. Il dispose également de services
téléphoniques intégrés comme la messagerie vocale, les audioconférences ou les
vidéoconférences. Mais son meilleur point fort est celui de posséder des interfaces vers les
applications informatiques dont le web, l’e-mail, ou la messagerie instantanée. De plus,
Asterisk a l’avantage d’être soutenu par une communauté de développeurs experts et
passionnés. Ce qui est très important dans le monde du logiciel libre. Ce soutien lui a confié
une forte popularité qui l’a élevé au-dessus des autres serveurs de téléphonie. Grâce à tout
ceci, Asterisk ne cesse d’évoluer et de devenir de plus en plus performant. Asterisk est
disponible gratuitement sur Internet, principalement sous deux formes : une archive contenant
des fichiers source à compiler ; une distribution contenant les fichiers compilés, ainsi qu’une
distribution Linux. Cette dernière distribution s’appelle AsteriskNOW, car elle est quasi
immédiatement utilisable. Elle est principalement destinée aux utilisateurs peu familiers de
Linux. Par ailleurs, AsteriskNOW contient une interface graphique de configuration. Installer
un serveur Asterisk par la distribution AsteriskNOW ne présente pas de difficulté majeure.
Cependant l’installation d’Asterisk depuis les fichiers sources présente l’avantage de
permettre de garder une vue générique des fichiers de configuration installés, des modules,
mais également de l’interface en ligne de commande, très utile pour le débogage de premier
niveau. [14]
53
REFERENCES
54
Résumé
La voix sur IP ou Voice over Internet Protocol (VoIP) est une technologie de
communication qui comme son nom l’indique, utilise le protocole internet. Elle possède de
nombreux avantages par rapport au téléphone traditionnel car elle offre divers services, autres
que les appels téléphoniques. Elle est aussi plus abordable au niveau du coût. L’un des
objectifs de la présente étude est de montrer la capacité réelle de cette nouvelle technologie.
Ceci étant, il est nécessaire de savoir que malgré tous les avantages qu’elle a, la VoIP
n’est pas à l’abri de quelques imperfections qui pourraient nuire à ses clients et ainsi à son
développement. Un autre but de cette étude est de limiter les effets de ces défaillances dans la
mesure du possible afin de garantir la satisfaction des utilisateurs. Diverses méthodes de
sécurisation et d’optimisation y sont présentées.
Mots clés : VoIP, Asterisk, X-lite, softphone, VLAN, latence