Système de téléphonie IP avec asterisk sous linux

Dans un monde de plus en plus connecté, la téléphonie IP est devenue une solution incontournable pour les entreprises souhaitant optimiser leurs communications. Asterisk, en tant que logiciel libre et flexible, se distingue comme l’une des meilleures options pour déployer un serveur de téléphonie IP. Que vous soyez un entrepreneur cherchant à réduire vos coûts de communication ou un administrateur système désireux d’explorer les possibilités offertes par la téléphonie moderne, Asterisk vous permet de construire un système adapté à vos besoins.

Dans cet article, nous allons explorer les étapes essentielles pour configurer votre propre serveur de téléphonie IP avec Asterisk. Nous aborderons les aspects techniques tout en gardant à l’esprit l’accessibilité pour les débutants. Que vous souhaitiez gérer des appels internes, mettre en place une messagerie vocale, ou intégrer des fonctionnalités avancées comme la visioconférence, Asterisk offre un cadre puissant et personnalisable. Préparez-vous à plonger dans le monde de la téléphonie IP et à transformer la façon dont vous communiquez !

Configuration de l’adresse IP du serveur

Nous allons procéder à la configuration statique de l’adresse de notre serveur. Cette opération peut être réalisée soit à l’aide d’une interface graphique, soit via le terminal. L’adresse que nous avons choisie est 192.168.100.1, accompagnée du masque de sous-réseau 255.255.255.0.

Pour ce faire, Accédez aux paramètres > Réseau > Au niveau de connexion filaire, cliquez sur l’icône en forme de roue dentée > Choisissez l’onglet IPV4 > Cochez l’option Manuel > Saisissez l’adresse IP ainsi que le masque de sous-réseau > Appliquer.

Remarque: Les adresses IP attribuées à nos machines clientes seront 192.168.100.2 et 192.168.100.3, avec un masque de sous-réseau de 255.255.255.0 pour chacune d’elles.

Installation du paquet asterisk

Asterisk est un logiciel de téléphonie open source qui permet de créer des systèmes de communication variés, comme des systèmes de téléphonie VoIP (Voice over IP), des serveurs de messagerie vocale, des conférences téléphoniques, et plus encore. Il est souvent utilisé pour mettre en place des systèmes de téléphonie d’entreprise, des centres d’appels, et des applications de communication personnalisées.

Pour installer le paquet asterisk, Connectez vous à internet > Lancer le terminal > Saisissez la commande sudo apt install asterisk

Remarque: En cas d’erreur, commencez par effectuer une mise à jour de votre système en utilisant les commandes suivantes : sudo apt update et sudo apt upgrade. Ensuite, relancez l’installation.

Configuration des communications SIP

Nous allons définir les utilisateurs SIP, qui sont les numéros utilisés pour passer des appels, ainsi que les paramètres réseau nécessaires pour garantir une communication efficace.

Dans notre configuration, nous allons créer deux utilisateurs SIP : 1001 et 1002. Pour cela, il est nécessaire de modifier le fichier sip.conf.

Avant de procéder à la configuration, nous allons déplacer le contenu du fichier sip.conf vers un nouveau fichier nommé sip.old.conf. Pour ce faire, ouvrez le terminal et saisissez la commande sudo mv /etc/asterisk/sip.conf /etc/asterisk/sip.old.conf. Ainsi, le fichier sip.conf sera vide, prêt à recevoir nos nouvelles configurations.

Ensuite Saisissez la commande sudo nano /etc/asterisk/sip.conf > Saisissez les commandes suivantes comme indiqué dans la figure suivante > Appuyer sur Ctrl + O pour enregistrer les modifications.

[general] : Le fichier sip.conf est définit en plusieurs sections. La section general définit les paramètres globaux qui s’appliquent à l’ensemble du serveur.
context=internal : Définit le contexte par défaut pour les appels internes. Les contextes sont utilisés pour gérer les routes d’appels et les permissions.
bindport=5060 : Spécifie le port sur lequel le serveur écoutera les requêtes SIP. Le port 5060 est standard pour le protocole SIP (Session Initiation Protocol).
bindaddr=0.0.0.0 : Indique que le serveur écoutera sur toutes les adresses IP disponibles de la machine.
nat=yes : Indique que le serveur doit gérer le NAT (Network Address Translation). Cela est utile si le serveur est derrière un routeur, permettant de gérer les connexions des clients externes.

[1001] : Utilisateur sip 1001.
type=friend : Cet utilisateur peut à la fois passer et recevoir des appels.
callerid=Abba : Définit l’identité de l’appelant pour cet utilisateur. Lorsqu’il appelle, le nom « Abba » sera affiché.
host=dynamic : L’adresse IP de cet utilisateur peut changer. Il se connecte dynamiquement au serveur.
context=internal : Indique que cet utilisateur est également associé au contexte interne, ce qui signifie qu’il a accès aux appels internes.
secret=poste1 : C’est le mot de passe pour cet utilisateur. Il est utilisé pour l’authentification lors de la connexion.

Configuration de la gestion des appels

Nous allons maintenant configurer le fichier extensions.conf, qui détermine la manière dont les appels seront traités sur le serveur. Avant cela, nous allons déplacer son contenu vers un nouveau fichier nommé extensions.old.conf. Ouvrez le terminal > Saisissez la commande sudo mv /etc/asterisk/extensions.conf /etc/asterisk/extensions.old.conf. Cela permettra de garder une copie de l’ancien fichier avant d’appliquer nos nouvelles configurations.

Une fois cela effectué, saisissez la commande sudo nano /etc/asterisk/extensions.conf > Saisissez les commandes suivantes comme indiquées dans la figure suivante > Appuyer sur Ctrl + O pour enregistrer les modifications.

[internal] : définit comment le serveur asterisk gère les appels pour les extensions (numéros) internes.
exten => 1001, 1, Answer () : Lorsque l’extension 1001 est appelée, le serveur asterisk répond à l’appel.
exten => 1001, 2, Dial (SIP/1001, 30) : Le serveur asterisk tente ensuite de composer le numéro SIP correspondant à l’extension 1001. Il essaie de connecter l’appel pendant 30 secondes.
exten => 1001, 3, Hangup() : Si l’appel n’est pas connecté (par exemple, si l’utilisateur ne répond pas ou si l’appel échoue), Asterisk raccroche l’appel.

NB:Les explications sont valables pour l’extension 1002.

A la fin des configurations, saisissez la commande sudo systemctl restart asterisk pour redémarrer le serveur afin qu’il applique toutes les modifications.

Configuration des clients sip

Nous allons maintenant configurer le logiciel SIP sur chacun de nos deux postes pour permettre de passer des appels. Dans notre cas, nous allons installer et configurer Zoiper 5. L’installation est simple : il suffit de lancer le fichier d’installation et de cliquer sur « Suivant » jusqu’à la fin du processus.

S’agissant de la configuration, Ouvrez Zoiper puis cliquez sur Continue as a free user.

Saisissez les identifiants de l’utilisateur, qui correspondent au numéro que nous avons créé sur le serveur asterisk, puis cliquez sur Login.

Username: 1001@192.168.100.1
Password: poste1

Pour le second poste, Username: 1002@192.168.100.1 et Password: poste2

Saisissez l’adresse IP du serveur asterisk, puis poursuivez la configuration. Assurez-vous de suivre les instructions à l’écran pour compléter le processus.

Cliquez sur Skip pour ignorer les options d’authentification et de proxy.

Lorsque la connexion est correctement établie entre le serveur asterisk et le client SIP, l’option SIP UDP apparaîtra en couleur verte, comme illustré dans la figure ci-dessous.

Poursuivez la configuration en cliquant sur Next, puis sur Skip. Vous devriez finalement accéder au tableau de bord, comme illustré dans la figure ci-dessous.

Test de fonctionnement

Lancez un appel depuis le poste au numéro 1001 vers le poste au numéro 1002. Vous pourrez utiliser le clavier numérique, qui se trouve en haut à droite de l’interface.

Dans ce tutoriel, nous avons exploré les étapes nécessaires pour configurer un système de téléphonie IP avec Asterisk sous Linux. Grâce à notre démarche, nous avons réussi à installer Asterisk et à mettre en place les fondations d’une solution de communication VoIP efficace.

Nous avons particulièrement mis l’accent sur la configuration de deux fichiers essentiels : sip.conf, qui définit les paramètres des utilisateurs et des périphériques SIP, et extensions.conf, où nous avons établi les règles de routage des appels et les scénarios de communication.

Ces configurations permettent de personnaliser le comportement du système et d’assurer une gestion fluide des appels. En maîtrisant ces deux fichiers, vous serez en mesure d’adapter Asterisk aux besoins spécifiques de votre environnement de communication.

Nous espérons que ce tutoriel vous a été utile et que vous vous sentez maintenant prêt à approfondir vos connaissances en téléphonie IP avec Asterisk ! N’hésitez pas à explorer davantage les fonctionnalités avancées et à expérimenter pour tirer le meilleur parti de votre système.

Comments

No comments yet. Why don’t you start the discussion?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *