English

VoIP

Installer FreeSwitch sur Ubuntu à partir des paquets

L’équipe de FreeSwitch vient de publier les paquets pour Ubuntu 14.04 LTS et 16.04 LTS. Une excellente nouvelle pour les utilisateurs d’Ubuntu. L’installation est maintenant simplifiée. Pour Ubuntu 16.04 LTS, voici les commandes à taper pour installer la dernière version stable de FreeSwitch :

wget -O - https://files.freeswitch.org/repo/ubuntu-1604/freeswitch-unstable/freeswitch_archive_g0.pub | apt-key add -

echo "deb http://files.freeswitch.org/repo/ubuntu-1604/freeswitch-unstable/ xenial main" > /etc/apt/sources.list.d/freeswitch.list

# you may want to populate /etc/freeswitch at this point.
# if /etc/freeswitch does not exist, the standard vanilla configuration is deployed
apt-get update && apt-get install -y freeswitch-all

Pour Ubuntu 14.04 LTS :

Lire la suite >

Règles iptables afin de bloquer les scanners SIP

Les serveurs SIP (Asterisk, FreeSwitch … mais aussi les serveurs propriétaires) sont constamment scannés par des automates ou des humains avec pour seule idée, découvrir une faille à exploiter. En effet, les enjeux financiers sont importants. Je partage avec vous ce jour, un script iptables pour bloquer les scanners SIP (à adapter notamment les ports si vous utilisez des différents de 5060).

iptables -N SIPDOS

iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “sundayddr” –algo bm –to 65535 -m comment –comment “deny sundayddr” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “sipsak” –algo bm –to 65535 -m comment –comment “deny sipsak” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “sipvicious” –algo bm –to 65535 -m comment –comment “deny sipvicious” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “friendly-scanner” –algo bm –to 65535 -m comment –comment “deny friendly-scanner” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “iWar” –algo bm –to 65535 -m comment –comment “deny iWar” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “sip-scan” –algo bm –to 65535 -m comment –comment “deny sip-scan” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “User-Agent: sipcli” –algo bm –to 65535 -m comment –comment “deny sipcli” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “User-Agent: Nmap NSE” –algo bm –to 65535 -m comment –comment “deny Nmap NSE” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “User-Agent: VaxSIPUserAgent” –algo bm –to 65535 -m comment –comment “deny VaxSIPUserAgent” -j SIPDOS
iptables -A INPUT -i eth0 -p udp -m udp –dport 5060 -m string –string “From: sipp <sip:” –algo bm –to 65535 -m comment –comment “deny sipp” -j SIPDOS

iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “sundayddr” –algo bm –to 65535 -m comment –comment “deny sundayddr” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “sipsak” –algo bm –to 65535 -m comment –comment “deny sipsak” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “sipvicious” –algo bm –to 65535 -m comment –comment “deny sipvicious” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “friendly-scanner” –algo bm –to 65535 -m comment –comment “deny friendly-scanner” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “iWar” –algo bm –to 65535 -m comment –comment “deny iWar” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “sip-scan” –algo bm –to 65535 -m comment –comment “deny sip-scan” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “User-Agent: sipcli” –algo bm –to 65535 -m comment –comment “deny sipcli” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “User-Agent: Nmap NSE” –algo bm –to 65535 -m comment –comment “deny Nmap NSE” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “User-Agent: VaxSIPUserAgent” –algo bm –to 65535 -m comment –comment “deny VaxSIPUserAgent” -j SIPDOS
iptables -A INPUT -i eth0 -p tcp -m tcp –dport 5060 -m string –string “From: sipp <sip:” –algo bm –to 65535 -m comment –comment “deny sipp” -j SIPDOS

iptables -A SIPDOS -j LOG –log-prefix “firewall-sipdos: ” –log-level 6
iptables -A SIPDOS -j DROP

Si vous avez des idées pour l’améliorer, toutes les suggestions sont les bienvenues, l’idée étant de faciliter la sécurisation des serveurs SIP au plus grand nombre. Mises à jour :

Lire la suite >

Découvrez l’évènement Voip2day 2015 à Madrid

Je suis dans les starting blocks pour le Voip2day qui se déroule à Madrid ce 11 et 12 novembre 2015.

Cet évènement est organisé par la société espagnole AVANZADA 7 et rassemble les acteurs majeurs du marché des télécoms espagnols.

Comme chaque année, le programme est intéressant : exposants, ateliers commerciaux et surtout ateliers techniques. Au programme, du voicexml, du webrtc (vous allez m’y retrouver), de l’Asterisk dans docker, de l’Elastix et un atelier sur la sécurité SIP.

Lire la suite >

FreeSwitch : mettre à jour une ancienne installation

Vous devez mettre à jour une ancienne installation de FreeSwitch. La procédure est assez simple.

Soit vous souhaitez utiliser la même branche, dans ce cas cette commande est suffisante :

make current

ou vous souhaitez en profitez pour migrer vers la dernière version stable ou une version de dev, pour cela vous devez au préalable saisir cette commande :

git checkout v1.4.stable

Mais l’équipe de FreeSwitch ayant changé l’hébergement des repos, il y a de grandes chances pour que vous obteniez des erreurs comme celle-ci :

Lire la suite >

Xivo et Raspberry PI 2 : l’IPBX idéal pour les petites sociétés ?

Pouvoir utiliser une carte Raspberry PI pour faire un petit IPBX est un projet intéressant : compacité et faible consommation.

Plusieurs manières existent afin d’atteindre cet objectif.

Naturellement, installer un Asterisk ou un FreeSwitch tout frais sur une distribution adaptée à la carte, la Raspbian, est la première idée qui a germée dans mon esprit. L’exercice fut concluant, mais les performances assez limitées, entre 3 et 5 appels simultanés selon la configuration et le système. Un peu juste, et difficilement utilisable en production sans une interface graphique digne de ce nom (sauf pour des projets de niche).

Lire la suite >

Liste des IPBX libres

Le choix d’un IPBX est parfois compliqué : l’offre est importante et complexe. Sur le papier toutes les solutions se valent, proposent toutes les fonctionnalités utiles, sont sécurisées, facilement administrables … Quand on doit choisir une solution IPBX libre, le choix est plus difficile. La première difficulté est de lister les différentes solutions. Je vais lister pour vous les différentes solutions qui s’offrent à vous, la contrainte étant que la solution doit-être libre et à même de mettre en place un IPBX en entreprise. Pas d’autre contrainte ! Les voici classées par ordre alphabétique :

Lire la suite >

Créer votre serveur Asterisk : dans Linux Pratique été 2015

Le nouveau Linux Pratique vient de sortir avec un article intitulé “Créez votre serveur Asterisk”.

Lisez attentivement cet article, et ensuite je vous invite à découvrir pour ceux qui ne connaissent pas encore 2 solutions top basées sur Asterisk :

  • Xivo : une solution créée et éditée par une entreprise française, Avencall. XiVo est une solution complète permettant de déployer un IPBX d’entreprise avec toutes les fonctionnalités nécessaires. L’interface d’administration est claire et complète et le nouveau XiVo Client (bandeau utilisateur permettant de gérer la présence, l’annuaire, le tchat, l’envoi de fax et les renvois de poste) est pratique et agréable. XiVo est construit sur une plateforme Debian et est dédié à être installé sur un serveur (vous pouvez aussi acheter un serveur avec XiVo pré installé).
  • Astlinux : une solution alternative plutôt orientée pour les TPE mais qui connaissent déjà Asterisk. Astlinux fournit une plateforme sécurisée intégrant Firewall, VPN, routage, QoS ainsi qu’une interface web légère. Les utilisateurs disposent d’un accès web dédié permettant de gérer renvois, messagerie vocale, annuaire. Mais pour gérer les appels, vous devrez savoir programmer le dialplan Asterisk (c’est pas bien compliqué non plus). Astlinux fonctionne sur un OS Linux embarqué et très léger avec pour objectif d’être installé sur des mini serveur comme les soekris.

Dans ce numéro de Linux Pratique Juillet / Août 2015, vous avez aussi un article sur une plateforme de CMS basée sur Django, Mezzanine.

Lire la suite >

Installation FreeSwitch sur Ubuntu automatisée

L’installation de FreeSwitch à partir des sources n’est pas une tâche bien compliquée. Il suffit de suivre le guide expliquant le processus sur le site de FreeSwitch. Mais cette tâche est longue et si vous installez de manière régulière de serveurs FreeSwitch, cela devient vite répétitif et source d’erreur.

Je vais vous présenter une manière simple et automatique pour installer FreeSwitch sur votre serveur tout neuf Ubuntu 14.04 64 bits LTS. (Cela marche aussi pour Debian 7).

Lire la suite >

Howto : comment configurer monit pour surveiller FreeSwitch

Il est essentiel de surveiller les services que nous déployons au sein de nos entreprises ou pour nos clients.

Je vais vous présenter aujourd’hui comment superviser FreeSwitch avec Monit. Monit est un outil léger open source (licence AGPL) permettant de superviser et de gérer les systèmes Unix. Il est capable d’exécuter des actions en cas de détection de défaillance. Monit est disponible sous forme de paquet dans la plupart des distributions. L’installation sur un système basé sur Debian est très simple :

Lire la suite >

SIP : comment débugger ?

Introduction

Votre nouveau serveur VoIP est en place. Mais pour une raison que vous ignorez vos appels ne fonctionnent pas comme prévus. Pas de panique, je vais vous présenter quelques outils en ligne de commande qui vont vous aider à déterminer la source du problème. En effet, le protocole SIP n’est pas toujours aussi simple à l’usage que dans la théorie. Les informations fournies par les systèmes de téléphonie Open Source (Asterisk, Freeswitch, Yate …) ou propriétaires ne sont pas toujours d’une grande aide (manque de lisibilité, de souplesse …). Pourquoi des outils en ligne de commande : l’installation est simple et très rapide, fonctionnent sur toutes les distributions linux, et l’information souhaitée est facilement et rapidement accessible. Il est tout à fait possible d’utiliser ces outils afin de sauvegarder les informations collectées dans un fichier afin de réaliser des analyses plus fines avec des logiciels intégrant une interface graphique, comme le renommé Wireshark.

Lire la suite >