Astmanproxy config: Unterschied zwischen den Versionen

Aus metasec wiki
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „=Allgemein= Das Manager Interface vom Asterisk ist nicht unbedingt für hohe Last ausgelegt. Über diese Schnittstelle werden jedoch Informationen für z.B. TAPI …“)
 
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 15: Zeile 15:
 
Danach die Konfigurationsdatei einrichten. Das Beispiel kann ohne Probleme so übernommen werden.
 
Danach die Konfigurationsdatei einrichten. Das Beispiel kann ohne Probleme so übernommen werden.
  
/etc/init.d/astmanproxy.conf minimalconfig
+
/etc/asterisk/astmanproxy.conf minimalconfig
  
 
<pre>
 
<pre>
Zeile 69: Zeile 69:
 
Der Dienst wir einfach auf der Konsole gestartet. Nach dem Start wechselt dieser automatisch in den Hintergrund.
 
Der Dienst wir einfach auf der Konsole gestartet. Nach dem Start wechselt dieser automatisch in den Hintergrund.
  
  /usr/local/metasec/bin/astmanproxy
+
  /etc/init.d/astmanproxy start
  
 
Wenn man jedoch zu Testzwecken den Dienst im Vordergrund laufen lassen will, dann muss der Debuglevel angegeben werden
 
Wenn man jedoch zu Testzwecken den Dienst im Vordergrund laufen lassen will, dann muss der Debuglevel angegeben werden
Zeile 83: Zeile 83:
  
 
sich anzeigen lassen. Es sollte ein User z_proxy von localhost eingeloggt sein!
 
sich anzeigen lassen. Es sollte ein User z_proxy von localhost eingeloggt sein!
 +
 +
=Multi Server Setup=
 +
Als erstes muss in der Datei /etc/asterisk/manager-custom.conf ein zusätzlicher User angelegt werden.<br>
 +
Dieser ist für die jeweilige '''Gegenseite'''.<br>
 +
In unserem Beispiel gehen wir davon aus dass wir zwei Server haben:
 +
 +
zphone1 192.168.1.1
 +
zphone2 192.168.2.1
 +
 +
/etc/asterisk/manager-custom.conf auf zphone1
 +
 +
<pre>
 +
[zphone2]
 +
secret = ultra_secret_password
 +
deny=0.0.0.0/0.0.0.0
 +
permit=192.168.2.1/255.255.255.255
 +
read  = call,log,verbose,command,agent,user,system,all
 +
write = call,log,verbose,command,agent,user,system,all
 +
</pre>
 +
 +
/etc/asterisk/manager-custom.conf auf zphone2
 +
 +
<pre>
 +
[zphone1]
 +
secret = ultra_secret_password
 +
deny=0.0.0.0/0.0.0.0
 +
permit=192.168.1.1/255.255.255.255
 +
read  = call,log,verbose,command,agent,user,system,all
 +
write = call,log,verbose,command,agent,user,system,all
 +
</pre>
 +
 +
In der Datei /etc/asterisk/astmanproxy.conf muss noch der jeweils andere Server '''hinzugefügt''' werden.<br>
 +
( zuzüglich zum "host = 127.0.0.1, 5038, z_proxy, z_proxy, on, off" Eintrag!!! )
 +
 +
Zphone1
 +
host = 192.168.2.1, 5038, zphone1, ultra_secret_password, on, off
 +
 +
Zphone2
 +
host = 192.168.1.1, 5038, zphone2, ultra_secret_password, on, off
 +
 +
Danach müssen noch beide Astmanproxys mit der neuen Konfiguration neu gestartet werden.
 +
 +
/etc/init.d/astmanproxy stop
 +
/etc/init.d/astmanproxy start
 +
 +
das wars....

Aktuelle Version vom 26. Februar 2010, 12:01 Uhr

Allgemein

Das Manager Interface vom Asterisk ist nicht unbedingt für hohe Last ausgelegt. Über diese Schnittstelle werden jedoch Informationen für z.B. TAPI Treiber zur Verfügung gestellt. Um die Last zu minimieren kann der Astmanproxy als Proxy Server genommen werden und zwischen Client und Asterisk geschaltet werden.

Der Vorteil vom Astmanproxy ist auch der , dass dieser u.A. Verbindungen über SSL unterstützt, wo hingegen der Manager ein plaintext Protokoll ist wie z.B. Telnet oder POP!!!


Installation

Die benötigen Dateien von http://dl.metasec.de/zphone/astmanproxy.tar.bz2 herunterladen. Danch enptacken

tar xvjf astmanproxy.tar.bz2 -C /

Danach die Konfigurationsdatei einrichten. Das Beispiel kann ohne Probleme so übernommen werden.

/etc/asterisk/astmanproxy.conf minimalconfig


; auf welchen host soll verbunden werden
; i.d.r. ist es der localhost, es können jedoch 
; weitere hosts hiinzugefüg werden
host = 127.0.0.1, 5038, z_proxy, z_proxy, on, off

; wie oft soll versucht werden den host zu kontaktieren
; nach n versuchen verwirft der astmanproxy diese verbindung!!!
maxretries = 10

;
; in welchem Intervall soll versucht werden eine Verbindung aufzubauen
retryinterval = 2

; auf welchen Interface / IP soll gelauscht werden
listenaddress = *

; auf welchen Port soll gelauscht werden
listenport = 5039

; Authentifizierung erforderlich
; diese werden aus der Datei astmanproxy.users gelesen
; die ZPhoen unser werden automatisch angelegt!
authrequired = yes

; unter welchen user und gruppe soll der prozess laufen
; wichtig: wenn user oder gruppe nicht vorhanden sind, kommt der dienst nicht hoch!!!
proc_user = asterisk
proc_group = asterisk

; logging
logfile = /var/log/astmanproxy.log

;
; sonstige angabent... :->
;
sslclienthellotimeout = 200
acceptencryptedconnection = no
acceptunencryptedconnection = yes
asteriskwritetimeout=100
clientwritetimeout=200
inputformat = standard
outputformat = standard
autofilter = on


Dienst starten

Der Dienst wir einfach auf der Konsole gestartet. Nach dem Start wechselt dieser automatisch in den Hintergrund.

/etc/init.d/astmanproxy start

Wenn man jedoch zu Testzwecken den Dienst im Vordergrund laufen lassen will, dann muss der Debuglevel angegeben werden

 /usr/local/metasec/bin/astmanproxy -d
 /usr/local/metasec/bin/astmanproxy -dd
 /usr/local/metasec/bin/astmanproxy -ddd

Je mehr -d Schalter, desto mehr Debuginfo! Auf der Asterisk CLI kann man den eingeloggten Proxy mit

manager show connected

sich anzeigen lassen. Es sollte ein User z_proxy von localhost eingeloggt sein!

Multi Server Setup

Als erstes muss in der Datei /etc/asterisk/manager-custom.conf ein zusätzlicher User angelegt werden.
Dieser ist für die jeweilige Gegenseite.
In unserem Beispiel gehen wir davon aus dass wir zwei Server haben:

zphone1 192.168.1.1
zphone2 192.168.2.1

/etc/asterisk/manager-custom.conf auf zphone1

[zphone2]
secret = ultra_secret_password
deny=0.0.0.0/0.0.0.0
permit=192.168.2.1/255.255.255.255
read  = call,log,verbose,command,agent,user,system,all
write = call,log,verbose,command,agent,user,system,all

/etc/asterisk/manager-custom.conf auf zphone2

[zphone1]
secret = ultra_secret_password
deny=0.0.0.0/0.0.0.0
permit=192.168.1.1/255.255.255.255
read  = call,log,verbose,command,agent,user,system,all
write = call,log,verbose,command,agent,user,system,all

In der Datei /etc/asterisk/astmanproxy.conf muss noch der jeweils andere Server hinzugefügt werden.
( zuzüglich zum "host = 127.0.0.1, 5038, z_proxy, z_proxy, on, off" Eintrag!!! )

Zphone1

host = 192.168.2.1, 5038, zphone1, ultra_secret_password, on, off

Zphone2

host = 192.168.1.1, 5038, zphone2, ultra_secret_password, on, off

Danach müssen noch beide Astmanproxys mit der neuen Konfiguration neu gestartet werden.

/etc/init.d/astmanproxy stop
/etc/init.d/astmanproxy start

das wars....