Securite d’Asterisk – Configuration du firewall
Les communications d'Asterisk passent par un grand nombre de ports. Afin de pouvoir accéder à Asterisk depuis l'extérieur et de lui permettre de communiquer en-dehors du serveur sur lequel il est installé, il est nécessaire d'ouvrir certains ports en fonction des services que vous voulez utiliser.
Les ports par défault sont les suivants (en UDP) , ils sont configurable dans les fichiers config:
| Protocole | SIP | IAX2 | IAX | RTP | MGCP |
| Port | 5060 | 4569 | 5036 | 10000 :20000 | 2727 |
Je ne saurais que trop vous conseiller d'adopter la technique dite de "whitelist" pour la gestion de vos ports. C'est à dire de tout interdire par défaut, et d'ouvrir uniquement les ports dont vous avez besoin.
Si vous souhaitez en savoir plus sur les commandes utilisés pour ouvrir les ports et gérer votre firewall ou vos IPTables suivez ce lien (en anglais) : http://www.voip-info.org/wiki/view/Asterisk+firewall+rules
Asterisk et SRTP
Le SRTP - Secure Real-time Transport Protocol - est la version sécurisée du protocole RTP. C'est un protocole supporté par Asterisk, mais pas dans sa version "basique". Il faut en effet pour cela installer l'une des "branches" d'Asterisk.
Seule une liste limité de téléphones IP est officiellement supportée par Asterisk, de plus il s'agit d'une version encore en cours de développement. Il est donc possible que le fonctionnement soit erratique.
Vous pourrez trouver des informations sur l'installation de cette version d'Asterisk sur le site : http://www.voip-info.org/wiki/view/Asterisk+SRTP
[Tutoriel] Installation d’Asterisk 1.4 sur une plateforme Linux
Introduction
Asterisk est un autocommutateur téléphonique privé open source pour systèmes UNIX édité par Digium. Dans cet article nous vous expliquerons comment installer Asterisk sur une plateforme Linux (ici sous Debian) dans sa version 1.4
I. Prerequis
Vous aurez besoin d'avoir préalablement installé ces packages sur votre système :
- Linux 2.4 kernel sources or kernel 2.6 header files. (for libpri)
- bison and bison-devel packages (This is used to build Asterisk)
- ncurses and ncurses-devel packages (Used to build astman, etc.)
- zlib and zlib-devel packages
- openssl and openssl-devel packages
II. Telechargement et installation d'Asterisk
Téléchargez Asterisk 1.4 à partir de cette page. (Faites attention à la version d'Asterisk que vous choisissez.) La commande pour ce faire ainsi que décompresser le fichier est la suivante (attention le lien pourrait ne plus fonctionner à l'avenir).
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.4.26.1.tar.gz
tar -xvzf asterisk-1.4.26.1.tar.gz
Une fois le fichier décompressé, rendez-vous dedans :
cd asterisk-1.4.26.1
Puis effectuez les commandes suivantes :
./configure
make
make install
make samples
Il est possible que le système vous demande de vous authentifier en tant qu'administrateur lors du make install ou du make samples. Dans ce cas, rajoutez le mot-clef sudo devant la commande, puis entrez votre mot de passe.
Vous pouvez désormais lancer asterisk et vous connecter à l'interface via les commandes
asterisk
asterisk -vvvvvvvvvvvr
Si vous voyez la ligne *CLI> apparaître c'est qu'asterisk est correctement installé.
[Tutoriel] Installation d’Asterisk Manager – AMI
Introduction
Astersik AMI (Asterisk Manager Interface) est une interface permettant à un programme client de se connecter au serveur Asterisk afin d'exécuter des commandes.
La documentation concernant AMI peut être trouvée ici :Documentation asterisk.
Prerequis
Un serveur Asterisk 1.4.
Modification des fichiers de configuration d'Asterisk
Il est recommandé d’avoir installé les exemples de fichier de configuration dans asterisk auparavant (en lançant la commande make samples). Ainsi vous aurez accès à la syntaxe des fichiers de configuration que nous allons maintenant modifier.
De même, il est recommandé de commencer par sauvegarder les fichiers de configuration d'Asterisk. Pour ce faire, exécutez la commande :
cp -r /etc/asterisk /etc/asterisk.backup
Nous nous plaçons désormais dans le dossier d’asterisk :
cd /etc/asterisk/
Nous allons tout d’abord modifier le fichier « manager.conf » afin d’activer et de paramètrer le manager d’asterisk (AMI).
Dans [general], passer les valeurs « enabled » et « webenabled » à yes.
/!\ NE PAS SPÉCIFIER LE PORT DANS CE FICHIER, NOUS LE FERONS PLUS TARD
Paramètrez les autres valeurs selon vos préférences et en accord avec votre topologie réseau. Nous recommandons d'activer la variable prefix et de la laisser à sa valeur par défaut (asterisk).
Nous allons ensuite (toujours dans le fichier « manager.conf ») créer un nouvel utilisateur qui permettra à nos applications clientes de se connecter à l’AMI.
[administrator]
secret = motdepasse
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config
Toujours afin d’activer le manager, il nous faut modifier le fichier « http.conf » :
Nous mettons « enabled » ainsi que « enabledstatic » à yes. C’est ici que nous spécifions le port que le manager utilise, ainsi que le prefix du manager.
La configuration est maintenant terminée, nous pouvons donc tester si tout ceci fonctionne en rentrant dans un navigateur l'URL :
http://server-address:8088/asterisk/manager?action=login&username=administrator&secret=motdepasse
Remplacez les valeurs de l'URL par celles propres à votre configuration. Vous devriez voir une fenêtre comme celle-ci :

Confirmation AMI
Si c'est le cas, c'est que votre installation d'AMI a réussi !
[Tutoriel] Installation de skype for asterisk
Introduction
Skype for asterisk est un programme édité par Digium permettant d'utiliser un compte Skype via un serveur Asterisk. Vous pouvez ainsi être appelé depuis votre compte skype sur un téléphone relié au serveur Asterisk, ou émettre des appels depuis votre téléphone Asterisk à travers votre compte Skype. De nombreuses fonctionnalités sont disponibles, et le but de cet article n'est pas de les décrire, mais de vous détailler les étapes d'installation de ce programme sur un serveur Asterisk.
Prerequis
- Un serveur Asterisk installé et fonctionnel
- Asterisk-GUI installé et fonctionnel (optionnel, mais ceci vous permettra de gérer plus aisément les comptes Skype)
I. Telechargement du paquet
Téléchargez ici l'archive de Skype for Asterisk correspondant à votre version.
N.B. : À l'heure où ces lignes sont écrites, l'open bêta est terminée depuis 24h. Nous n'aborderons donc pas la méthode pour obtenir et enregistrer la clef.
II. Compilation et Installation du module Skype for Asterisk
Rendez-vous dans le répertoire où vous avez téléchargé skype for asterisk puis tapez :
# make
# make install
Afin de faciliter la configuration, effectuez aussi la commande
# make samples
III. Configuration d'Asterisk
Il vous faut maintenant dire à Asterisk de charger les modules permettant la communication avec Skype.
Si dans votre fichier de configuration "modules.conf" (situé dans le répertoire /etc/asterisk/) contient la ligne 'autoload=yes' alors les modules seront automatiquement chargés au redémarrage d'Asterisk.
Sinon, ajoutez les lignes suivantes dans votre fichier "modules.conf"
load=res_skypeforasterisk.so
load=chan_skype.so
En plus de ces modules, un fichier de configuration nommé chan_skype.conf a été créé si vous avez effectué la commande "make samples". Vous trouverez dans ce fichier des explications sur la façon de configurer les interactions avec le réseau Skype.
IV. Test de l'installation
Une fois Asterisk redémarré, tapez la commande suivante afin de vérifier que l'installation s'est bien déroulée :
CLI*>skype show version
Si tout s'est bien déroulé, vous verrez la version du logiciel s'afficher.
Vous pouvez de même vous connecter à Asterisk GUI, et vous verrez un nouvel onglet nommé Skype dans le menu. Vous pouvez d'ici configurer les comptes Skype à ajouter et à rerouter sur Asterisk.