Outils pour utilisateurs

Outils du site


elastix

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

elastix [2014/05/21 18:57] (Version actuelle)
g.rnd@free.fr créée
Ligne 1: Ligne 1:
 +====== Téléphonie VOIP: Elastix ======
  
 +La **VOIP** (Voice Over Internet Protocol) est un formidable moyen de téléphoner à des tarifs imbattables en passant les communications par Internet.
 +
 +Les deux premières solutions ont déjà été présentées:​ \\
 +  * <​html><​font color="​red"​ ><​b>​Asterik</​b></​font></​html>,​ avec l'​interface graphique **FreePBX** installé sur **Ubuntu**. Pour retourner sur la partie spécifique Asterisk, cliquer sur [[asterisk#​asteriskfreepbx|Asterisk]].
 +
 +  * <​html><​font color="​red"​ ><​b>​TrixBox</​b></​font></​html>,​ distribution à part entière incorporant **Asterisk** et **FreePBX**. TrixBox offre l'​avantage que les deux programmes de téléphonie font directement partie, de façon transparente,​ du système installé. Pour retourner sur la partie spécifique Trixbox, cliquer sur [[asterisk#​trixbox|Trixbox]].
 +
 +La présente page présente la troisième solution:
 +  * <​html><​font color="​red"​ ><​b>​Elastix</​b></​font></​html>,​ distribution à part entière incorporant **Asterisk** et **FreePBX**,​ proche de **Trixbox**,​ fonctionne également sur **CentOS**. Pour aller sur la partie spécifique Elastix, cliquer sur [[elastix#​elastix|Elastix]].
 +
 +
 +
 +
 +
 +===== Astérisk/​FreePBX =====
 +
 +  * **Asterisk** permet de transformer un ordinateur en auto-commutateur téléphonique IP/VOIP, dit **IPBX** (Internet Private Branch eXchange). Il se présente sous la forme d'un logiciel libre à installer sur un serveur. ​
 +
 +On a tout intérêt à installer Asterisk sur un **serveur à part**, nul besoin d'un gros serveur, il faut simplement vérifier la compatibilité avec Trixbox (en fait, compatiblité Red Hat). La configuration d'un serveur Asterisk est dite relativement aisée. En réalité, la partie **FreePBX** qui est l'​interface graphique se révèle plutôt complexe à paramétrer pour des néophytes en téléphonie (Extensions,​ Trunks, Inbound Routes...). Bien suivre les configurations données sur http://​coursinforev.org/​dokuwiki/​doku.php/​asterisk#​configuration_freepbx.
 +
 +La solution Asterisk, comme les nombreuses autres solutions IPBX, s'​oppose à la solution **IP Centrex**, service téléphonique commercial offert par un fournisseur de services qui assure les fonctions de central téléphonique à distance.
 +
 +Le schéma de principe ci-dessous montre l'​arrivée de l'ADSL sur un switch relié à la fois au serveur Asterisk et aux postes téléphoniques ainsi qu'aux ordinateurs du réseau. En fonction du nombre de communications simultanées,​ on pourra être amené à utiliser une **seconde Box** avec un **routeur à double entrée** (type Cisco RV082) pour répartir le trafic, assurer la sécurité de connexion, le Load Balancing et le QoS (Quality of Service).
 +
 +{{schemaprincipe2_asterisk.png|}}
 +
 +
 +  * Pour la configuration du routeur **Cisco RV082**, se reporter au chapitre [[doublewan|Routeur double WAN]].
 +
 +===== FreePBX =====
 +
 +**FreePBX** est un outil de configuration graphique pour le logiciel de téléphonie **Asterisk**. C'est un composant intégré dans **Elastix**.
 +
 +{{freepbx_.png|}}
 +
 +
 +
 +
 +
 +===== Elastix =====
 +
 +  * **Elastix** est une distribution CentOs qui intégre à la fois **Asterisk** et **FreePBX**. On peut le piloter à travers un interface Web en entrant dans un navigateur l'​adresse:​
 +<​code>​https://​IP_Serveur_Elastix</​code>​
 +
 +{{elastix-1.png|}}
 +
 +
 +  * En ligne de commande, CentOS présente des particularités par rapport à celles des distributions Debian. Quelques commandes utiles sont données en fin de ce document (Cliquer ici [[elastix#​particularites_centos]]).
 +
 +==== Installation ====
 +
 +  * Téléchargement d'une image Elastix sur http://​www.elastix.org/​content/​view/​137/​60/​lang,​en/​. On peut prendre la version stable 1.6 ou la version 2.0 RC2. 
 +  * Graver l'​image sur un CD-ROM
 +  * Préparer un espace libre de 8 Go sur le disque dur du serveur
 +  * Introduire le CD-ROM dans l'​ordinateur prévu, démarrer et lancer l'​installation
 +  * Pour les partitions, choisir Partitionnement personnalisé et éditer les partitions pour créer les deux partitions:
 +    * 100 Mo, ext3 pour /boot
 +    * reste, ext3 pour la racine
 +  * Fournir au moment opportun le mot de passe **root** d'​Elastix
 +  * Choisir normalement le mode DHCP pour la configuration réseau
 +
 +<​note>​ En cas de problème-réseau avec un C470, passer en IP fixe pour voir s'il y a amélioration.</​note>​
 +
 +Wiki d'​installation sur http://​www.elastix.org/​component/​option,​com_openwiki/​Itemid,​27/​id,​french:​installation/​lang,​en/​
 +
 +Documentation utilisateur sur 
 +http://​sourceforge.net/​projects/​elastix/​files/​Tutorials_Docs_Manuals/​User%20Manual%20French/​Elastix_User_Manual_French_0.9.2-1.pdf/​download
 +
 +
 +==== Démarrage serveur ====
 +
 +Au premier démarrage, entrer le **login** et le mot de passe **root**.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== Interface Web ====
 +
 +=== Accès local ===
 +
 +  * Pour toute l'​administration de la téléphonie,​ utiliser l'​interface Web. Pour cela, entrer dans Firefox
 +<​code>​https://​IP_serveur_Elastix </​code>​
 +Entrer les paramétres par défaut:
 +
 +- Username: **admin** ​
 +
 +- Password: **palosanto** (par défaut) ou **<​mot_de_passe>​**
 +
 +=== Accès distant ===
 +
 +Pour un accès distant, utiliser un tunnel SSH sur le port **443**:
 +  * dans un terminal, entrer
 +<​file>​ssh IP_publique -L 10443:​IP_locale_Elastix:​443</​file>​
 +  * Sur Firefox, entrer l'URL
 +<​code>​https://​localhost:​10443</​code>​
 +
 +=== Utilisation ===
 +
 +On voit tout de suite qu'​Elastix dispose de nombreuses fonctions auxquelles on accède par les différents onglets et sous-onglets.
 +
 +  * Changer la langue par **System/​Preferences/​Language**
 +
 +  * Changer le mot de passe par l'​interface **System/​User management**
 +
 +  * Paramétres réseau. Aller sur **System/​Network**,​ cliquer sur **Edit Network Parameters**.
 +
 +{{:​elastix-2.png?​|}}
 +
 +=== FreePBX ===
 +
 +  * Pour utiliser les fonctions de FreePBX dans Elastix, cliquer sur **PBX/PBX configuration**
 +    * journal des appels: onglet **Report**
 +    * équivalent de la fonction FAP de Trixbox: onglets **Operator Panel** ou **Flash Operator Panel**
 +
 +{{:​elastix_control-panel.png?​|}}
 +
 +On voit en jaune les extensions qui ne sont pas enregistrées.
 +  * Pour avoir le résumé de l'​état de FreePBX, cliquer sur **PBX/PBX status**
 +
 +{{:​elastix_system-dashboard.png?​|}}
 +
 +  * Pour le journal des appels, cliquer sur l'​onglet **Reports/ CDR Report** ou **Reports/​Summary by extension**.
 +
 +
 +
 +
 +==== Documentation ====
 +
 +http://​freefr.dl.sourceforge.net/​project/​elastix/​Tutorials_Docs_Manuals/​Elastix%20Without%20Tears/​elastix_without_tears_june2010.pdf
 +
 +http://​people.via.ecp.fr/​~alexis/​asterisk/​
 +
 +http://​www.doc-etudiant.fr/​docs/​e668fa2a9b7a7ada4a79e149e76e2dfb-elastix-configuration.pdf
 +
 +
 +
 +
 +==== Fonctions FreePBX, Commandes CLI ====
 +
 +  * Pour le paramétrage des **Trunks**, des **Extensions**,​ des **Incoming routes**, des **Outbound routes**, se reporter au document précédent [[asterisk#​configuration_freepbx|Configuration FreePBX]].
 +
 +  * Pour les **commandes CLI**, se reporter sur [[asterisk#​commandes_cli|Commandes CLI]].
 +
 +
 +==== Sauvegarde ====
 +
 +Elastix comprend une fonction sauvegarde à laquelle on peut accéder par **System/​Backup-Restore**. Celle-ci peut être automatique avec fréquence déterminée (jour, semaine, mois)
 +
 +===== Particularités CentOS =====
 +
 +Quelques différences par rapport aux distributions Debian:
 +
 +  * pour les installations,​ remplacer la commande **apt-get** par **yum** (Yellow Update Modified). Pour les commandes, voir http://​www.redhat.com/​docs/​en-US/​Red_Hat_Enterprise_Linux/​5/​html/​Deployment_Guide/​s1-yum-useful-commands.html ,
 +
 +  * les commandes ne marchent pas toujours en entrant seulement leur nom. Il faut alors chercher leur **chemin** et ensuite l'​utiliser. Exemple pour lancer Asterisk, lancer par la commande suivante:
 +<​code>​guy@trixbox1:​~$ ​
 +asterisk -rv
 +-bash: asterisk: command not found
 +guy@trixbox1:​~$ ​
 +whereis asterisk
 +asterisk: /​usr/​src/​tbm-pbxconfig-5.5.1/​asterisk.conf /​usr/​src/​tbm-pbxconfig/​asterisk.conf /​bin/​asterisk.reload /​usr/​sbin/​asterisk /​etc/​asterisk /​usr/​lib/​asterisk /​usr/​share/​man/​man8/​asterisk.8.gz
 +guy@trixbox1:​~$ ​
 +/​usr/​sbin/​asterisk -rv
 +Asterisk 1.6.0.9-samy-r27,​ Copyright (C) 1999 - 2008 Digium, Inc. and others.
 +Created by Mark Spencer <​markster@digium.com>​
 +Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty'​ for details.
 +</​code> ​
 +<​note>​Pour y remédier, passer en **root** avec la commande **su -** et entrer les 2 commandes:
 +<​file>​export PATH=$PATH:/​sbin
 +export PATH=$PATH:/​usr/​sbin</​file>​
 +Elles vont s'​incrémenter dans la variable env que l'on peut voir avec la commande **env**.
 +</​note>​
 +<note important>​Attention,​ la variable **$PATH** __se conserve d'une session à une autre__, uniquement si on est passé en root avec **su -**</​note>​
 +
 +  * la configuration réseau est donnée par le fichier **/​etc/​sysconfig/​network-scripts/​ifcfg-eth0**. Exemple:
 +<​code>​guy@trixbox1:​~$ ​
 +cat /​etc/​sysconfig/​network-scripts/​ifcfg-eth0
 +# nVidia Corporation MCP61 Ethernet
 +DEVICE=eth0
 +BOOTPROTO=dhcp
 +DHCPCLASS=
 +HWADDR=00:​1D:​72:​B1:​12:​4A
 +ONBOOT=yes </​code>​
 +Mais après avoir changé la variable $PATH, on peut utiliser les commandes classiques **ifconfig, dhclient**.
 +
 +
 +==== Configuration Réseau ====
 +
 +Editer les fichiers de configuration situés dans le répertoire **/​etc/​sysconfig/​network-scripts/​**.
 +
 +On peut configurer le réseau en éditant les fichiers de /​etc/​sysconfig/​network-scripts/​ directory. Changer d'​abord le répertoire en /​etc/​sysconfig/​network-scripts/:​
 +<​file>​cd /​etc/​sysconfig/​network-scripts/</​file>​
 +Les fichiers suivants sont à éditer ou à créer :
 +    * /​etc/​sysconfig/​network-scripts/​ifcfg-eth0 : configuration d'eth0
 +    * /​etc/​sysconfig/​network-scripts/​ifcfg-eth1 : configuration d'eth1
 +
 +  * Pour éditer le premier fichier, entrer la commande :
 +<​file>​nano ifcfg-eth0</​file>​
 +Ajouter/​modifier ainsi :
 +
 +<​code>​
 +Intel Corporation 82573E Gigabit Ethernet Controller (Copper)
 +DEVICE=eth0
 +BOOTPROTO=static
 +DHCPCLASS=
 +HWADDR=00:​30:​48:​56:​A6:​2E
 +IPADDR=10.10.29.66
 +NETMASK=255.255.255.192
 +ONBOOT=yes
 +</​code>​
 +
 +
 +
 +
 +Save and close the file.
 +
 +Define default gateway (router IP) and hostname in **/​etc/​sysconfig/​network file**:
 +<​file>​nano /​etc/​sysconfig/​network</​file>​
 +Append/​modify configuration as follows:
 +<​code>​
 +NETWORKING=yes
 +HOSTNAME=www1.nixcraft.in
 +GATEWAY=10.10.29.65
 +</​code>​
 +
 +Save and close the file. Restart networking:
 +<​file>​
 +/​etc/​init.d/​network restart
 +</​file>​
 +
 +Make sure you have correct DNS server defined in /​etc/​resolv.conf file:
 +<​file>​
 +nano /​etc/​resolv.conf
 +Setup DNS Server as follows:
 +nameserver 10.0.80.11
 +nameserver 10.0.80.12
 +nameserver 202.67.222.222
 +</​file>​
 +
 +Save and close the file. Now you can ping the gateway/​other hosts:
 +<​file>​ping 10.0.80.12</​file>​
 +<​code>​
 +PING 10.0.80.12 (10.0.80.12) 56(84) bytes of data.
 +64 bytes from 10.0.80.12: icmp_seq=1 ttl=251 time=0.972 ms
 +64 bytes from 10.0.80.12: icmp_seq=2 ttl=251 time=1.11 ms
 +</​code>​
 +
 +You can also check for Internet connectivity with nslookup or host command:
 +<​file>​nslookup cyberciti.biz</​file>​
 +<​code>​
 +Server: ​        ​10.0.80.11
 +Address: ​       10.0.80.11#​53
 +
 +Non-authoritative answer:
 +Name:   ​cyberciti.biz
 +Address: 75.126.43.232
 +</​code>​
 +
 +You can also use host command:
 +<​file>​host nixcraft.in</​file>​
 +<​code>​
 +nixcraft.in has address 75.126.43.232
 +nixcraft.in mail is handled by 10 mail.nixcraft.in
 +</​code>​
 +
 +  * On peut trouver la documentation sur http://​www.redhat.com/​docs/,​ http://​www.cyberciti.biz/​faq/​rhel-centos-fedora-linux-yum-command-howto/​
elastix.txt · Dernière modification: 2014/05/21 18:57 par g.rnd@free.fr