Showing posts with label asterisk. Show all posts
Showing posts with label asterisk. Show all posts

Wednesday, August 1, 2012

Asterisk telepítés Debian-ra

Asterisk:


Az Asterisk egy ingyenes, open-source kommunikációs szoftver, főként Linux operációs rendszerekre. További információ található a hivatalos oldalon.

Az Asterisk-et kétféle módon telepíthetjük:


1. Telepítjük a csomagkezelő által felajánlott verziót. A csomagkezelő oldalán találhatunk információkat az éppen aktuális verzióról. A cikk írásakor a támogatott verzió az 1.6 volt, mely már egy kicsit elavultnak tekinthető, de ha valaki most ismerkedik a rendszerrel, annak tökéletes lehet, hiszen nem megy el idő a telepítési bajlódással. A telepítési fázisok itt érhetőek el.

2. Letöltjük a forráskódot és lefordítjuk a gépünkön. Ez egy kicsit több időt vesz igénybe, de éles rendszernél mindenképpen ajánlott kiválaszthatjuk, hogy milyen csomagokat (pl. codec-eket, és egyéb szolgáltatásokat) szeretnénk telepíteni, így csökkentve az erőforrás használatot. A telepítési fázisok itt érhetőek el.

Érdemes megemlíteni, hogy létezik egy FreePBX nevű eszköz, melyet egy telepített Asterisk-es rendszerhez kell kötnünk. Ez egy remek eszköz a rendszer monitorozására, illetve menedzselésére. A FreePBX telepítésére itt olvashatsz bővebben.



FreePBX telepítés Debian-ra

A FreePBX nem más, mint egy GUI az Asterisk vezérléséhez. Ha gyakran kell állítani a rendszeren, érdemes használni, hiszen nem kell a .conf fájlokban turkálni. Emellett elég sok adatot képes megjeleníteni a rendszerről: felhasználók, terhelés, elérhető frissítések, stb. .

A telepítése roppant egyszerű, szükséges hozzá PHP5, és MySQL. Állítólag a PHP5.4-et nem igazán kedveli, nekem nem volt vele problémám.

Letöltés/előkészítés:


Telepítsük a PHP-t, és MySQL-t:

apt-get install php5-mysql libapache2-mod-php5 mysql-server php-db php5-gd php-pear

Váltsunk a tmp mappába:
cd /tmp

Töltsük le az épp használatos verziót, jelenleg ezek közül lehet ávlasztnai:
A 2.9-es csak 1.8 ig támogatja az Asterisket!

wget http://mirror.freepbx.org/freepbx-2.9.0.tar.gz
wget http://mirror.freepbx.org/freepbx-2.10.0.tar.gz

Váltsunk az src mappába, csomagoljuk ki, és lépjünk bele:

cd /usr/src
tar xvfz /tmp/freepbx-2.10.0.tar.gz 
cd freepbx-2.10.0

Készítsük elő a MYSQL adatbázisokat:

mysql -u root -p
create database asterisk;
create database asteriskcdrdb;


GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'amp109';
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'amp109'; flush privileges; 
quit

Töltsük be a szükséges SQL táblákat:

mysql -u root -p asterisk < SQL/newinstall.sql 
mysql -u root -p asteriskcdrdb < SQL/cdr_mysql_table.sql

Szükséges felhasználó létrehozása

groupadd asterisk
useradd -c "PBX asterisk" -d /var/lib/asterisk -g asterisk asterisk
passwd asterisk


Ha még nem lennének meg a könyvtárak, akkor hozzuk létre:

mkdir /var/run/asterisk
chown asterisk:asterisk /var/run/asterisk


Adjuk hozzá az asterisk usert a www-data csoporthoz:

nano /etc/group
www-data:x:33:asterisk
(f2-vel tudsz menteni és bezárni)

nano /etc/apache2/apache2.conf
(ctrl+w- vel tudsz keresni)

Most be kell állítani, hogy az Apache az asterisk user nevében fusson:
Cseréld le a következő sorokat:
User www-data
Group www-data
erre:
User asterisk
Group asterisk

(Lehet, hogy a User és Group után valami $-os szöveg van, azt törölheted, de a legegyszerűbb ha simán kommenteled(#).

chown -R asterisk /var/lib/php5

Változtassuk meg a php.ini beállításait, kicsit ki kell bővíteni:

nano /etc/php5/apache2/php.ini
upload_max_filesize = 32M
max_execution_time = 120
max_input_time = 120


Fontos, hogy a telepítés megkezdése előtt mindenképpen készítsünk biztonsági mentést a modules.conf fájlról!

cp /etc/asterisk/modules.conf ~/asterisk-modules.conf


Telepítő elindítása:


./install_amp
A telepítő menet közben meg fog kérdezni néhány dolgot, a többségét hagyhatjuk alapbeállításon, egyedül az IP címet érdemes megváltoztatni, illetve a telepítés helyét. A telepítés helyénél figyeljünk arra, hogy a /var/www/mappanev helyre kerüljön, ha ezen belül egy almappába kerül, akkor még szöszölni kell vele.


Bug:
Előfordul, hogy Asterisk telepítésénél a ,,make sample" módot választjuk, ekkor legenerálja a sok .config fájlt, amire szükségünk lesz, és default beállításokkal szolgál. Viszont ezen verzió telepítője szépen kihagy néhány fájlt, ezért pl.: FreePBX nem képes csatlakozni Asterisk-hez (Asterisk nem képes feldolgozni a manager.conf fájlt). A FreePBX-es problémát a következő képpen tudjuk megoldani:

nano /etc/asterisk/manager.conf

A fájl végén látunk két include-ot (# az elején). Ezeket a fájlokat elfelejti létrehozni, ezért vagy hozzuk létre, vagy ;-vel kommentezzük ki. A fájlok tartalma nem létfontosságú, csak a szeparálhatóság végett fontos.


nano /etc/asterisk/sip.conf


A fájl végéhez adjuk hozzá:
#include sip_additional.conf


Ha minden jól ment, akkor kész a GUI, valami ilyesmit kéne kapni:






Asterisk telepítés: forrásból




A következő cikkben az Asterisk telepítését járjuk végig, ebben a telepítésben a hivatalos oldalon található forrásokból fogunk fordítani. Nem csak az Asterisk-et, hanem a hozzá tartozó kiegészítőket is. Elsőként töltsük le az Asterisk oldaláról a szükséges fájlokat.

Letöltések:

Asterisk forrás
Mindenképpen szükséges letölteni.

DAHDI Linux / DAHDI Tools
(Digium/Asterisk Hardware Device Interface), Digium és néhány más gyártó által készített, főleg PCI-os kártyák vezérléséhez használt interfész, ezt akkor telepítsük, ha tervezünk ilyen kártyát használni (pl.: FXO: összeköti a rendszert a PSTN (telefonos) hálózattal. Régebben Zaptel néven futott. A complete verziót töltsük le, így egyben megkapjuk a DAHDI Linux és DAHDI Tools fáljait.

LibPRI
Open -source könyvtár, segítségével kapcsolódhatunk ISDN hálózatra, ileltve használhatjuk az ISDN-PRI és ISDN-BRI protokollokat.

LibSS7
Az SS7 protokoll használatát teszi lehetővé.

Ezeket az eszközöket nem árt ha telepítjük, többnyire használni is fogjuk őket. A telepítésükkor szükséges a sorrendet betartani:
LibPRI -> DAHDI Linux/ DAHDI Tools -> LibSS7->  Asterisk

Telepítés:

Elsőként telepítenünk kell néhány csomagot (előfordulhat, hogy már telepítve van némelyik, ez esetben haladjunk tovább), ezek a következők lesznek:

bison
ncurses-dev
libssl-dev
libnewt-dev
zlib1g-dev
initramfs-tools
cvs
procps

Ezeket a szokásos csomagkezelővel telepíthetjük a következő formában:

apt-get install csomagnev

A /usr/src mappában hozzunk létre egy  asterisk nevű mappát:

mkdir /usr/src/asterisk

Majd a  letöltött forrásokat csomagoljuk ki. A mappanevek a verziószámok változásával változnak, így a verziókat nem írom ki.

Most egyesével telepítjük a kiegészítő csomagokat:
1. LibPRI:
cd /usr/src/asterisk/libpri
make
make install
cd ..

2. DAHDI Linux
cd /usr/src/asterisk/DAHDI
make
make install
make config
cd ..

3.LibSS7
cd /usr/src/asterisk/LibSS7
make
make install
cd ..

Most jön az Asterisk telepítése:
A telepítés elkezdése előtt bizonyosodjunk meg róla, hogy van c++ fordító telepítve, ha nincs:

apt-get install g++

Az Asterisk alap beállításként SQLite3 adatbázist használ, ezt is telepíteni kell:

apt-get install sqlite3 libsqlite3-dev

cd /usr/src/asterisk/asterisk
make clean
./configure --disable-xmldoc

Ez eltart egy kis ideig, ha bármilyen hiba keletkezne, a végén kiírja, így javíthatjuk a hibákat. Ha sikeresen lefutott, igény szerint kiadhatjuk a

make menuselect

parancsot, ezzel egy GUI-s felületet kapunk, itt tudunk beállítani pl.: addonokat, különböző codec-eket és további kiegészítőket. Végül:

make install





A telepítés végén felajánlja, hogy készít sample fájlokat, ez főként akkor jó, amikor még barátkozunk a rendszerrel, ha szeretnénk ilyenekete:


make samples

Igény esetén dokumentációt is telepíti, de ehhez szükség van doxygen-re:

make progdocs




A programról röviden:
Le lehet kérni a parancsokat:

asterisk -h

Csatlakozás a helyi szervehez:
asterisk -r (CLI -n keresztül tudunk parancsokat adni neki).


Bug!!
Előfordul, hogy Asterisk telepítésénél a ,,make sample" módot választjuk, ekkor legenerálja a sok .config fájlt, amire szükségünk lesz, és default beállításokkal szolgál. Viszont ezen verzió telepítője szépen kihagy néhány fájlt, ezért pl.: FreePBX nem képes csatlakozni Asterisk-hez (Asterisk nem képes feldolgozni a manager.conf fájlt). A FreePBX-es problémát a következő képpen tudjuk megoldani:

nano /etc/asterisk/manager.conf

A fájl végén látunk két include-ot (# az elején). Ezeket a fájlokat elfelejti létrehozni, ezért vagy hozzuk létre, vagy ;-vel kommentezzük ki. A fájlok tartalma nem létfontosságú, csak a szeparálhatóság végett fontos.



nano /etc/asterisk/sip.conf



A fájl végéhez adjuk hozzá:
#include sip_additional.conf