Installation d’Asterisk sur un Raspberry Pi

Asterisk est un autocommutateur téléphonique privé (PABX) libre et propriétaire (publié sous double licence GPLv2 ou commerciale pour systèmes GNU/Linux. Il inclut de nombreuses fonctionnalités. Raspbx est une distribution Linux pour Raspberry Pi incluant Asterisk. FreePBX propose une interface WEB facilitant le paramétrage d’Asterisk.

Logo Asterisk

Télécharger RasPBX – Asterisk pour le Raspberry Pi

Pour télécharger la dernière image :

http://www.raspberry-asterisk.org/downloads/

J’ai téléchargé raspbx-10-10-2020.zip.

Transfert de l’image sur la carte micro SD

On télécharge une archive .zip, pour extraire l’image .img j’ai utilisé 7-Zip sous Windows (Extraire les fichiers…).

Pour transférer l’image sur la carte MicroSD j’ai utilisé balenaEtcher (sous Linux dans mon cas) :

https://www.balena.io/etcher/

On peut également utiliser Raspberry Pi Imager :

https://www.raspberrypi.org/software/

Au premier démarrage du Raspberry Pi

Sur mon réseau local, je me suis connecté au Raspberry Pi en SSH depuis un poste sous Windows avec le logiciel PuTTY (pour le moment le clavier du Raspberry Pi est en qwerty). Pour avoir l’adresse IP du Raspberry Pi, on peut scanner le réseau avec une application ou repérer l’adresse qui est affichée au démarrage du Raspberry Pi (on est en DHCP).

Login pour SSH

User : root

Password : raspberry

Pour mettre à jour le système :

raspbx-upgrade

Avant de continuer, nous devons régénérer les clés d’hôte SSH. La raison est que la distribution RasPBX que nous utilisons en contient déjà, mais celles-ci sont distribuées et donc ne sont pas aussi sécurisées.

Pour régénérer les clés d’hôte SSH, exécutez la commande suivante :

regen-hostkeys

Pour étendre la partition système à la capacité de la carte SD :

raspi-config

user :pi ==> 7 Advanced Options ==> A1 Expand Filesystem ==> [OK]

Pour que les changements soient pris en compte, on doit redémarrer le Raspberry Pi :

shutdown -r now

Configuration du fuseau horaire pour Asterisk :

configure-timezone

Configuration des paramètres régionaux

Pour voir les paramètres régionaux :

locale ou locale -a

Pour les modifier :

dpkg-reconfigure locales

J’ai sélectionné les paramètres en fr et désélectionné les choix précédemment sélectionnés.

fr_FR ISO-8859-1

fr_FR.UFT-8 UFT-8

fr_FR@euro ISO-8859-15

J’ai confirmé ensuite.

fr_FR.UFT-8 UFT-8

Pour que les modifications soient prises en compte, j’ai redémarré le Raspberry Pi :

shutdown -r now

Configuration en français du clavier (azerty)

Configurer les paramètres du clavier (non requis pour travailler avec SSH uniquement) :

dpkg-reconfigure keyboard-configuration

PC générique 105 touches (internat.) ==> Français – Français (azerty) ==> Disposition par défaut pour le clavier ==> Pas de touche «  compose »

Pour les choix (French azerty), je me suis aidé de l’article suivant :

http://www.soft-alternative.com/raspberry-pi-configurer-clavier-francais-raspbian.php

Pour que les modifications soient prises en compte, j’ai redémarré le Raspberry Pi :

shutdown -r now

Configuration de la carte réseau en IP fixe

Pour voir les paramètres des cartes réseau :

ifconfig

La carte eth0 est la carte filaire, wlan0 la carte WIFI. Mon Raspberry Pi étant connecté en filaire sur ma box, je vais mettre la carte eth0 en IP fixe (actuellement, je suis en DHCP). J’attribue une adresse IP de mon réseau local en dehors de la plage du DHCP de la box. J’ai choisi l’adresse 192.168.1.60. Le CIDR /24 correspond au masque de sous-réseau 255.255.255.0. Le routeur, c’est ma box 192.168.1.1, les DNS ma box et un serveur de Google 8.8.8.8.

On ouvre le fichier /etc/dhcpcd.conf avec nano.

nano /etc/dhcpcd.conf

Ma configuration est la suivante.

interface eth0
 static ip_address=192.168.1.60/24
 static routers=192.168.1.1
 static domain_name_servers=192.168.1.1 8.8.8.8

Pour enregistrer les modifications [CTRL]+[C] ==> [O] ==> [Entrée]

Ensuite, je redémarre le système :

shutdown -r now

Pour modifier le mot de passe root

passwd

Saisir le nouveau mot de passe puis le confirmer.


Plus d’informations sur les sites :

https://pimylifeup.com/raspberry-pi-asterisk/

http://www.raspberry-asterisk.org/documentation/


Logo FreePBX

Pour configurer Asterisk avec des softphones sur mon réseau local et réaliser des appels

Dans le tutoriel au format PDF qui suit, vous verrez la configuration d’Asterisk depuis une autre machine sur le réseau local grâce à votre navigateur et l’interface Web avec FreePBX. On voit également des exemples de configurations de softphones.

Configuration avec FreePBX


Configuration d’un trunk IAX2 avec FreePBX

Un exemple de configuration d’un trunk IAX2 (en utilisant FreePBX) qui permet d’interconnecter des Asterisk se trouvant sur des sites distants. On peut également utiliser ce protocole pour relier des Asterisk se trouvant sur le même site. C’est en cours de tests, si vous avez des informations à apporter, Contact ou vous pouvez laisser un commentaire.

Création d’un trunk IAX2 avec FreePBX


« Call Flow Control » – jour / nuit Contrôle

Tutoriel au format PDF avec la traduction du Guide de l’utilisateur du contrôle de flux d’appels « Call Flow Control ». J’ai également documenté l’installation d’un module avec FreePBX.

Guide de l’utilisateur du contrôle de flux d’appels « Call Flow Control » – jour / nuit Contrôle


Les informations utiles

Si l’on appelle le numéro *43 on accède au service d’écho qui vous permet de tester la latence.

La CLI (Command Line Interface ou console pour Asterisk) permet d’obtenir des informations depuis le Raspberry Pi ou PuTTY.

asterisk -rvvv

Quelques commandes :

pjsip list contacts
pjsip show endpoints
iax2 show peers

On peut quitter la CLI avec les commandes quit ou exit.

On peut trouver des commandes utiles sur le site suivant :

https://www.provya.net/?d=2015/06/24/08/18/10-