Eine neue Telefonanlage
ISDN wird per Ende 2017 eingestellt. Schon jetzt gibt es kaum noch brauchbare Endgeräte. Unsere Telefone spucken immer mal wieder, aber eine neue Anlage auf ISDN-Basis lohnt sich definitiv nicht. Also was tun?
- Eine Telefonanlage fürs Analognetz?
- Eines der verschiedenen VOIP-Komplettangebote von Swisscom oder Sunrise?
- Ein VirtualPBX
- Eine selbstgebastelte PBX-Anlage auf Asterisk-Basis
Da dies ein Amateur-Blog ist, ist es klar, dass wir uns am Ende für die Bastel-Lösung entscheiden. Telefonanlagen fürs Analognetz sind zu teuer, aussserdem weiss niemand, wie lange es das Anaolgnetz noch gibt. Die Angebote von Swisscom und Sunrise sind sehr schwierig zu verstehen. Ich brauche keinen Fernseher bei der Arbeit, aber dafür mehrere Telefone und die Möglichkeit, weiterzuverbinden und mehrere Nummern zu führen. Dafür braucht man dann die teuren Business-Varianten.
Für VirtualPBX gibt es Angebote z.B. von Swisscom, Sunrise, Sipcall, e-fon und VTX. Was mir dabei stinkt ist, dass keiner der Anbieter seine Preise auf der Website wirklich transparent offenlegt. Alle behaupten gleichermassen, sie seien “günstig”. Intensiveres Nachforschen und Offerteneinholung bringt dann zu Tage, dass der Grundpreis wohl irgendwo zwischen 15 und 30 Franken pro Endgerät und Monat liegt, Kosten für die Telefonnummern und Gespräche noch nicht eingerechnet. Zu teuer.
Anforderungsprofil
Wir benötigen mindestens:
- Vier Telefonnummern, davon eine Sammelnummer, eine Faxnummer und zwei Direktwahl-Nummern.
- Vier Telefone, die alle auf die Sammelnummer hören, zwei sollen zusätzlich auf eine der Direktwahl-Nummern hören.
- Ein Faxgerät, das auf die Faxnummer hört.
- Zwei Anrufbeantworter.
Von jedem Telefon muss eine Weiterleitung auf jedes der anderen möglich sein, mit oder ohne Rückfrage.
Asterisk
Wer nach Telefonanlagen googelt, stösst früher oder später auf ‘Asterisk’. Nein, damit ist nicht der kleine Gallier gemeint, der schreibt sich hinten mit x. Aber vermutlich ist der Anklang an dessen sprichwörtliche Schlauheit und Stärke nicht ganz unwillkommen. Ursprünglich stammt der Name aber von der Sterntaste ( * ) am Telefon. Die heisst nämlich so. Und sie dient dazu, erweiterte Telefonfunktionen anzusteuern.
Hier soll es nun aber weder um Gallier noch um Telefontasten gehen, sondern um die PBX-Software Asterisk. Ich weiss, was Sie jetzt denken. Sie denken: “Was soll jetzt PBX bedeuten?” Mit Abkürzungen werden Sie sich abfinden müssen. Die Telefon-Leute scheinen nur per Abkürzungen miteinander zu reden. Sogar in Anfängerbüchern wird man mit Abkürzungen erschlagen.
PBX heisst ‘Private Branch eXchange’ und bedeutet frei übersetzt: ‘Nebenstellenanlage’. Also eine Software zum Betreiben einer Telefon-Nebenstellenanlage.
Auf den ersten Blick genau das, was wir wollen. Und praktischerweise kostet Asterisk nichts (ausser Schweiss, Tränen und sehr viel Zeit). Vielleicht wird dieser Artikel ja helfen, letztere etwas abzukürzen.
Planung und Hardware
Asterisk läuft unter Linux, also brauchen wir einen Linux-Computer. Der Server im Keller würde sich anbieten, der läuft eh immer und ist eh nie ganz ausgelastet, und er läuft natürlich unter Linux.
Bei nochmaligem Nachdenken verliert diese Idee aber schnell an Glanz: Man will nicht wirklich, dass man bei einem Serverproblem auch gleich noch ohne Telefon dasteht. Und man will umgekehrt auch nicht, dass eine Asterisk-Fehlkonfiguration den Server in den Abgrund reisst.
Guter Rat ist hier ausnahmsweise billig: Ein Raspberry Pi Model 3 hat bei weitem ausreichend Power für eine Anlage mit bis zu ungefähr 10 parallelen Gesprächen. Er hat alle Anschlüsse, die man braucht, er ist billig, leise und mit einem Verbrauch von unter 4 Watt auch sparsam. Und da er sehr einfach aufgebaut ist, gilt er allgemein auch als zuverlässig und langlebig.
Der Pi kommt irgendwo ans Netzwerk, eigentlich egal wo, aus praktischen Gründen stellen wir ihn einfach im Keller auf den Server.
Die Internet-Anbindung muss für VoIP stabil sein und pro Gespräch mindestens 90 kB/s in jede Richtung übertragen können. Das derzeit kleinste Angebot von Swisscom (Vivo XS) hat eine Nenn-Bandbreite von 10MB/s, würde also theoretisch für mehr als 100 parallele Gespräche ausreichen. Zu bedenken ist allerdings, dass die von den Anbietern genannte Bandbreite idR eher unter- als überschritten wird (nicht nur Autohersteller habn Mühe mit der Angabe von technischen Daten), und dass Sie das Internet ja nicht nur zum Telefonieren brauchen werden. Später werden wir sehen, wie man VoIP priorisieren kann, so dass nicht die Telefonanlage zusammenbricht, wenn die Sekräterin Webradio hört. Schwerer als die Geschwindigkeit wiegt die Frage der Zuverlässigkeit. Wir sind ganz selbstverständlich gewohnt, dass das Telefon “immer” geht. Auch bei Stromausfall, auch bei Zusammenbruch des Internets. Das ist bei VoIP nicht der Fall. Bei einem Ausfall des Internet kann man auch nicht mehr telefonieren.
Sonst brauchen wir eigentlich nichts. Später mal Telefone, aber für den Anfang tun es Soft-Phones. Ich komme nachher gleich darauf.
Raspberry Pi aufsetzen
- Achtung: Dieser Abschnitt wurde gändert, weil die Dinge beim Raspbian sich 2017 geändert haben
Am besten kauft man den Pi zusammen mit Gehäuse, Netzteil und vorkonfigurierter NOOBS-MicroSD. Dann passt gleich alles zusammen, die Installation geht schnell, und man braucht nicht einmal Bildschirm und Tastatur an den Raspi anzuschliessen:
- NOOBS-MicroSD an einen Desktop-Computer anschliessen, und die Datei ‘recovery.cmdline’ editieren: Am Ende ‘silentinstall’ (ohne die Anführungszeichen) anhängen. Im Ordner /os alles ausser ‘raspbian’ entfernen.
- Die MicroSD in den Raspi einsetzen, LAN-Kabel und zuletzt Stromversorgung anschliessen. Sie werden nicht viel sehen oder hören, aber der Raspi installiert jetzt Raspbian und bootet anschliessend ins frisch installierte System. Gönnen Sie ihm etwa 30 Minuten Zeit dafür. Bei neueren Raspi-Modellen erkennen Sie daran, dass die gelbe “Disk” leuchte ausgeht, dass er fertig ist.
- Trennen Sie ihn wieder vom Strom, nehmen Sie die SD Karte heraus und stecken Sie diese nochmal in Ihren Computer. erstellen Sie in der Partition “/boot/” eine datei namens ssh mit beliebigem Inhalt. Nur dann können Sie den Raspi später erreichen 1.
- Finden Sie die IP-Adresse Ihres eben frisch installierten Raspi heraus. Am Sichersten geht das über die DHCP-Clientliste Ihres Routers. Sie können aber auch einfach mal
arp -a
probieren, das spuckt oft die Adresse schon aus. Oder, falls nmap installiert ist,nmap -sP 192.168.0.*
(für die IP-Adresse natürlich Ihre echte Netzadresse eingeben). Nmap erkennt den raspbi meist direkt als “Raspberry Pi”. Wenn nicht, kann man anhand der MAC-Adresse eingrenzen: Raspis fangen immer mit B8: an. - Sobald Sie die Adresse wissen, können Sie mit
ssh pi@<raspi-adresse>
2 einloggen. Die Frage nach dem Passwort beantworten Sie mitraspberry
. Und schon sind Sie ‘drin’. - Als Erstes würde ich empfehlen, das Passwort zu ändern. Sie werden nicht wollen, dass später jeder in Ihre Telefonzentrale einbrechen kann, weil Sie bei der Installation nicht mehr an diesen Schritt gedacht haben. Das Kommando dazu heisst
passwd
. - Dann ist es empfehlenswert,
sudo raspi-config
auszuführen.- Unter “Boot-Options” können Sie einstellen, dass beim Start nicht der Desktop, sondern nur eine Kommandozeile (CLI) geladen wird. Der Desktop ist überflüssig, da wir den Raspi sowieso nicht an einen Bildschirm anschliessen werden.
- Unter “Interfacing Options” sollten Sie den SSH Server einschalten. Sonst müssen Sie nämlich für jeden Start den Trick mit der “ssh”-Datei im Boot-Ordner ausführen - die gilt nämlich aus Sicherheitsgründen immer nur für einen Start und wird anschliessend wieder gelöscht.
- Unter “localization options” sollten Sie das locale ‘de_CH-UTF-8’ einstellen und die richtige Zeitzone konfigurieren. Falls Sie WiFi benutzen, unbedingt auch die richtige WIFI-Region einstellen.
- Beim Beenden von raspi-config will der Computer einen Reboot. Danach können Sie sich wieder per SSH einloggen (aber diesmal mit dem usernamen “pi” und dem vorhin neu eingestellten Passwort) 3.
- Bevor Sie zu Ihrem wohlverdienten Kaffee kommen, sollten Sie die folgenden Kommandos absetzen:
sudo apt-get update && sudo apt-get upgrade -y
Danach ist der Raspi ein halbes Stündchen oder so mit Updates beschäftigt.
In der nächsten Folge wird Asterisk installiert.
-
Wie so oft haben leichtsinnige Menschen alles für Alle ein wenig schwieriger gemacht: Weil diese Leute das Standard-Passwort auch dann beliessen, wenn der Raspi von aussen erreichbar war, wurden viele Raspis gehackt und als Spam-Schleudern oder DDos-Zombies missbraucht. Daher ist seit 2017 der SSH-Server standardmässig abgeschaltet. ↩
-
Wenn Sie Linux nutzen, wird diese Zeile Sie nicht vor Probleme stellen. Als Mac-User öffnen Sie die Anwendung “Terminal”, die Sie unter Programme/Dienstprogramme finden. Alles in dieser Artikelfolge geht davon aus, dass Sie eine solche Konsole geöffnet haben. Unter Windows brauchen Sie ein Zusatzprogramm für SSH-Verbindungen, zum Beispiel Putty. Achten Sie darauf, bei der Verbindungskonfiguration Typ ‘SSH’, die IP des Raspi als Adresse, “pi” als Name und “raspberry” als Passwort einzutragen. Alles andere können Sie unverändert lassen. ↩
-
An dieser Stelle sei auch die Frage aufgeworfen, wie man einen Raspberry ohne Tastatur und Bildschirm abschaltet oder rebooptet, wenn man nicht durch ein Programm dazu aufgefordert wird. Ganz einfach:
sudo reboot
macht einen Neustart undsudo halt
fährt den Raspi herunter (Danach kann man ihn allersings nur durch Trennen und Wiederanschliessen der Stromzufuhr neu starten - tun Sie das also nicht aus der Ferne). ↩