WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:divers:archives:toip

Projet ToIP

C'est un projet qui est à l'ordre du jour à MiNET depuis fort fort longtemps, qui a été étudié en projet industriel (PJ) en 200x et dont le rapport est en annexe et aussi là pour le moment :

  • Services/VoIP

L'étude a été reprise sous la forme d'un stage de 4 mois à partir d'octobre 2009. Stage rémunéré par la Maisel, sur proposition émanant du contre WEI 2009 (l'équipe MiNET en Toulousie), se déroulant dans les locaux de MiNET (maintenant Gala). Au départ, l'objectif était de mettre des téléphones fixes (hardphones) au bâtiment u6, il fallait donc trouver des postes adaptés au réseaux MiNET. Mais le coût desdits téléphones, et les difficultés liées à la taxation des appels sortant, ont eu raison de l'aboutissement du projet dans ce sens. On s'est donc limités en janvier 2011 à une téléphonie sur ordinateur (usage de softphones) vers le campus uniquement (plus aucune pression financière sur le projet)

Ont été mis en place deux serveurs :

  • domU maria (sur le dom0 billie, salle serveur du foyer)
  • 192.168.1.50
  • Asterisk v1.4, pour premiers tests
  • LDAP dédié aux comptes TOIP : en prod
  • DHCP dédié au hardphones, et au serveurs, dans le vlan 26. En prod mais useless puisqu'on n'a malheureusement qu'un seul hardphone, celui qui est peut être encore au local sous quelques mm de poussière
  • domU anna (sur le dom0 billie, salle serveur du foyer)
  • 192.168.1.51
  • Asterisk v1.6 en prod

Configuration des serveurs Asterisk :

Tout se trouve dans /etc/asterisk/

Les fichiers de conf principaux sont les suivants :

  • configurations sip téléphones et liens vers passerelles : /etc/asterisk/sip.conf

Les ; en début de ligne commentent celles-ci. Attention, la version 1.6 installée sur anna est configurée avec un annuaire LDAP : la ligne “realm=minet.net” indique au serveur qu'il doit aller directement lire les infos sur le LDAP.

Le reste est plutôt transparent : [general] Les crochets indiquent le contexte pour lequel s'appliquent les règles suivantes. Général est le contexte générique appliqué à tous les autres par défaut.

port=5060 C'est port UDP de base pour la signalisation SIP.

nat=yes C'est utile notamment pour la compatibilité avec le wifi !

localnet=192.168.26.0/255.255.255.0

Cela identifie le vlan 26 pour les hardphones

context=default Le contexte d'appel dans lequel est placée une extension (par exemple un numéro appelant)

disallow=all allow=alaw allow=ulaw

On empêche tous les codecs pour ne tolérer que les deux indiqués.

J'ai laissé de vieilles config commentées…

  • configurations “routage des appels”, serveur vocal (IVR), autres services (ex messagerie vocale, à mettre en place), … : /etc/asterisk/extensions.conf

Fonctionne aussi avec les contextes dans lesquels les appelants arrivent. Il y a des include pour inclure certains dans d'autres. Background joue le fichier sont placés dans le répertoire /var/lib/asterisk/sounds/en/

  exten=> _94XXX, 1, Answer() exten=> _94XXX, 2, Dial(SIP/${EXTEN:1}@patton)

Les extensions commençant par 94 (notez le _) sont envoyées vers le contexte patton (de sip.conf ie du LDAP) avec un numéro en moins (le 9, notons le :1) par exemple si 94546 est appelé, asterisk traduit 4546@patton

Il y a aussi des vieilles conf commentées, et des vieux numéros qui marchent encore…

  • Configuration des équivalences ldap-asterisk

/etc/asterisk/res_ldap.conf et extconfig.conf

Ceci est de la cuisine minetienne, cela n'a pas grand chose de standard. Ça marche plus ou moins… il faut voir avec le schéma LDAP.

Consulter les log :

  • les log généraux :
  tail -100 /var/log/asterisk/messages
  /var/log/asterisk/full
  • les log d'appels :
  tail -100 /var/log/asterisk/cdr-csv/Master.csv 
  • les log Fail2ban :
  sudo tail -100 /var/log/fail2ban.log
  sudo iptables -vnL

Maintenance :

Malgré la présence d'un fail2ban : mettre en quarantaine les ip qui saturent les logs d'appel, cf :

  vim /etc/fail2ban/filter.d/asterisk.conf 

Il est régulièrement nécessaire de relancer asterisk (nécessaire pour prise en compte des modifs sur extensions, mais aussi si ça plante):

  sudo /etc/init.d/asterisk (re)start

ou mieux

  sudo asterisk -vr

plus verbeux :

  sudo asterisk -vvvvvr
  restart now 

ou help restart et choix adéquat

et s'il y a juste des modif sur le sip.conf

  sip reload

et pour le LDAP

  realtime ldap status

et par exemple :

  sip show peer 333 load

Lien avec la DISI :

Le lien avec la DISI est important puisqu'il offre l'accès au pabx, et donc la possibilité d'appeler un numéro sur le campus, ou d'être appelé depuis l'extérieur.

IP de la passerelle patton : 157.159.22.150 accès en telnet : minet mi2010net

enable, show running configuration, …

1 seul SDA (numéro selection directe à l'arrivée, c'est à dire numéro appelable), le 6666 routé vers nous. Dans l'autre sens, MiNET ne peux sortir que vers l'intérieur du campus et vers les numéros d'urgence.

Améliorations possibles : mieux gérer les codecs, rajouter les numéros internes manquants,… Voir avec la DISI, un jour.

La DISI est en train de mettre en place un serveur asterisk à eux, il faudra voir pour les faire communiquer entre eux par la suite.

Modèle de téléphones :

Testés : doro/tiptel, ST2030, depaepe.. Sip fonctionnel, mais pas de gestion / prise en compte des vlan (ou limitée)

Le seul testé qui marche avec le dot1x : Aastra 6731i FW 2 5 0 82 (je l'ai acheté pour moi et pour continuer d'éventuels tests, il est au local MiNET)

Imakys (Stéphane Grasset) pouvait nous en avoir à 65€HT en 2009.

Il faut les configurer en vlan pc 26 et vlan lan 26 aussi, étrangement.

Rajouter simplement la ligne switchport voice vlan 26 sur les ports des switchs cisco, qui doivent être poe sinon il faut acheter l'adaptateur.

Ldap

Mis en place sur maria;

  apt get install slapd ldap-utils 

Pour ce qui est d'asterisk, il faut inclure le bon schéma, asterisk et inetorgpersonne version adh4. J'ai fait ça comme j'ai pu (attachements):

Accès via imagine ou directement avec le mdp “guill”

Admins avec mdp de type clear, peut être à changer.

Adhérents : ce sont des inetorgpersons ordonnées par uid

sipcompte : astcompte astsipuser by cn=chambre, astaccountname = tel

Nécessaire à la création et à la prise en compte par asterisk : host, name, secret

patton : astcompte + sipuser

Mettre des sons sur asterisk :

pour convertir en wav : mpg123 -w nouveauson.wav son.mp3

pour convertir en gsm :

  on Debian systems the libsox-fmt-gsm package is required in addition to sox
  sox nouveauson.wav -r 8000 -c 1 nouveau.gsm resample -ql

ou :

  ffmpeg -i server_vocal_cult_movie.WMA -ar 8000 -ac 1 step3.wav puis sox step3.wav step3.gsm

Asterisk 1.6

La principale chose importante à retenir :

  ./configure with-ldap

Il faut installer ncurses-dev cf rapport Aymeric

1.4 vieille version sans LDAP, maria est disponible pour tester la 1.8 et les version plus récentes… php

J'ai mis en place une interface de gestion web. Je pensais qu'elle serait provisoire, avant d'être intégrée à ADH5, mais ce n'est pas encore à l'ordre du jour.

Code sur wwwusers.minet.net/gaillard/maisel/ fonctions LDAP adaptées de ADH4.

L'appli est relativement claire, je l'ai adaptée au fur et à mesure (disparition du lien chambre-numéro avec L'apparition des softphones, disparition du LDAP ADH4)

Elle envoie un mail à l'adhérent avec son numéro, son mot de passe, et un lien vers les supers tuto d'utilisation sur le portail..

Le numéro affiché par défaut est le premier numéro disponible

Contacts :

  • La DISI en général
  • Raymond Riquet DISI (pabx)
  • c.delmissier @spie.com
  • Patrice Pietu 0145817303 @enst.fr
  • Laurent Bernard (itsp)
  • Stephane Grasset @imakys.com
  • Dir gé délégué d'Aastra : pierre-alexandre fuhrmann : pfuhrmann @aastra.com
  • contact @hl2d.com
  • guillaume.gaillard @telecom-sudparis.eu guigui @minet.net

Pièce jointes

wiki/divers/archives/toip.txt · Dernière modification: 2018/09/17 23:49 par shatoon