Contenus
- Pourquoi passer d’une ligne téléphonique « classique » à un serveur Asterisk (VOIP) ?
- Comment configurer le firewall de votre BBOX3 pour Asterisk
- Comment configurer le firewall de votre serveur Asterisk en 5 minutes
- Asterisk, une configuration simple pour bien débuter
- Comment connecter votre serveur Asterisk à OVH
- Comment configurer un adaptateur PAP2T pour une ligne SIP (OVH/Asterisk)?
- Comment configurer le modem Technicolor (Voo) pour téléphoner avec SIP (OVH/Asterisk)
- fail2ban: protégez votre serveur Asterisk !
- Connecter Asterisk à son GSM avec CSipSimple
Introduction
Bien que nous avons déjà configuré le firewall de notre box internet, nous allons ajouter une deuxième couche à ce filtrage en utilsant un firewall directment sur le serveur Asterisk.
Information sur notre serveur
Notre serveur Asterisk tourne sur un RaspberryPI avec la distribution Raspbian.
La version installée est celle des dépôts, comme annoncé dans l’introduction son installation se résume à « sudo apt-get install asterisk ».
Les fichiers de configuration se trouve dans le répertoire /etc/asterisk/
Représentation de notre réseau
Filtrer le traffic
Notre serveur Asterisk doit pouvoir communiquer aussi bien avec des extensions locales (à droite) qu’externes (tout à gauche).
Nous allons filtrer le traffic en entrée et en sortie.
iptables
Afin de filter le traffic, nous allons utiliser iptables qui est préinstaller dans Raspbian.
Port(s) SIP
Nous allons garder le port standard pour le protocole SIP (5060) et son port alternatif (5962).
Pour les ports rtp nécessaire à l’audio, la configuration se trouve dans le fichier /etc/asterisk/rtp.conf, dans notre case de 30000 à 40001.
Stratégie
Nous allons bloquer tout le traffic entrant et sortant de notre RaspBerryPI pour n’autoriser qu’au cas par cas.
Interdire les connexions entrantes
# sudo iptables -t filter -P INPUT DROP
# sudo iptables -t filter -P FORWARD DROP
Interdire les connexions sortantes
# sudo iptables -t filter -P OUTPUT DROP
Vider les tables actuelles
# sudo iptables -t filter -F
# sudo iptables -t filter -X
# sudo iptables -t nat -F
# sudo iptables -t nat -X
# sudo iptables -t mangle -F
# sudo iptables -t mangle -X
# sudo iptables -t raw -F
# sudo iptables -t raw -X
Création d’une table pour autoriser le traffic entrant
# sudo iptables -N IN_AST
# sudo iptables -I INPUT 1 -j IN_AST
Création d’un table pour autoriser le traffic sortant
# sudo iptables -N OUT_AST
# sudo iptables -I OUTPUT 1 -j OUT_AST
Ajout de règles pour autoriser le traffic entrant
Comme sur le firewall de la BBOX,
nous allons autoriser le traffic pour les ports 5060 (alternatif 5962) et rtp pour l’audio
# sudo iptables -A IN_AST -p udp -s sip3.ovh.be –dport 5060 -m state –state NEW,ESTABLISHED -j ACCEPT
# sudo iptables -A IN_AST -p udp -s sip3.ovh.be –dport 5962 -m state –state NEW,ESTABLISHED -j ACCEPT
# sudo iptables -A IN_AST -p udp -s sip3.ovh.be –dport 30000:40001 -m state –state NEW,ESTABLISHED -j ACCEPT
Nous allons également autoriser tout le traffic en UDP et en provenance du réseau local (192.168.1.0/24)
# sudo iptables -A IN_AST -o eth0 -s 192.168.1.0/24 -p udp -j ACCEPT
Ajout de règles pour autoriser le traffic sortant
A la différence du firewall de la BBOX, nous devons aussi ajouter des règles pout le traffic sortant.
Le traffic à destination du réseau local (192.168.1.0/24)
# sudo iptables -A OUT_AST -o eth0 -d 192.168.1.0/24 -p udp -j ACCEPT
Le traffic vers le verveur OVH
# sudo iptables -A OUT_AST -o eth0 -d 91.121.129.0/24 -p udp –dport 5060 -j ACCEPT
# sudo iptables -A OUT_AST -o eth0 -d 91.121.129.0/24 -p udp –dport 5962 -j ACCEPT
# sudo iptables -A OUT_AST -o eth0 -d 91.121.129.0/24 -p udp –dport 30000:40001 -j ACCEPT