ARCOR MiniQuickinstall Asterisk Open Source PBX D

background image

Mini Quickinstall zu

Asterisk* Open Source PBX



Erste Anlaufadressen zu Asterisk VoIP

http://www.voip-info.org/wiki-Asterisk+introduction

http://www.voip-info.org/wiki-Asterisk+installation+tips

http://www.ip-phone-forum.de/forum


1.Hardware
2.Installation von SuSE Linux 9.0
3.Update von SuSE und Installation erforderlicher Pakete
4.Installieren von Asterisk

5.Konfiguration Netzwerk
6.Konfiguration von Asterisk
7. Konfiguration ISDN
8. Konfiguration SIP




1. Hardware

Beim Aufbau eines Systems wird geraten die SUSE HWL (Hardwarekompatibilitätsliste) zu
Rate zu ziehen, da Linux unter umständen auf bestimmter Hardware nicht einwandfrei läuft,
oder nachträglich spezielle, nicht getestete Treiberpakete nachinstalliert werden müssen.


Aus der in der HWL befindlichen und zur Verfügung stehenden Komponenten wird ein
betriebsfähiger Rechner aufgebaut. Bei dem hier verwendeten System wurden folgende
Komponenten verwendet.

AT Tower mit 150Watt NT

AMD K6 300 Mhz

ATI Rage II Grafikkarte

AT Mainboard Sockel7 VIA

128 Mb SDRAM

3,03Gb Festplatte

CD-Rom Laufwerk

Floppylaufwerk

ISA Soundkarte

10/100 Mbit Realtek NWK

Fritzcard ISDN

128MB Ram sind zwingend notwendig, da sonst die Suse Installation Probleme bereitet,
und unter Umständen mehrere Stunden dauern kann.


da Asterisk ein rein kommandozeilen basierendes Programm ist, ist eine speziell schnelle
HW nicht nötig.

da zur Konfiguration des Rechners kann yast und sax (Konfigurationsprogramme unter
Suse) auf grafisch basierender Oberfläche (KDE) verwendet werden, sollte der Rechner
jedoch mindestens über o.g. HW verfügen. (2D Grafikkarte, 24xCD)

alle nicht in Verwendung kommenden Funktionen des HW wie z.B. serielle oder parallele
Ports können zur Recourcenschonung im BIOS deaktiviert werden.

Da die ausgewählte Hardware von Linux uneingeschränkt unterstützt wird, ist eine volle
Ausnutzung des Speichertimings kein Problem, und kann im Bios auf FAST betrieben
werden.


background image

2. Installation von Linux (SuSE 9.0)

nach Einlegen der SuSE 9.0 CD1 wird der Rechner von CD gestartet.(Bootreihenfolge im
BIOS beachten, und ggf vorher umstellen.

Bei Erscheinen des LinuxBootOption Fensters den Menüpunkt „Installation“ auswählen
(durch drücken der Taste F2 lässt sich der Bootvorgang einsehen)

Auswahl des Gebietsschemas (hier deutsch)

Nun sucht SuSE die vorhandene Hardware und stellt entsprechend die zu installierenden
Pakete zusammen. Diese können nach eigenen Bedürfnissen angepasst werden.

Das Anlegen der Partitionen erfolgt ebenfalls automatisch und kann übernommen werden

Als Software wird das Standart System mit KDE-Desktopumgebung und Grafischem
Grundsystem installiert.


Unter Systemstart empfiehlt sich den Bootloader von GRUB auf LILO umzustellen. (durch
klick auf Systemstart und anschließendem doppelklick auf den Bootloadertyp lässt sich der
Loader auswählen. Die Konvertierung sollte automatisch von LILO erfolgen.)

Durch anschließenden Klick auf „Übernehmen“ kann die Installation gestartet werden.

für die Installation werden die ersten 4CD´s benötigt die auf Anweisung der
Installationsroutine zu wechseln sind.

Zum Abschluss der Installation sind die Antworten auf Fragen Suses bezüglich der HW,
und
Eingabe von Einwahldaten zu beantworten. Es wird hier schon ein Teil der
Systemkonfiguration vorgenommen (z.B. Monitor, Grafikkarte und Netzwerkeinstellungen)


3. Update von SuSE und Installation erforderlicher Pakete

Sollte eine frühere Version als 9.0 installiert worden sein, ist nach Beenden der Installation
und erstem Start des Systems für den einwandfreien Betrieb von Asterisk ein Update des
Kernels auf mind. 2.4.1notwendig (ab SuSE 9.0 ist der 2.4.1 schon enthalten und damit
kein Update notwendig

starten des Systems von boot cd

Auswahl des Punktes "Installation / Update" ( ab hier den Anweisungen folgen)

Auswahl eines Suseservers zum Download der Updatepakete

(

ftp://ftp.htwk-leipzig.de/pub/suse.com/ftp.suse.com/suse/i386/9.0

; IP=141.57.1.11 )

Es wird nach Verbindung mit dem Server automatisch nach Updates gesucht, und
gefundene Updates zur persönlichen Auswahl angezeigt.

zu den Updates müssen zusätzlich zum einwandfreien Betrieb von Asterisk spezielle
Pakete mitinstalliert werden, da sonst das Einkompilieren der Asteriskfiles fehlschlägt.
Diese Pakete müssen über die Paketsuchefunktion von Hand gesucht werden. Dabei
handelt es sich um folgende Pakete

=> Linux Kernel Sources

=> Openssl

=> readline

=> make Befehl

=> bison library

=> termcap (inkl devel) library

=> newt (inkl. devel) library

=> ncurses (inkl devel) library

ist eines oder mehrere der Pakete nicht installiert, muss dies an dieser Stelle geschehen,

da sonst die Installation von Asterisk fehlschlägt.

background image

4. Installation von Asterisk

für die Installation von Asterisk werden folgende Installationsdateien benötigt, welche auf
der Asterisk Homepage zum Download bereit stehen.

(

ftp://ftp.asterisk.org/pub/telephony/asterisk

)

Es ist ebenso möglich, dass die Files aus dem öffentlichen CVS Bereich bezogen werden,
da dort die ständig aktualisierten Asterisk Binarys abgelegt werden.

(

http://asterisk.espia-net.net/horde/chora/cvs.php?login=1&asterisksess=07e6e16d8c94545979d7c87f67de30d6

)

=> asterisk-0.9.0.tar.gz

(evtl. asterisk-sounds-0.1.1.tar.gz )

=> bei Verwendung von ZapTel Hardware das ZaptelPaket

diese Dateien werden in das root/home Verzeichnis in jeweils eigene Unterordner entpackt.

vor der Installation von Asterisk den Kernel ( befindet sich im Verz.usr/src/linux-xxxxx) mit

#

make cloneconfig und #make dep

sichern und zum Bearbeiten freigeben. Dieser Vorgang kann einige Zeit in Anspruch

nehmen.

Danach in das entpackte Asterisk Verzeichnis wechseln und mit folgenden Befehlen die
Dateien aus den jeweiligen Verzeichnissen installieren. Dabei sind in der Reihenfolge
vorzugehen wie die Dateien o.a. sind.

#cd <Verzeichnis>

#make clean

#make install

Während der Installation wird ständig der aktuelle Status ausgegeben, darin dürfen KEINE
Fehlermeldungen auftauchen wie z.B. Directory not found. Anderweitig wurden nicht alle
benötigten Pakete wie unter 3. beschrieben installiert. Der Installationsvorgang sollte daher
hier abgebrochen und die Paketinstallation nachgeholt werden.


Ausführbare Dateien sind jetzt in den Ordnern

erzeugte Strukturen befinden sich

in:

/usr/sbin/asterisk

usr/include/asterisk

/usr/sbin/safe_asterisk

usr/lib/asterisk

/usr/sbin/astgenkey

var/lib/asterisk

var/spool/asterisk

nach der abgeschlossenen Installation in das Asterisk Verzeichnis (root/bin/asterisk)
wechseln und mit dem Befehl

#make samples

die Default Konfigurationsdateien erzeugen.

Diese werden in das Verzeichnis etc/Asterisk erstellt, und können später weiter konfiguriert
werden. Asterisk ist jetzt bereits mit den Defaulteinstellungen lauffähig.



5. Konfiguration Netzwerk

Wenn Linux und Asterisk installiert sind, wird das Netzwerk aufgebaut. Zu empfehlen ist,
alle Geräte in ein und dem selben Netz zu betreiben, da es bei der NAT und Asterisk noch
zu Problemen kommen kann.


Folgende Geräte kommen zum Einsatz, und erhielten die aufgeführten festvergebenen IP
Adressen. Vorläufig wurden zu Testzwecken alle Ports von 3000-30000 am Router
freigegeben.

1x ZyAir B2000 WLAN AP

192.168.1.10 / 24

1x ZyXEL Prestige 202H

192.168.1.2 / 24 (WAN auf AUTO)

1x ZyXEL P2000W

192.168.1.60 / 24

1x ZyXEL P2000W

192.168.1.61 / 24

1x RTL LAN an Asterisk

192.168.1.3 / 24

Bei den SIP Telefonen sind extra noch folgende Einstellungen vorzunehmen

Outbound Proxy

192.168.1.3:5060

SIP-Proxy

192.168.1.3:5060

Username und SIP Nummer müssen ein und die selbe Nummer sein

background image

6. Konfiguration von Asterisk

Asterisk im debug Modus starten mit "asterisk -vvvvgc" (Neustarten mit „restart now“ ,
Beenden mit „stopp now“ )


Asterisk sollte nun schon laufen. Eventuelle Fehlermeldungen abarbeiten, die Fehler
werden angezeigt mit Verzeichnis und Datei und können so leicht lokalisiert werden.

Befehle für die Asterisk <cli> Kommandozeile sind auf einem extra Blatt festgehalten.

um ein internes telefonieren zu ermöglichen müssen nun die sip.conf und die
extentions.conf bearbeitet werden. Dabei ist darauf zu achten, das Einträge in deren conf
Dateien auch gleich den Einträgen in den Telefonen sein muss. (etc/asterisk)

Die folgende abgebildete Konfiguration ist ein Beispiel und wurde auch so in Funktion mit

Erfolg getestet. (ACHTUNG: im SIP Telefon muss unter dem Menüpunkt Username kein
Name, sondern die SIP Telefonnummer eingetragen werden, da sonst ein anmelden des
Telefons an Asterisk fehlschlägt.)

#####sip.conf:#####

[general]

port = 5060

bindaddr = 192.168.1.3

context = default

[10]

type=friend

username=10

secret=T1

host=dynamic

qualify=1200

[11]

type=friend

username=11

secret=T2

host=dynamic

qualify=1200


#####extentions.conf#####

[general]

static=yes

writeprotect=no

[default]

include => 10

include => 11

[10]

exten => 10,1,Dial(SIP/10,45)

exten => 10,2,Hangup

[11]

exten => 11,1,Dial(SIP/11,45)
exten => 11,2,Hangup

nach diesen Einstellungen sollte bereits das telefonieren intern untereinander funktionieren.


Jede Aktion in Asterisk wird auf dem Bidschirm als Statusnachricht angezeigt, so lässt sich
z.B. die Anmeldung des Telefons an Asterisk verfolgen.

Befehle für die Asterisk <cli> Kommandozeile sind auf einem extra Blatt festgehalten. Mit
diesen ist es möglich sich z.B. angemeldete Telefone, Benutzung der Kanäle und die
Verbindungsqualität anzeigen zu lassen. Die wichtigsten sind

sip debug

;schaltet SIP Debugging ein (Fehler werden angezeigt)

sip show registry

;zeigt Asterisk Registrierungsdaten

sip show users

;zeigt angemeldete User

sip show channels

;zeigt Benutzung der Kanäle

sip show peers

;zeigt die Verbindungen

show version

;zeigt aktuelle Versionsdaten

background image

7. Konfiguration ISDN

soll Asterisk über eine ISDN Anbindung verfügen, ist es notwendig einen entsprechenden
CAPI Treiber zu installieren. Dieser wird wie nach oben aufgeführtem Beispiel installiert.
Unbedingt die readme des CAPI Packs beachten!

(

http://www.junghanns.net/asterisk/downloads/chan_capi.0.3.1.tar.gz

)

Die Installation erfolgt nach obigem Schema mit den gleichen Befehlen, nur ist darauf zu
achten

Das man das entsprechende Verzeichnis aufsuchen muss)

nach der Installation muss der bereits vorhandene isdn4linux Treiber deaktiviert werden,
inkl. all seiner Abhängigkeiten. Dafür müssen die folgenden Dateien bearbeitet werden:
modules.conf und capi.conf)

#####modules.conf#####

[modules]

autoload=yes

noload => pbx_gtkconsole.so

noload => pbx_kdeconsole.so

noload => chan_modem_i4l.so

noload => chan_modem_bestdata.so

noload => chan_modem_aopen.so

noload => chan_modem.so

noload => app_intercom.so

load => chan_capi.so

load => res_musiconhold.so

noload => chan_elsa.so

noload => chan_oss.so

[global]

chan_capi.so=yes

nach Start von asterisk sind eventuelle Fehlermessages abzuarbeiten, indem die Module in
der modules.conf entsprechend aktiviert oder deaktiviert werden, (load xxxx, noload xxxxx)


läuft Asterisk fehlerfrei, kann die capi.conf so bearbeitet werden, dass eine Einwahl via
ISDN ins Festnetz möglich ist. Dazu wird die MSN im Script eingetragen und der
dazugehörige ISDN Adapter zugewiesen.

#####capi.conf#####

[general]

nationalprefix=0

internationalprefix=00

rxgain=0.8

txgain=0.8


[interface]

msn=<MSN1>

incomingmsn=*

controller=1

softdtmf=1

accountcode=

context=from-sip

callergroup=1

devices=2

Um nun ein Telefonieren auch nach extern, und von extern nach intern zu ermöglichen,
muss die extentions.conf folgendermaßen angepasst werden. Enthalten in diesem Beispiel
sind Rufweiterleitung bei nicht zustande kommendem Gespräch auf eine andere Nummer

#####extentions.conf#####

[general]

static=yes

writeprotect=no


[default]

include => 10

include => 11

background image

exten => _xxx.,1,StripMSD,1

exten => _xxx.,2,Dial,CAPI/<MSN1>:b${EXTEN}

exten => <MSN1>,1,Dial(SIP/10,20,tr)

exten => <MSN1>,2,Dial(SIP/11,20,tr)

exten => <MSN2>,1,Dial(SIP/11,20,tr)

exten => <MSN2>,2,Dial(SIP/10,20,tr)


[10]

exten => 10,1,Dial(SIP/10,20,tr)

exten => 10,2,Dial(CAPI/<MSN1>:b<Nummer zu der Umgeleitet wird>,20,tr)

exten => 10,3,Hangup


[11]

exten => 11,1,Dial(SIP/11,20,tr)

exten => 11,2,Dial(CAPI/<MSN1>:b<Nummer zu der Umgeleitet wird>,20,tr)
exten => 10,3,Hangup


8. Konfiguration SIP

Um SIP (Session Initialisation Protokoll) zu nutzen, und über LAN ins Internet zu
telefonieren, muss als erstes bei einem Anbieter (Sipgate.de oder Nikotel.de) eine SIP
Telefonnummer registriert werden. Mit dieser Nummer meldet sich Asterisk am SIP-Server
an.


Sollte es sich bei der Anbindung ans Internet um eine Dynamische Verbindung handeln, so
wird empfohlen einen Account bei DynDNS zu erstellen, da dem SIP-Server die aktuelle IP
mitgeteilt werden muss, um Gespräche aus dem Internet auf Asterisk weiterzuleiten.

Damit Asterisk sich am SIP-Server anmeldet und Authentifiziert, müssen Erweiterungen
sowohl in der sip.conf als auch in der extensions.conf vorgenommen werden. Diese sollten
so aussehen.

#####exten.conf######

[general]
static=yes
writeprotect=no
nat=yes

[globals]
FWDUSERID=<SIP-Nummer>
FWDUSERNAME=<Screename>

[default]
include => 10
include => 11

;wenn zu SIP Nummern angerufen wird
exten => _0Nxxxx.,1,SetCallerID(${FWDUSERID})
exten => _0Nxxxx.,2,SetCIDName(${FWDUSERNAME})
exten => _0Nxxxx.,3,Dial(SIP/${EXTEN:5}@sipgate.de,40,tr)
exten => _0Nxxxx.,4,Wait,20
exten => _0Nxxxx.,5,Hangup

;wenn zu Festnetznummern angerufen wird
exten => _[1-9]xxx.,1,StripMSD,0
exten => _[1-9]xxx.,2,Dial,CAPI/<MSN1>:b${EXTEN}
exten => _[1-9]xxx.,3,Hangup

;wenn auf MSN1 angerufen wird
exten => <MSN1>,1,Dial(SIP/11,20,tr)
exten => <MSN1>,2,Dial(SIP/10,20,tr)

;wenn auf MSN2 angerufen wird
exten => <MSN2>,1,Dial(SIP/10,20,tr)
exten => <MSN2>,2,Dial(SIP/11,20,tr)

;wenn intern die 10 gewählt wird
[10]

exten => 10,1,Dial(SIP/10,20,tr)

exten => 10,2,Dial(CAPI/<MSN1>:b<Nummer zu der Umgeleitet wird>,20,tr)
exten => 10,3,Hangup

background image

;wenn intern die 11 gewählt wird
[11]

exten => 11,1,Dial(SIP/11,20,tr)

exten => 11,2,Dial(CAPI/<MSN1>:b<Nummer zu der Umgeleitet wird>,20,tr)
exten => 11,3,Hangup


#######sip.conf#######

[general]
port = 5060
bindaddr = 192.168.1.3
externip = <name bei dyndns>.dyndns.org
context = default
tos = reliability
srvlookup = yes
nat = yes
maxexpirey = 1200
defaultexpirey = 20
register => <SIP-Nummer>:<SIP-Passwort>:@sipgate.de:5060/<SIP-Nummer>

[sipgate.de]
type=friend
username=<SIP-Nummer>
secret=<SIP-Passwort>
host=sipgate.de
fromuser=<SIP-Nummer>
fromdomain=sipgate.de
nat=yes
qualify=1200
context= default
canreinvite=no

[10]
type=friend
username=10
secret=T1
host=dynamic
qualify=1200
dtmfmode=rfc2833
context=default
disallow=all
allow=ulaw
allow=alaw

[11]
type=friend
username=11
secret=T2
host=dynamic
qualify=1200
dtmfmode=rfc2833
context= default
disallow=all
allow=ulaw
allow=alaw



9.Test & Fazit

Asterisk ist eine sehr grossartige und mit vielen Funktionen (erweiterbar) ausgestattete
PBX, bereits nach kleiner konfiguration war das interne telefonieren möglich. Nach
umfangreicheren erweiterungen der sip.conf und extentions.conf ist ein problemloses
telefonieren zwischen SIP-Phones und Festnetz , in beide Richtungen, von und zueinander
möglich.

Sehr erfreut hat mich die reibungslose Funktion des CAPI, hier ist sowohl ein rein als auch
raustelefonieren, sogar mit Umleitungen ohne Probleme von statten gegangen.

Sehr überzeugend ist die Sprachqualität über SIP. Testweise kamen Softwareclients wie
SIPPS von sipgate.de oder X-Lite von nicotel.de zum Einsatz, wobei SIPPS kostenpflichtig
und X-Lite Kostenfrei ist. Völlig ausreichend erscheint daher die kostenfreie Version von
nicotel. In Verbindung mit einem Headset am Arbeitsplatz PC und einer Soundkarte ist so
schnell ein kostengünstiges Telefonnetz aufgebaut.

background image

Links und Verweise:

ftp://ftp.asterisk.org/pub/telephony/asterisk

http://asterisk.espia-net.net/horde/chora/cvs.php?login=1&asterisksess=07e6e16d8c94545979d7c87f67de30d6

http://www.voip-info.org/wiki-Asterisk+introduction

http://www.voip-info.org/wiki-Asterisk+installation+tips

http://archiv.tu-chemnitz.de/pub/2004/0008/data/asterisk.pdf

http://graphics.cs.uni-sb.de/~rainer/projects.html

http://www.junghanns.net/asterisk/downloads/chan_capi.0.3.1.tar.gz

http://www.ip-phone-forum.de/forum

http://www02.sipgate.de/user_interface/index.php

http://www.nikotel.de/de/index.htm





















Diese Ausarbeitung ist Eigentum von:

Michael S. - aka - dEEpNIGht
Mail:

deepnight@planet-hh.de

Veröffentlichungen nur nach Rücksprache mit dem Autor. Vervielfältigungen nur in unveränderter

Form und Zustimmung des Autors. Alle Rechte vorbehalten - deepnight

Hamburg 30.7.2004


Wyszukiwarka

Podobne podstrony:
Introduction To The Asterisk Open Source Pbx
Asterisk Open Source Pbx System
System open source NauDoc (1)
Migracja do Open Source
Czytanie kodu Punkt widzenia tworcow oprogramowania open source czytko
DragonQuest Open Source
Biogaz z odchodów zwierzęcych Open Source Biogazownie rolnicze
2 Open source
Java Programowanie, biblioteki open source i pomysly na nowe projekty
projekty open source
System open source NauDoc (1)
Migracja do Open Source
Czytanie kodu Punkt widzenia tworcow oprogramowania open source 2
Informatyka sledcza Przewodnik po narzedziach open source
Informatyka sledcza Przewodnik po narzedziach open source infsle 2
Czytanie kodu Punkt widzenia tworcow oprogramowania open source czytko
Java Programowanie, biblioteki open source i pomysly na nowe projekty
Informatyka sledcza Przewodnik po narzedziach open source 2

więcej podobnych podstron