Cours linux
Serveur Asterisk sous ubuntu
UNION DES COMORES
Unité - Solidarité – Développement
------------------------
Cours informatique option : système
d’exploitions Unix
Dispense par Mr Ahmed Saïd Youssouf
Email : iferisoffice@gmail.com
Cours linux, mars 2021 1
Cours linux 2021
1. Qu’est-ce qu’Asterisk
Asterisk est un PABX applicatif open source permettant d'interconnecter en temps réel des
réseaux de voix sur IP et des réseaux de téléphonies classiques via des cartes d'interface
téléphonique.
1.1. Installation
Tout d'abord, veillez à avoir une distribution à jour :
1.1.1.l'installation de Asterisk
1.1.2. Les fichiers à Modification
La configuration d’asterisk s’effectue par les paramètres avec lesquels nous allons nous
familiariser. Dans le cadre de notre installation sous ubuntu et/ou kali-linux,
Ces fichiers seront dans l’arborescence que nous avons choisie lors de l’installation
(cd/etc/asterisk).
La configuration d'Asterisk s'articule sur les fichiers de configuration suivants :
 /etc/asterisk/sip.conf : Configuration globale d'Asterisk
 /etc/asterisk/users.conf : Configuration des utilisateurs
 /etc/asterisk/extensions.conf : Configuration du routage d’appel
 /etc/asterisk/voicemail.conf : Configuration des messageries
Déplacez-vous dans le dossier asterisk avec la commande :
Affichage des fichiers a configure
Cours linux, mars 2021 2
Cours linux 2021
1.1.3. La configuration des fichiers pour passer un appel
nous allons dans ce tuto utiliser le Protocol SIP. Donc pour créer le profil des abonnés
nous allons éditer le fichier /etc/asterisk/sip.conf
1.1.3.1. Paramétrage SIP
Notre configuration va consister à déclarer des softphones ,x-lite,
microsoftsip,3CX et ainsi permettre de passer des appels internes de l'un à
l'autre.
Pour cela nous allons créer la configuration de la partie SIP en
écrasant /etc/asterisk/sip.conf avec la configuration suivante :
[general]
Context =internal
Bindport =5060
Bindadress =0.0.0.0.0
nat =yes
Dans cette section [general] sont placés les paramétrages communs à tous les
éléments connectés au moteur SIP d'asterisk
1.1.4. 1.Le fichier sip.conf
Le fichier sip.conf est utilisé pour créer les comptes des utilisateurs. Ce fichier fonctionne
avec des contextes qui permettent de configure chaque type d’appel et contient également
des sections.
Dans ce fichier il existe trois(3) types de comptes (friend, user, peer)
Cours linux, mars 2021 3
Cours linux 2021
[general]
context =internal
bindport =5060
bindaddr=0.0.0.0
nat =yes
[imna] ; début du bloc de création de compte SIP.
Type=friend ; un utilisateur qui peut émettre et recevoir un appel
username=imna
Host=dynamic
calerid=android ; adresse IP par défaut du protocole SIP).
Secret=lesi0225 ; mot de passe en clair
Mailbox=41 ; numéro de la boîte vocale associée.
[imrane] ; début du bloc de création de compte SIP.
Type=friend
username =imrane ; un utilisateur
Host=Dynamic ; adresse IP par défaut du protocole SIP).
Secret=123 ; mot de passe en clair
Mailbox=42 ; numéro de la boîte vocale associée.
[imni] ; début du bloc de création de compte SIP.
Type=friend
username =imni ; un utilisateur
Host=Dynamic ; adresse IP par défaut du protocole SIP).
Secret=0000 ; mot de passe en clair
Mailbox=42
1.1.4.1.Le fichier Extension.conf
Le fichier extensions.conf est parmi le fichier essentiel d’Asterisk.
C’est le « noyau » de l’architecture de votre standard téléphonique, c’est-à-dire le plan
d’appel.
Ce fichier est composé en trois zones : la zone générale où se trouve les paramètres
généraux pour toute l’architecture, la zone globale où on insert des variables globales qui
Cours linux, mars 2021 4
Cours linux 2021
seront utilisées dans la troisième zone qui est constituée de plusieurs sous-zones appelées «
contextes».
Un contexte en lui-même est muni d’une ou plusieurs étapes, une étape est structurée du
numéro de l’appel nommé ici « extension », d’un nombre déterminant l’ordre de priorité
par rapport aux autres étapes et enfin d’une fonction d’application.
Un contexte est une zone de mémoire privée dans laquelle des actions de portée
limitée pourront être exécutées.
De ce fait, deux extensions ne pourront avoir le même numéro dans la même extension, ce
qui pourrait être tout à fait possible dans deux contextes différents.
1.1.4.2. Configuration d’extensions.conf
[internal ]
; Routage d’appel vers un utilisateur.
[internal]
; Routage d’appel vers un utilisateur.
exten => 10, 1, Dial(SIP/imna, 5)
exten => 11, 1, Dial(SIP/imrane, 6)
exten => 12, 1, Dial(SIP/imni,7)
exten => 13, 1, Dial(SIP/iroof,7)
; Appel vers un utilisateur et arrêt sans condition
Exten=>034,1, dial (sip/imrane ,5) ; passé un appel
Exten=>034, 2, wait(1) ; j’attends une seconde avant de sonner
Exten=>034,3,hangup ; je raccroche une fois que celui-ci est terminé
Cours linux, mars 2021 5
Cours linux 2021
; Routage d’appel vers un groupe d’utilisateurs et arrêt sans condition
exten => 034, 1, Dial(SIP/imrane, 6)
exten => 034, 2, Dial(SIP/imni,7)
exten => 034, 3, Dial(SIP/iroof,7)
Exten =>034, 4, Hangup
; Appel des utilisateurs en même temps et arrêt sans condition
exten => 60,1,Dial(SIP/imrane&SIP/iroof&SIP/imni)
exten => 60, 2, Hangup
; Redirectionner un appel vers un poste libre jusqu'à ce que l‘on trouve un poste libre :
exten => 777,1,Dial(SIP/imna,10)
exten => 777 ,2,Dial(SIP/imrane,10)
exten => 777 ,3,Dial(SIP/iroof,10)
exten => 777 ,4,goto(internal,777,1)
redémarrage du démo
#service asterisk restart
Utilisez les commandes suivantes pour vérifier les ports de communication utilisés par
Asterisk.
#servive asterisk status
1.1.4.3. Premier lancement d'Asterisk
Nous pouvons maintenant faire nos premiers tests. Pour cela, nous allons arrêter Asterisk
qui a sûrement été lancé automatiquement lors de l’installation (/etc/init.d/asterisk stop),
puis le relancer à la main en mode asterisk -rcvvv.
Cours linux, mars 2021 6
Cours linux 2021
Il est possible de redémarrer un simple fichier qu’on a modifié sans redémarrer tout le
service. Exemple si vous aviez juste modifié le fichier sip.conf vous pouvez redémarrer
juste le fichier sip.conf en faisant.
Une fois dans le fichier on peut lister les abonnés qu’on a créé en faisant :
3 sip peers [Monitored: 0 online, 0 offline Unmonitored: 0 online, 3 offline]
ubuntu*CLI> sip show users
Username Secret Accountcode Def.Context ACL Forcerport
imni 0000 internal No Yes
imna lesi0225 internal No Yes
imrane 123 internal No Yes
ubuntu*CLI>
ubuntu*CLI> sip show peers
Name/username Host Dyn Forcerport ACL Port Status
Description
imna/imna (Unspecified) D N 0 Unmonitored
imni/imni (Unspecified) D N 0 Unmonitored
imrane/imrane (Unspecified) D N 0 Unmonitored
1.1.4.4.Configuration de vmwer
Pour faire une modification sur VMware, il faut clic sue setting
Cours linux, mars 2021 7
Cours linux 2021
Pour le machine Windows
Clic sur propriété
Cours linux, mars 2021 8
Cours linux 2021
Connaitre l’adresse IP
a) Pour linux
b) pour Windows
Cours linux, mars 2021 9
Cours linux 2021
Faire de ping
Cours linux, mars 2021 10
Cours linux 2021
Configuration des clients softphone

Communication avec le serveur Astrisk

  • 1.
    Cours linux Serveur Asterisksous ubuntu UNION DES COMORES Unité - Solidarité – Développement ------------------------ Cours informatique option : système d’exploitions Unix Dispense par Mr Ahmed Saïd Youssouf Email : [email protected]
  • 2.
    Cours linux, mars2021 1 Cours linux 2021 1. Qu’est-ce qu’Asterisk Asterisk est un PABX applicatif open source permettant d'interconnecter en temps réel des réseaux de voix sur IP et des réseaux de téléphonies classiques via des cartes d'interface téléphonique. 1.1. Installation Tout d'abord, veillez à avoir une distribution à jour : 1.1.1.l'installation de Asterisk 1.1.2. Les fichiers à Modification La configuration d’asterisk s’effectue par les paramètres avec lesquels nous allons nous familiariser. Dans le cadre de notre installation sous ubuntu et/ou kali-linux, Ces fichiers seront dans l’arborescence que nous avons choisie lors de l’installation (cd/etc/asterisk). La configuration d'Asterisk s'articule sur les fichiers de configuration suivants :  /etc/asterisk/sip.conf : Configuration globale d'Asterisk  /etc/asterisk/users.conf : Configuration des utilisateurs  /etc/asterisk/extensions.conf : Configuration du routage d’appel  /etc/asterisk/voicemail.conf : Configuration des messageries Déplacez-vous dans le dossier asterisk avec la commande : Affichage des fichiers a configure
  • 3.
    Cours linux, mars2021 2 Cours linux 2021 1.1.3. La configuration des fichiers pour passer un appel nous allons dans ce tuto utiliser le Protocol SIP. Donc pour créer le profil des abonnés nous allons éditer le fichier /etc/asterisk/sip.conf 1.1.3.1. Paramétrage SIP Notre configuration va consister à déclarer des softphones ,x-lite, microsoftsip,3CX et ainsi permettre de passer des appels internes de l'un à l'autre. Pour cela nous allons créer la configuration de la partie SIP en écrasant /etc/asterisk/sip.conf avec la configuration suivante : [general] Context =internal Bindport =5060 Bindadress =0.0.0.0.0 nat =yes Dans cette section [general] sont placés les paramétrages communs à tous les éléments connectés au moteur SIP d'asterisk 1.1.4. 1.Le fichier sip.conf Le fichier sip.conf est utilisé pour créer les comptes des utilisateurs. Ce fichier fonctionne avec des contextes qui permettent de configure chaque type d’appel et contient également des sections. Dans ce fichier il existe trois(3) types de comptes (friend, user, peer)
  • 4.
    Cours linux, mars2021 3 Cours linux 2021 [general] context =internal bindport =5060 bindaddr=0.0.0.0 nat =yes [imna] ; début du bloc de création de compte SIP. Type=friend ; un utilisateur qui peut émettre et recevoir un appel username=imna Host=dynamic calerid=android ; adresse IP par défaut du protocole SIP). Secret=lesi0225 ; mot de passe en clair Mailbox=41 ; numéro de la boîte vocale associée. [imrane] ; début du bloc de création de compte SIP. Type=friend username =imrane ; un utilisateur Host=Dynamic ; adresse IP par défaut du protocole SIP). Secret=123 ; mot de passe en clair Mailbox=42 ; numéro de la boîte vocale associée. [imni] ; début du bloc de création de compte SIP. Type=friend username =imni ; un utilisateur Host=Dynamic ; adresse IP par défaut du protocole SIP). Secret=0000 ; mot de passe en clair Mailbox=42 1.1.4.1.Le fichier Extension.conf Le fichier extensions.conf est parmi le fichier essentiel d’Asterisk. C’est le « noyau » de l’architecture de votre standard téléphonique, c’est-à-dire le plan d’appel. Ce fichier est composé en trois zones : la zone générale où se trouve les paramètres généraux pour toute l’architecture, la zone globale où on insert des variables globales qui
  • 5.
    Cours linux, mars2021 4 Cours linux 2021 seront utilisées dans la troisième zone qui est constituée de plusieurs sous-zones appelées « contextes». Un contexte en lui-même est muni d’une ou plusieurs étapes, une étape est structurée du numéro de l’appel nommé ici « extension », d’un nombre déterminant l’ordre de priorité par rapport aux autres étapes et enfin d’une fonction d’application. Un contexte est une zone de mémoire privée dans laquelle des actions de portée limitée pourront être exécutées. De ce fait, deux extensions ne pourront avoir le même numéro dans la même extension, ce qui pourrait être tout à fait possible dans deux contextes différents. 1.1.4.2. Configuration d’extensions.conf [internal ] ; Routage d’appel vers un utilisateur. [internal] ; Routage d’appel vers un utilisateur. exten => 10, 1, Dial(SIP/imna, 5) exten => 11, 1, Dial(SIP/imrane, 6) exten => 12, 1, Dial(SIP/imni,7) exten => 13, 1, Dial(SIP/iroof,7) ; Appel vers un utilisateur et arrêt sans condition Exten=>034,1, dial (sip/imrane ,5) ; passé un appel Exten=>034, 2, wait(1) ; j’attends une seconde avant de sonner Exten=>034,3,hangup ; je raccroche une fois que celui-ci est terminé
  • 6.
    Cours linux, mars2021 5 Cours linux 2021 ; Routage d’appel vers un groupe d’utilisateurs et arrêt sans condition exten => 034, 1, Dial(SIP/imrane, 6) exten => 034, 2, Dial(SIP/imni,7) exten => 034, 3, Dial(SIP/iroof,7) Exten =>034, 4, Hangup ; Appel des utilisateurs en même temps et arrêt sans condition exten => 60,1,Dial(SIP/imrane&SIP/iroof&SIP/imni) exten => 60, 2, Hangup ; Redirectionner un appel vers un poste libre jusqu'à ce que l‘on trouve un poste libre : exten => 777,1,Dial(SIP/imna,10) exten => 777 ,2,Dial(SIP/imrane,10) exten => 777 ,3,Dial(SIP/iroof,10) exten => 777 ,4,goto(internal,777,1) redémarrage du démo #service asterisk restart Utilisez les commandes suivantes pour vérifier les ports de communication utilisés par Asterisk. #servive asterisk status 1.1.4.3. Premier lancement d'Asterisk Nous pouvons maintenant faire nos premiers tests. Pour cela, nous allons arrêter Asterisk qui a sûrement été lancé automatiquement lors de l’installation (/etc/init.d/asterisk stop), puis le relancer à la main en mode asterisk -rcvvv.
  • 7.
    Cours linux, mars2021 6 Cours linux 2021 Il est possible de redémarrer un simple fichier qu’on a modifié sans redémarrer tout le service. Exemple si vous aviez juste modifié le fichier sip.conf vous pouvez redémarrer juste le fichier sip.conf en faisant. Une fois dans le fichier on peut lister les abonnés qu’on a créé en faisant : 3 sip peers [Monitored: 0 online, 0 offline Unmonitored: 0 online, 3 offline] ubuntu*CLI> sip show users Username Secret Accountcode Def.Context ACL Forcerport imni 0000 internal No Yes imna lesi0225 internal No Yes imrane 123 internal No Yes ubuntu*CLI> ubuntu*CLI> sip show peers Name/username Host Dyn Forcerport ACL Port Status Description imna/imna (Unspecified) D N 0 Unmonitored imni/imni (Unspecified) D N 0 Unmonitored imrane/imrane (Unspecified) D N 0 Unmonitored 1.1.4.4.Configuration de vmwer Pour faire une modification sur VMware, il faut clic sue setting
  • 8.
    Cours linux, mars2021 7 Cours linux 2021 Pour le machine Windows Clic sur propriété
  • 9.
    Cours linux, mars2021 8 Cours linux 2021 Connaitre l’adresse IP a) Pour linux b) pour Windows
  • 10.
    Cours linux, mars2021 9 Cours linux 2021 Faire de ping
  • 11.
    Cours linux, mars2021 10 Cours linux 2021 Configuration des clients softphone