OpenVPN und Asterisk auf FBF Wlan 7170

SilentGreen

Neuer User
Mitglied seit
14 Apr 2009
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

zuerst einmal ein großes Lob an dieses Forum und die weiterführenden Links, die man hier so findet, bzw. genannt bekommt. Absolute Spitze, wie hier geholfen wird.

Ich bin relativ neu, was IP-Telefonie betrifft. Auch die Forensuche habe ich schon ausgiebig genutzt und meistens hat sie mir auch weiter geholfen.

Zu meinem jetzigen Thema, habe ich allerdings nichts gefunden, bzw. nicht das richtige, was mir im Moment weiter helfen könnte. Ich benötige dringend Hilfe, da es für meinen Kunden zeitlich sehr wichtig ist.

Ich habe bei einem Kunden eine Fritz!Box Fon Wlan 7170 mit der Firmware 29.04.70 am Laufen. Busybox 1.8.2.

Nun möchte ich VoIP per Asterisk über OpenVPN nutzen. Hierbei soll per OpenVPn ein Tunnel zu einem Server aufgebaut werden welcher dann von Asterisk für die eigentliche Telefonie genutzt wird.

Habe daraufhin auch die debug.cfg folgendermaßen angepasst:
Code:
#!/bin/sh

LED_DEVICE=/proc/led_mod/led
if [ ! -f /proc/led_mod/led  ] ; then
  LED_DEVICE=/var/led
  echo "set led: ${LED_DEVICE}"
fi
# start internet phone led flashing
echo "set internet phone led to blink (modul=14, state=3)"
echo 14,3 > ${LED_DEVICE}

# check kernel version
KERNEL_VERSION=`uname -r | grep 2.6`
if [ -z "${KERNEL_VERSION}" ]
then
  KERNEL_VERSION="linux24"
  ETHERWAKE="etherwake"
else
  KERNEL_VERSION="linux26"
  ETHERWAKE="ether-wake"
fi

# init busybox var
BUSYBOX="/bin/busybox"

# wait to be able to interrupt in case of emergency
sleep 120

# load VPN-Client (OpenVPN)

# create tap-device
mknod /var/tmp/tap c 10 200

# write 'secret.key' to file
cat > /var/tmp/static.key << 'ENDSECRETKEY'
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END OpenVPN Static key V1-----

ENDSECRETKEY

# write 'client.ovpn' to file
cat > /var/tmp/client.ovpn << 'ENDSERVERCONF'
# port and interface specs
# the following is not necessary, if you bring up openvpn via Debian's init script:
#daemon
# behave like a ssl-webserver
port 443
proto tcp-client
remote xx.xxx.xxx.xx
# what device tun ot tap?
dev tap0
dev-node /var/tmp/tap
# now the ips we will use for the tunnel
ifconfig 192.168.xxx.xx 255.255.255.252
# Keep VPN connections, even if the client IP changes
float
mssfix
# use compression (may also even obfuscate content filters)
comp-lzo
# use a static key
secret /var/tmp/static.key
# dont reload the key after a SIGUSR1
persist-key
# check alive all 10 secs
keepalive 10 60
# verbosity level (from 1 to 9, 9 is max log level)
verb 4
# set the default route
route-gateway 192.168.xxx.xx
redirect-gateway def1

ENDSERVERCONF

# try to load files from USB drive
for f in /var/media/ftp/*
do
  if [ -f ${f}/files/${KERNEL_VERSION}/openvpn ]
  then
    echo "copy ${f}/files/${KERNEL_VERSION}/openvpn"
    cp ${f}/files/${KERNEL_VERSION}/openvpn /var/tmp/openvpn
  fi
done
# check if file already exists
if [ ! -f /var/tmp/openvpn ]
then
  # wait for server
  while !(ping -c 1 localhost)
  do
    sleep 5
  done
  # load files
  wget -qO /var/tmp/openvpn http://localhost/files/${KERNEL_VERSION}/openvpn
fi


# make them executable
chmod +x /var/tmp/openvpn
chmod 0600 /var/tmp/client.ovpn
chmod 0600 /var/tmp/static.key

# start OpenVPN
/var/tmp/openvpn --config /var/tmp/client.ovpn &

# start asterisk
usb=/var/media/ftp/[B][U]<<USB-Gerät>>[/U][/B]
# "usb" kann alternativ auch auf anderen nichtflüchtigen Speicher verweisen
let i=1
while [ $i -lt 6 ];do
 if [ -d $usb/addons ];then
  INST_DIR=$usb $usb/addons/cfg_asterisk16 usb_install
  $usb/addons/cfg_asterisk16 start
  break
 fi
 let i+=1
 sleep 5
done

# stop internet phone led flashing
echo 14,1 > ${LED_DEVICE}

Nachdem ich die Dateien auf den USB-Stick kopiert habe und und die Box starte, kommt er allerdings nicht sehr weit. Die Ausgabe auf der Konsole lautet:
Code:
BusyBox v1.8.2 (2008-11-26 13:15:43 CET) built-in shell (ash)
Enter 'help' for a list of built-in commands.

ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
# Initializing USB Mass Storage driver...
USB Mass Storage device (1307:0163) detected...
scsi0 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
userman: LAN Client Internet-Accounting and Blocking
userman: device registerd with major=228
userman: init ok
  Vendor: Ut163     Model: USB2FlashStorage  Rev: 0.00
  Type:   Direct-Access                      ANSI SCSI revision: 02
SCSI device sda: 7897087> 512-byte hdwr sectors (4043> MB)
sda: Write Protect is off
sda: Mode Sense: 00 00 00 00
sda: assuming drive cache: write through
SCSI device sda: 7897087> 512-byte hdwr sectors (4043> MB)
sda: Write Protect is off
sda: Mode Sense: 00 00 00 00
sda: assuming drive cache: write through
 sda: sda1
Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
usb-storage: device scan complete
Jun 17 22:16:11 mediasrv[662]: startup (Feb  2 2009 20:11:12)
mcfw: group 0.0.0.0: query cpmac:0 10sec
copy /var/media/ftp/Ut163-USB2FlashStorage-01/files/linux26/openvpn
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_cpuclock: norm_power_rate=100 act_rate=99 mul=0 div=1 offset=0 NormP=0 mW -> SumNormP=0 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_dspclock: norm_power_rate=100 act_rate=84 mul=154 div=10 offset=974 NormP=2514 mW -> SumNormP=2514 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_systemclock: norm_power_rate=100 act_rate=83 mul=65 div=10 offset=1793 NormP=2443 mW -> SumNormP=4957 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_wlan: norm_power_rate=100 act_rate=0 mul=84 div=10 offset=100 NormP=940 mW -> SumNormP=5897 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_isdnnt: norm_power_rate=100 act_rate=0 mul=1 div=1 offset=0 NormP=100 mW -> SumNormP=5997 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_isdnte: norm_power_rate=100 act_rate=0 mul=1 div=1 offset=0 NormP=100 mW -> SumNormP=6097 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_analog: norm_power_rate=300 act_rate=0 mul=141 div=10 offset=100 NormP=4330 mW -> SumNormP=10427 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_dect: norm_power_rate=100 act_rate=0 mul=0 div=1 offset=0 NormP=0 mW -> SumNormP=10427 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_ethernet: norm_power_rate=467 act_rate=620757323 mul=1 div=1 offset=50 NormP=517 mW -> SumNormP=10944 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_dsl: norm_power_rate=100 act_rate=0 mul=0 div=1 offset=0 NormP=0 mW -> SumNormP=10944 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_usb_host: norm_power_rate=500 act_rate=80 mul=55 div=10 offset=50 NormP=2800 mW -> SumNormP=13744 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_usb_client: norm_power_rate=0 act_rate=0 mul=0 div=1 offset=0 NormP=0 mW -> SumNormP=13744 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_charge: norm_power_rate=446 act_rate=0 mul=0 div=1 offset=0 NormP=0 mW -> SumNormP=13744 mW
[avm_power] pm_ressourceinfo_scriptparse: powerdevice_loadrate: norm_power_rate=100 act_rate=16 mul=29 div=10 offset=-17 NormP=273 mW -> SumNormP=14017 mW
[B]SysRq : Changing Loglevel
Loglevel set to 4
Info: have to stop cat /dev/debug[/B].

Please press Enter to activate this console.

Hier bleibt er stehen, aber macht nicht weiter. Habe ich etwas übersehen, oder sollte ich einfach nur noch eine Weile warten?

Das komische ist, dass ich eine zweite Box (gleihes Modell, gleiche Firmware, etc.) das Ganze auf genau diesem Wege zum Laufen gebracht habe!?!?!?!?

Ich kapiere das Ganze nicht. Bin schon am überlegen, ob das am USB-Stick liegen kann, aber diesen habe ich genauso behandelt, wie den anderen, und auch schon drei verschiedene Sticks probiert. Immer mit dem gleichen Ergebnis. Also kann das meiner Meinung nach auch nicht sein.

Vielen Dank schon mal für Eure Hilfe.

Gruß
SilenGreen
 
Hallo Leute,

ich wollte noch mal nachfragen, ob jemand irgendeine Idee hat, was das sein könnte.

Möchte nicht drängeln (was ich hiermit aber mache... :rolleyes:), aber ich komme hier echt nicht weiter.

Viele Grüße
SilentGreeb
 
Es wäre wohl besser gewesen, diese Anfrage im entsprechenden Modifikationsbereich oder gleich im Asterisk-Bereich dieses Forums zu stellen (obwohl es wohl im Moment eher noch ein OpenVPN-Problem zu sein scheint, so wie ich das sehe und der Asterisk ja auch nicht lokal laufen soll). Dort dürften sich aber die meisten User rumtreiben, die sich mit diesem Thema auseinandersetzen.

Zum Thema kann ich Dir leider nicht viel helfen. Kann es aber sein, daß Dir dein zur Verfügung stehender Arbeitsspeicher zu Ende geht? Zumindest scheint die Box den Loglevel ändern zu wollen, was ihr wohl noch gelingt (auf Error?). Aber das Logging bekommt sie wohl aus irgendeinem Grund nicht hin. Existiert denn die Logdatei /dev/debug? Wobei mir der Pfad merkwürdig vorkommt, so direkt unter /dev. Gibt es den Aufruf zur Änderung des Loglevels in den Konfigurationsdateien des OpenVPN den man temporär mal deaktivieren könnte? Stimmt der Pfad zum Laden von OpenVPN, speziell der Name (Ut163-USB2FlashStorage-01) des Datenträgers/Sticks? Der scheint sich bei einigen Boxen auch gern mal zu ändern. Dafür gabe es aber einen Workaround, wenn ich mich recht erinnere. Das wären die Punkte wo ich vielleicht ansetzen würde.

Vielleicht kann einer der Mods den Thread mal in den rechten Bereich verschieben. Und dann finden sich auch vielleicht die Profis, die sich deines Problems annehmen können.

Gruß Telefonmännchen
 
Es wäre wohl besser gewesen, diese Anfrage im entsprechenden Modifikationsbereich oder gleich im Asterisk-Bereich dieses Forums zu stellen (obwohl es wohl im Moment eher noch ein OpenVPN-Problem zu sein scheint, so wie ich das sehe und der Asterisk ja auch nicht lokal laufen soll). Dort dürften sich aber die meisten User rumtreiben, die sich mit diesem Thema auseinandersetzen.

Hallo Telefonmännchen,

da hast Du wahrscheinlich Recht, aber da ich mir nicht sicher war woran das genau liegt (OpenVPN oder Asterisk), hatte ich auch nicht gewusst wohin das wirklich gehört, also habe ich das mal in das Allgemeine gestellt. Vielleicht wird das wirklich noch an die richtige Stelle verschoben, dann kann mir vielleicht jemand weiter helfen.
Zum Thema kann ich Dir leider nicht viel helfen. Kann es aber sein, daß Dir dein zur Verfügung stehender Arbeitsspeicher zu Ende geht?
Wäre seltsam, da es sich wie gesagt, um das exakt gleiche Modell wie bei der anderen FBF handelt. Dort funktioniert es doch auch...
Zumindest scheint die Box den Loglevel ändern zu wollen, was ihr wohl noch gelingt (auf Error?). Aber das Logging bekommt sie wohl aus irgendeinem Grund nicht hin. Existiert denn die Logdatei /dev/debug? Wobei mir der Pfad merkwürdig vorkommt, so direkt unter /dev.
Ja, finde ich ebenfalls seltsam. Zumal ich versucht habe dort ein Logfile zu finden, welches aber nicht existiert.
Gibt es den Aufruf zur Änderung des Loglevels in den Konfigurationsdateien des OpenVPN den man temporär mal deaktivieren könnte?
Leider nein, das macht dei Fritzbox automatisch, vielleicht aus dem von Dir oben genannten Grund.
Stimmt der Pfad zum Laden von OpenVPN, speziell der Name (Ut163-USB2FlashStorage-01) des Datenträgers/Sticks? Der scheint sich bei einigen Boxen auch gern mal zu ändern. Dafür gabe es aber einen Workaround, wenn ich mich recht erinnere.
Hier benutze ich die Variable NEW-LINK, die automatisch den Namen an den angeschlossenen USB-Stick anpasst. Dies habe ich mit drei verschiedenen Sticks versucht und alle drei wurden mit dem richtigen Namen erkannt. Es wird ja auch begonnen vond en Sticks zu laden und installieren.
Das wären die Punkte wo ich vielleicht ansetzen würde.

Vielleicht kann einer der Mods den Thread mal in den rechten Bereich verschieben. Und dann finden sich auch vielleicht die Profis, die sich deines Problems annehmen können.

Gruß Telefonmännchen

Vielen Dank auf jeden Fall schon mal für die Antwort. Ich werde weiter (ver-)suchen und auf Hilfe hoffen.

Viele Grüße
SilentGreen
 
verschoben nach Fritz->Modifikationen, da tummeln sich sowohl die Asterisk als auch die OpenVPN Experten.
 
Zunächst wäre wichtig, was die Box denn so tut, wenn sie "still" ist. Ist das Kopieren des OpenVPN erfolgreich gewesen? Existiert also /var/tmp/openvpn ? Läuft es evtl sogar ("ps")?

Und: steht da bei Astrisk wirklich "usb=/var/media/ftp/<<USB-Gerät>>" im Skript? Das geht??


Ich würde grundsätzlich vielleicht noch ein paar mehr "echo"s einbauen, um den Fortschritt zu sehen, z.B.:
Code:
[...]
# try to load files from USB drive
for f in /var/media/ftp/*
do
  if [ -f ${f}/files/${KERNEL_VERSION}/openvpn ]
  then
    echo "copy ${f}/files/${KERNEL_VERSION}/openvpn"
    cp ${f}/files/${KERNEL_VERSION}/openvpn /var/tmp/openvpn
  fi
done
# check if file already exists
[B]echo "check if file already exists"[/B]
if [ ! -f /var/tmp/openvpn ]
then
  # wait for server
[B]echo "/var/tmp/openvpn not found, trying to download"[/B]
  while !(ping -c 1 localhost)
  do
    sleep 5
  done
  # load files
  wget -qO /var/tmp/openvpn http://localhost/files/${KERNEL_VERSION}/openvpn
[B]echo "downloading to /var/tmp/openvpn"[/B]
fi

[B]echo "content of /var/tmp/"
ls -l /var/tmp/[/B]
# make them executable
[B]echo "chhmod of files"[/B]
chmod +x /var/tmp/openvpn
chmod 0600 /var/tmp/client.ovpn
chmod 0600 /var/tmp/static.key
[B]echo "content of /var/tmp/ after chmod"
ls -l /var/tmp/[/B]
# start OpenVPN
[B]echo "starting /var/tmp/openvpn"[/B]
/var/tmp/openvpn --config /var/tmp/client.ovpn &

# start asterisk
[B]echo "preparing to start asterisk"[/B]
usb=/var/media/ftp/<<USB-Gerät>>
# "usb" kann alternativ auch auf anderen nichtflüchtigen Speicher verweisen
let i=1
while [ $i -lt 6 ];do
 if [ -d $usb/addons ];then
  INST_DIR=$usb $usb/addons/cfg_asterisk16 usb_install
  $usb/addons/cfg_asterisk16 start
  break
 fi
 let i+=1
 sleep 5
done
[...]

Jörg
 
Zunächst wäre wichtig, was die Box denn so tut, wenn sie "still" ist. Ist das Kopieren des OpenVPN erfolgreich gewesen? Existiert also /var/tmp/openvpn ? Läuft es evtl sogar ("ps")?
Ok. Muss ich noch mal nachschauen. Ich bin jetzt allerdings nicht vor Ort, so dass ich das auf morgen verschieben muss. Ich glaube aber mich zu erinnern, dass er OpenVPN nicht kopiert und somit auch der Prozess nicht gelaufen ist... Ich habe das glaube ich sogar mit "# ps" überprüft gehabt. Wie gesagt, mache ich morgen aber noch mal.
Und: steht da bei Astrisk wirklich "usb=/var/media/ftp/<<USB-Gerät>>" im Skript? Das geht??
Nein, bei <<USB-Gerät>> steht eigentlich "NEW_LINK" aber wenn ich die Konsolenausgabe verfolgt habe, hat er dafür immer - je nach angeschlossenem USB-Stick - auch die richtige Bezeichnung verwendet und den entsprechenden Stick auch verwenden können.
Aufgefallen ist mir diese Möglichkeit als ich unter /var/media/ftp ein "# ls" gemacht habe und mir eben der Eintrag "NEW_LINK" gezeigt wurde, bei einem "# cd NEW_LINK" wurde auch je nach angeschlossenem USB-Stick dieser mit der richtigen Bezeichnung geöffnet.
Ich habe das Ganze aber auch schon mit der festen Eingabe der Bezeichnung des jeweils verwendeten USB-Sticks in diesem Skript versucht, was aber auch keine Besserung gebracht hat.
Ich würde grundsätzlich vielleicht noch ein paar mehr "echo"s einbauen, um den Fortschritt zu sehen,
Jörg
Ok, das hört sich nach einem Vorschlag an, den ich mal in Angriff nehmen werde. Werde das Skript mal entsprechend ändern. Das blöde ist halt echt, dass er das wie gesagt bei einer anderen (genau gleichen FBF 7170) ohne weiteres macht und mir auch dummerweise keine Logfiles erstellt. Mal schauen, vielleicht kann ich noch einige Ausgabemeldungen in eine Datei schreiben lassen...

Danke schon mal und weitere Tipps,etc. sind immer willkommen.

Viele Grüße
SilentGreen
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.