Vous êtes sur la page 1sur 7

Installez un serveur asterisk sécurisé en suivant une méthodologie

détaillée et organisée.

Chaque ligne de commande est expliquée ainsi que les


avantages et inconvenients de chaque méthode.
Installation
Méthode
Dans cette méthode, nous installerons Asterisk depuis le dépôt Linux
contenant les paquets d’installation.

Installation via Repositories

sudo apt install asterisk

Installation d’Asterisk via le repository Linux.

sudo asterisk -rv

Vérification que le programme s'est bien installé et


est fonctionnel.

La configuration par défaut rend votre serveur Asterisk vulnérable.

Pour le désactiver pendant la configuration de sécurisation :

sudo systemctl stop asterisk

Avantages Inconvénients
-Cette méthode permet d’installer -Dépendant de l'upload des mises à jour
facilement et rapidement un serveur sur les repositories de l'OS
Asterisk fonctionnel et préparé
-Le maintient à jour est simplifié

1
Installation
Dans cette méthode, nous installerons Asterisk via le code source
Méthode disponible sur le site officiel.

sudo apt install libtool pkg-config subversion autoconf git build-essential wget

Source Install
Installation des dépendances nécessaires : compilateurs asterisk
et wget.

wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-<version>-current.tar.gz -O asterisk-src.tar.gz

Récupération des sources d'Asterisk (Version LTS = 18,


Version non-LTS = 19).

tar zxvf asterisk-src.tar.gz

Décompresser les sources.

cd asterisk-*/

«asterisk-*» est une commande qui fonctionnera quel que soit


l'asterisk installé, tant que le dossier est le seul présent.

sudo ./contrib/scripts/get_mp3_source.sh

Permet d'inclure le support du format MP3, désactivé par défaut.

sudo ./contrib/scripts/install_prereq install

Installation des prérequis asterisk, lors de l'exécution de


l'installation des prérequis, préciser l'indicatif du pays (33 pour
France).

2
Installation
Méthode
./configure

Pour compiler avec les modifications précédemment effectués.


Source Install

sudo make menuselect

Contrôle des modules à compiler (console visuelle).

Sélectionner le modules additionnel Add-ons


puis format_mp3 et tout autre module désiré.

make && sudo make install

Compilation et installation du logiciel avec la configuration qui


vient d’être paramétrée

sudo asterisk -rv

Vérification qu'il s'est bien installé et est fonctionnel

La configuration par défaut rend votre serveur Asterisk vulnérable.

Pour le désactiver pendant la configuration de sécurisation :

sudo systemctl stop asterisk

3
Installation
Méthode

Source Install Avantages Inconvénients


-Contrôle total sur la version d'Asterisk -Plus complexe à installer.
-Choix d'installation des modules. -Installation de mises à jour non
-Mises à jour disponibles facilitées.
rapidement. -Dépendant de l'état du serveur.

Configuration
A présent nous allons modifier les dossiers de configuration du
serveur pour réduire au maximum la surface d’attaque.
Réalisez une sauvegarde de «Back-up» puis ouvrez simplement les
fichiers dans votre éditeur de texte.

Les champs en rouge sont à supprimer, les champs en bleu sont à


modifier en ajoutant vos propres informations.

language=fr :Permet l’affichage des logs en français


DOSSIER
context=<contexte> :Changer le nom par défaut permet de réduire le vecteur d'attaque
et l'ajout d'extensions pirates fonctionnelles se basant sur des valeurs
disallow=all :Couper les codecs non utilisés permet de réduire la bande passante
des appels non-désirés
SIP.CONF allow=g722 :Codec G722, supérieur au G711 standard, à l'utilisation de bande
passante plus faible et rétrocompatible G711 : Permet de meilleurs
appels en plus grande quantité
allow=ulaw :Codec G711 de communication (µ = standard américain), autorisé pour
une compatibilité standard maximale
allow=alaw :Codec G711 de communication (a = standard européen), autorisé pour
[general] une compatibilité standard maximale
allow=gsm :Codec GSM, à n'utiliser que dans le cadre d'une connexion 4G instable
où les codecs G722 et G711 n'offrent pas de résultats satisfaisants
udpbindaddr=<IP> :Expliciter le bind UDP permet de couper les vecteurs d'attaque SIP sur
des IP non monitorées
bindaddr=<IP> :Expliciter le bind IP permet de limiter les services Asterisk pour les
mêmes raisons
tcpenable=no :Ferme un bind inutilisé en SIP

tcpbindaddr :Ferme un bind inutilisé en SIP

srvlookup=no :Améliore les performances d'un établissement d'appel SIP en passant


outre une résolution DNS
pedantic=yes :Force un appel à être conforme aux spécifications SIP, offrant une
protection basique contre les paquets malformés

4
Configuration
DOSSIER useragent=<User Agent> :Permet d'obfusquer le modèle du PBX lors d'un scan de botnet, et
d'offrir une protection basique
alwaysauthreject=yes :Permet de réduire l'efficacité d'un scan de comptes SIP sur le PBX en
prétendant que chaque compte existe : les comptes invalides renvoient
une fausse demande de mot de passe impossible à compléter
SIP.CONF localnet=192.168.0.0/16 :Force l'interprétation des IP locales (RFC 1918) en addresses
non-routables à ne pas NATer
localnet=172.16.0.0/12 :Force l'interprétation des IP locales (RFC 1918) en addresses
non-routables à ne pas NATer
localnet=10.0.0.0/8 :Force l'interprétation des IP locales (RFC 1918) en addresses
[general] non-routables à ne pas NATer
localnet=127.0.0.0/8 :Empêche les adresses loopback d'être NATées hors du réseau local
externaddr=<IP> :Spécifie l'adresse du PBX dans le cadre d'une configuration NAT
indispensable pour communiquer avec l'extérieur, et obscurcit les IP
directes des terminaux en se plaçant comme proxy
auth=<login>#<mot de passe MD5>@<opérateur> :Stocke les identifiants au provider distant en tant que hash afin d'éviter
le vol de mot de passe par lecture de la configuration. A noter que les
hashs MD5 peuvent être facilement cassés, la protection est donc
minime
register = <Authentificateur fourni par l'opérateur>/<Extension dédiée aux appels extérieurs>

DOSSIER language=fr :Permet l'affichage des logs en français


username=<user> :Nom d'utilisateur
type=friend :Permet de définir cette extension comme pouvant recevoir et envoyer
des appels
secret=<pass> :Mot de passe de l'utilisateur : A noter qu'il n'y a pas de possibilité de le
SIP.CONF stocker en hash
callerid="<Tel>"<<Tel>> :Nom affiché lors de l'appel
nat=yes :Permet d'utiliser le routage NAS défini dans [general]
host=dynamic :Permet la connexion sous différentes IP. Si les softphones sont
physiques avec une IP fixe, il est conseiller de remplacer "dynamic" par
[<extension>] l'IP du téléphone
context=<contexte> :Contexte défini dans [general]
hassip=yes :Permet d'expliciter la seule prise en charge du SIP

DOSSIER static=yes :Non implémenté mais influe la commande suivante


writeprotect=yes :Coupe la commande "dialplan save" et permet d'empêcher une
modification malicieuse ou un ajout d'extension pirate sur le PBX lors
de son opération
EXTENSIONS
.CONF clearglobalvars=yes :Empêche des valeurs pirates d'être persistants à un redémarrage du
PBX
autofallthrough=yes :En cas d'extension mal configurée sans point de sortie, coupe l'appel
[general] au lieu de conserver la connexion potentiellement coûteuse

DOSSIER
CONSOLE=Console/dsp :Définit le moteur audio d'Asterisk, ici ALSA, interface directe vers le
kernel audio
IAXINFO :Protocole obsolète d'appairage PBX via le service Digium, ferme le
EXTENSIONS vecteur d'attaque
.CONF
TRUNK :Définit un trunk PABX sur lequel s'interfacer, obsolète car supplanté par
la VoIP et les IPBX
[Globals] TRUNKMSD :Définit un trunk PABX sur lequel s'interfacer, obsolète car supplanté par
la VoIP et les IPBX

5
DOSSIER

noload => chan_iax.so


noload => chan_iax2.so
MODULES
.CONF

La configuration est terminée, votre serveur Asterisk est équipé


d’une sécurisation de base

Pour le réactiver :

sudo systemctl start asterisk

Votre serveur Asterisk est maintenant actif,


vous êtes en mesure de passer des appels sur votre réseau interne.

Pour communiquer sur des réseaux externes,


vous aurez besoin d’au moins un SDA(numéro de téléphone)
et de connecter votre serveur Asterisk à votre Trunk SIP,
ce type de raccordement est propre à chaque infrastructure.

La configuration qui vient d’être paramétrée protège votre serveur


Asterisk.
Cependant cette protection est minimale et facilement contournable
par des hackers expérimentés.
.

Diskyver est uncontact@diskyver.com


Saas permettant de visualiser l’état
de votre infrastructure téléphonique, via une interface graphique.
Un système de notifications reposant sur des algorithmes
de machine learning vous alerte en cas d’activité inhabituelle
et potentiellement frauduleuse

contact@diskyver.com

Vous aimerez peut-être aussi