Der untenstehende Artikel ist etwas älter (mindestens von 2016), ich habe ihn aber aus historischen Gründen noch stehen lassen. Einige der Teile unten gehören vielleicht auch besser auf eigene Wiki-Seiten kopiert (Anschluss von Snom-Telefonen etc.). Die letzten ISDN-Anschlüsse sind wohl im Jahr 2022 abgeschaltet. Die im Artikel benutzte Askozia-Anlage gibt es nicht mehr (die ganze Firma ist inzwischen verkauft und die Software eingestellt). Also gilt, was ja eigentlich für echte Linuxer immer schon galt: Man nimmt den blanken Motor und baut sich sein System selber. Also werde ich jetzt mehr auf die grundlegende Konfiguration von Asterisk eingehen.

Einleitung aus 2016 #

Im Zeitalter von Voice over IP (VoIP) ist es eine interessante Sache, seine Telefonie auch über sein Linux-System abzuwickeln. Wir benötigten für unser Unternehmen eine neue Telefonanlage und natürlich wollte ich da etwas haben, das offen ist und alles kann. Deshalb fiel die Wahl schnell auf Asterisk als Telefonieserver. Gleichzeitig wollte ich allerdings nicht zu viel selbst konfigurieren und einen Support haben, der nicht nur mir als alter Linuxer, sondern auch normalen Telefonierern im Unternehmen hilft. Eine dritte Anforderung war, das wir zur Zeit noch ISDN-Leitungen von Vodafone gelegt haben. Ich brauchte also einen Hardware-Anschluss, um diese ansteuern zu können.

Grundsätzlich kann man, wenn man eine Telefonanlage haben möchte, diese irgendwo in der Cloud installieren, einen Provider wählen, der dies bereits fertig getan hat, eine Anlage im heimischen Netz auf einem freien Rechner oder einer virtuellen Maschine selbst installieren oder eine spezielle Hardware benutzen.

Askozia #

Auf Grund meines ISDN-Problems habe ich mich entschieden, eine Hardware der Firma Askozia zu erwerben. Diese enthält vier ISDN-Ports (dargestellt durch Openvox B400P Karten) und hat eine Bauform, um in einem Rack installiert zu werden. Außerdem enthält sie eine angepasste und vorkonfigurierte Version eines Asterisk-Servers. Das ist sozusagen eine kommerzielle Distribution. Inwiefern diese jetzt vom original Asterisk abweicht, sie besser oder schlechter ist, werden wir sehen. Da Askozia einem einen root-Zugang zu dem Server gewährt, sollte es möglich sein, einiges zu ändern und im Zweifelsfall das ganze System auszutauschen. Wir werden sehen...

Tipps & Tricks #

Hier sammle ich einige Dinge, die mir bei der Einrichtung des Askozia-Servers aufgefallen sind.

eingehende Anschlüsse #

Für jeden eingehenden physikalischen Anschluss, d.h. für analoge oder ISDN-Leitungen, die per Hardware in die Anlage hineinführen, muss zuerst ein Telefonanschluss konfiguriert werden.

Im nächsten Schritt wird dann ein Telefonprovider eingerichtet. Ein Provider kann dann auf den oben eingerichteten ISDN-Anschluß zugreifen. Ein Provider kann aber auch per Internet auf einen VoIP-Anbieter wie z.B. sipgate verweisen.

ISDN-Zugang MSN und Anlagenanschluß konfigurieren #

Der Server wurde mit vier ISDN-Ports geliefert, von denen drei Eingänge sind (also zur Telefongesellschaft) und einer ein Ausgang (um ein Telefon anzuschließen). Hierbei gab es einige Besonderheiten. ICh besitze hier sowohl einen MSN- als auch einen Anlagenanschluß, weshalb ich beides hier beschreiben kann.

MSN #

Dieser Anschluß ist einer, der normalerweise von Privatpersonen benutzt wird. Er erlaubt es, mehrere getrennte Rufnummern zu verwalten.

Der Telefonanschluss muss mit der Signalisierung PTP und dem Switchtype EuroISDN eingerichtet werden.

Beim Provider habe ich einige besondere Einrichtungen vorgenommen. Man kann unter "eingehende Wählmuster" eine seiner Telefonnummern wie "12345" angeben. Dann wird diese Nummer an das daneben eangegebene Telefon (bzw. die Rufgruppe) weitergeleitet. Wird keine Nummer angegeben, werden alle eingehenden MSN-Nummern weitergeleitet.

Die Anruferkennung kann man ebenfalls beim Provider angeben. Es kann aber auch Sinn machen, diese später im Telefon zu konfigurieren. Im Provider muss entsprechend eingestellt werden, ob eine zentrale genommen wird oder die beim Telefon gewählte. Eine Anruferkennung hat die Form "215112345 <215112345>". DAbei ist meine Ortsvorwahl 02151 und meine Rufnummer 12345. Andere Formate gingen bei mir nicht.

Rufnummernunterdrückung

Es war nicht so einfach, dafür zu sorgen, das nach außen keine Rufnummer signalisiert wird. Ich habe die Lösung im Askozia Forum gefunden: Ich definiere beim Provider ein eigenes ausgehendes Wählmuster "*31*+X.". Dann achte ich darauf, das die Telefone keinen Standard-Provider haben (falls das so ist, wird nämlich das Wählmuster des Providers ignoriert).

Wie und ob man jetzt eine Unterdrückung nur für bestimmte Telefone einstellen kann, habe ich noch nicht weiter herausgefunden.

Anlagenanschluß #

Dieser Anschluß ist für eine Hauptnummer mit Durchwahlen.

Der Telefonanschluss muss mit der Signalisierung PTMP und dem Switchtype EuroISDN eingerichtet werden.

Telefone #

Eigentlich kann man beliebige VoIP-Telefone einrichten. Ich habe einige getestet und komme mit den Geräten von Snom ganz gut zurecht. Ich habe hier ein paar Grandstream-Geräte, die zwei Jahre alt sind und die seltsam in der Benutzerführung sowie schlecht übersetzt und dokumentiert sind. Ich habe mich dann dafür entschieden, einige Snom 370/375 als Arbeitstiere zu kaufen.

Software-Clients für Android #

Ich habe CSipSimple auf meinem Android Telefon installiert. Damit kann ich mich direkt an meinem Asterisk/Askozia Server anmelden. Das klappte alles wie am Schnürchen. Nach einer entsprechenden Einstellung integrierte sich der Wähler perfekt in mein System. D.h. wenn ich eine Nummer aus dem Telefonbuch wähle, erscheint ein kleines Fensterchen und fragt mich, ob ich den Anruf per SIP/Askozia oder per GSM/Mobilfunk tätigen will. Während des Anrufes gibt es rechts ein kleines Menü mit Sonderfunktionen wie Halten und Weiterleiten, was ja in einer Telefonanlage auch Sinn macht. Es gibt allerdings keine Kurzwahltasten bzw. auch kein Besetztlampenfeld wie bei einem Bürotelefon.

Ich habe Apps gesehen, die ein BLF bieten (z.B. https://play.google.com/store/apps/details?id=onc.VoncBlf&hl=de), das aber noch nicht getestet.

Außerdem möchte ich nicht versäumen, darauf hinzuweisen, das ein Standard-Android ebenfalls SIP-Anrufe tätigen kann. Lediglich die Konfiguration ist etwas versteckt... Siehe hierzu https://www.droidwiki.de/wiki/Internetanrufe. Die Integration dieser Lösung ist natürlich ungeschlagen, weil sie direkt in der Original Telefonie-App integriert ist.

Eine einizge Eigenschaft hat mich jedoch (für meinen Anwendungszweck) von CSipSimple überzeugt. Dort kann man einstellen, das SIP-Verbindungen nur im WLAN aufgebaut werden. Das ist natürlich Ansichtssache. In meinem Fall möchte ich, wenn ich zu Hause bin, normal im Festnetz telefonieren können. Wenn ich unterwegs bin, telefoniere ich lieber per GSM. Im Zweifel kann da ja auch eine klassische Rufumleitung konfiguriert werden. Das ist mir aber sicherer und passt eher zu meinem Datentarif, als eine ständige IP-Verbindung bestehen zu lassen.

Telefon im Askozia-Menü einrichten #

Wenn ich ein neues Telefon anschliessen möchte, lege ich als allererstes einen Eintrag im Askozia-Menü für Telefone an. Die Nummer ist die spätere Durchwahl. Einen Nummernplan sollte man sich vorher überlegt haben. Als Anruferkennung nehme ich den Namen des Mitarbeiters bzw. des Arbeitsplatzes. Dieser wird später auf anderen Telefonen angezeigt, wenn der neu eingerichtete Apparat anruft. Als Standard-Provider trage ich bei normalen Mitarbeitern meinen "Vodafone Anlagenanschluss ein". Tue ich das nicht, so habe ich per obigem Trick für die Rufnummernunterdrückung den MSN-Anschluß als Standard voreingestellt. Die Klingeldauer setze ich auf unendlich, was bedeutet, das dieses Telefon keine eigene Mailbox hat. Das Passwort merke ich mir bzw. gebe ein neues ein. Dieses brauche ich, um das Telefon einzurichten.

Außerdem kann ich je nach Telefon die Autokonfiguration einrichten.

Snom 370 #

https://www.vodafone.de/downloadarea/Bedienungsanleitung_snom_370.pdf http://wiki.snom.com/Snom370/Documentation#User_Manual.2F_Benutzerhandbuch http://downloads.snom.net/documentation/UM_snom3xx_V2.2_de.pdf

Einrichtung #

Als erstes sollte das Telefon eine IP-Adresse im Netzwerk bekommen. Ich registriere es dazu in meinem DHCP-Server unter einer festen Adresse und einem Namen. Das ist nicht zwingend nötig, erleichtert aber später die Pflege der Installation.

In der Askozia-Anlage stelle ich die Autokonfiguration auf "Snom" und gebe die MAC-Adresse an (die sagt mir der DHCP-Server, sie steht aber auch auf einem Aufkleber auf dem Telefon). Die Adresse wird ohne Doppelpunkte angegeben. Nun reboote ich das Telefon.

Seltsamerweise schien bei mir die Autokonfiguration nicht zu funktionieren. Also ging ich danach erst mal auf die Weboberfläche des Telefons. :-( Ich gebe die Identität 1 an und gebe dort an: Displayname ist der Name des Mitarbeiters, Account die Telefonnummer (Durchwahl) des neuen Telefons, Registrar der Name des Askozia-Servers in meinem lokalen Netz. Das Passwort weiss ich noch vom Anlegen des Telefons im Server. Nach dem Speichern dieser Einstellungen kann ich am Telefon bereits telefonieren. Ab sofort muss ich mich allerdings an der Weboberfläche mit einem Benutzernamen anmelden. Dabe nehme ich als Benutzernamen meine (soeben eingegebene) Telefondurchwahl und das bekannte Passwort.

Vodafone gebrandetes Gerät #

Eines meiner Geräte habe ich gebraucht erworben und es hat ein Branding von Vodafone. Liebe Leute, das ist ein Mist... Aber ich bin damit fertig geworden. Grundsätzlich gibt es zwei Probleme zu verstehen. Erstens hat Vodafone Tasten vertauscht - warum auch immer. Insbesondere haben sie den Haken und das Kreuz, also die immer benutzten Tasten für Ja und Nein bzw. OK und Abbrechen vertauscht. Gott weiss, wie man auf so eine irrsinnige Idee kommt.

Außerdem haben sie andere Einstellungen verändert, die einen Betrieb an einer eigenen Anlage verhindern.

Funktionieren tut das Ganze so: Snom-Telefone besitzen eine Eigenschaft namens Auto-Rovisioning. Das bedeutet, das während des Bootens in einer bestimmten Reihengfolge nach Updates und einer aktuellen Konfiguration gesucht wird. Dazu sucht das Telefon (immer!) auf einem Server von Snom nach Infos auf Basis seiner MAC-Adresse. Dieser erkennt nun, das es sich um ein Vodafone-Gerät handelt und leitet den Aufruf an einen Vodafone-Server um. Dort gibt es eine spezielle Firmware sowie eine XML Konfigurationsdatei. Diese hat ein verschlüsseltes Format, so das man auch die genauen Einstellungen nicht sehen kann. Auf jeden Fall ist danach das Admin-Passwort, das Web-Passwort sowie der SIP-Server fest eingestellt und nicht mehr zu ändern. Aus diesem Grund konnte ich die obigen Einstellungen machen, weil ich ein nagelneues Telefon hatte und das zufällig in Betrieb genommen habe ohne einen Internetzugang zu haben. Mit dem ersten Booten mit Internet-Zugang war es dann aber vorbei und das Telefon schien unrettbar verloren.

Ein bisschen googlen brachte mir dann Schritt für Schritt die Hilfe, die ich brauche:

Ziel sollte sein, eine neue Firmware einzuspielen, die nicht von Vodafone ist. Die aktuelle Firmware gibt es auf der Snom-Seite. Hat man den Admin-Zugang allerdings bereits versaut, ist die gar nicht so einfach einzuspielen.

Sehr geholfen beim Verständnis der Vorgänge hat mir dieser Forums-Thread.

Zuerst mal kann man per TFTP, das heisst direkt beim Starten des Telefons, eine neue Firmware einspielen. Da ich bereits einen TFTP-Server für mein Terminalserver-System laufen habe, war das nicht so super kompliziert. (Ansonsten empfehle ich unter Linux, das Paket tftpd-hpa zu benutzen.) Was mich hier ungefähr drei Stunden gekostet hat, ist die Tatsache, das die Haken- und die Kreuz-Taste vertauscht sind. Nachdem man also die IP-Adresse des TFTP-Servers eingegeben hat, muss man nicht den Haken zum bestätigen drücken (weil das ja noch im BIOS abläuft, bevor Vodafone seinen Blödsinn konfiguriert hat), sondern das Kreuz. Grrrrrr!!!

Hat man diese Hürde überwunden, installiert sich die neue Firmware und startet dann neu. Dann benutzt sie wie oben beschrieben die Autoprovisionierung, holt sich bei Snome INformationen über Updates, das sie an Vodafone verweist, das ihr dann sagt, das es eine aktuelle Vodafone-Firmware gibt. Diese wird dann automatisch heruntergeladen und installiert, womit wir wieder exakt da sind, wo wir angefangen haben. Grrrrr!!!

Deshalb habe ich die drei Nameserver-Einträge "cs.vodafone-ip.de provisioning.snom.com ipcglobalconfig.vodafone.com" in meinem Nameserver auf eine ungültige Adresse gestellt, um die Autoprovisionierung zu linken. Es mag auch reichen, anderweitig den Internetzugang zu kappen. Dann nochmal ein TFTP-Update (richtige - das heisst falsche - Taste zur Bestätigung drücken!). Nun lag das Telefon jungfräulich vor mir. Seufz!

Nun kann man auf die Weboberfläche zugreifen. Diese ist jetzt ohne Passwort direkt zugänglich. Das ist das Zeichen, das alles gut gegangen ist. Hier muss man nun den letzten Trick anwenden. Man geht auf die Weboberfläche des Askozia-Servers in die Telefoneinstellungen und besorgt sich die URL der dort bereitliegenden Provisionierungs-Datei. Das ist unter Provisioning via VPN beschrieben. Der Link hierzu taucht auf, wenn man in den Auto-Configuration Einstellungen die Alt-Taste drückt. Diesen Link trägt man dann in der Weboberfläche des Telefons unter "Advanced / Update / Setting URL" ein.

Damit verhindert man, das das Telefon die Standard-URL von Snom benutzt. Wer mag, kann die Veränderung im DNS-Server nun wieder zurücknehmen.

Im Nachhinein betrachtet wäre man um den Kampf mit dem TFTP-Server herumgekommen, wenn man dem Telefon niemals einen Internet-Zugang gewährt hätte. Vielleicht hätte dann sogar später auch ein Factory-Reset geholfen ("* laut * leise #"). Ob das reicht, teste ich mal ein anderes Mal.

Jetzt lief das Telefon wunderbar, aber die Tasten sind immer noch vertauscht, weil Vodafone ja die Beschriftungen versaut hat. Jetzt muss man sich entscheiden: Will ich die originale Tastenzuordnung haben? Das hat Sinn, weil ich ja mehrere Telefone in der Firma habe und die alle gleich zu bedienen sein sollten. Oder will ich die Vodafone-Tastenzuordnung haben? Das macht Sinn, weil die Tasten ja nun mal so beschriftet sind. Plan eins ist, das man das Gerät aufschraubt, die Tasten abnimmt und austauscht. Plan zwei ist, das man im Askozia-Server manuell Attribute zum Provisioning Template hinzufügen kann. Damit kann man dann die Tasten der Beschriftung entsprechend mappen.

  <phone-settings e="2">
    <key_cancel_remapped perm="R">enter</key_cancel_remapped>
    <key_enter_remapped perm="R">cancel</key_enter_remapped>
    <key_redial_remapped perm="R">dnd</key_redial_remapped>
    <key_dnd_remapped perm="R">settings</key_dnd_remapped>
    <key_directory_remapped perm="R">hold</key_directory_remapped>
    <key_help_remapped perm="R">redial</key_help_remapped>
    <key_menu_remapped perm="R">transfer</key_menu_remapped>
    <key_snom_remapped perm="R">conference</key_snom_remapped>
    <key_transfer_remapped perm="R">snom</key_transfer_remapped>
    <key_settings_remapped perm="R">help</key_settings_remapped>
    <key_conference_remapped perm="R">directory</key_conference_remapped>
    <key_hold_remapped perm="R">menu</key_hold_remapped>
  </phone-settings>

Als ein anderes Beispiel kann man hier auch ein Admin-Passwort setzen:

  <admin_mode_password perm="R">0000</admin_mode_password>
  <admin_mode_password_confirm perm="R">0000</admin_mode_password_confirm>

Wer hier weitere Spielchen einbauen will, kann im Snom-Wiki hierzu mehr lesen.

Tags:  VoIP, ServerDienste

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-8) was last changed on 12-Feb-2022 21:29 by Thomas Bayen