Daniels blog
12 Dez/08 0

Tunneling IAX2 VoIP via en SSH tunnel

IAX2 SSH tunnel

Bare for det spark, prøvede jeg at forbinde to Asterisk servere gennem en SSH tunnel til at placere krypterede opkald via IAX2 fra BOX1 til box2. Det virkede, men lydkvaliteten er grim og FIFO karakteren af ​​UDP-konvertere trafik til TCP-trafik gav nogle mærkelige resultater. Men efter jeg lærte en masse at gøre det ....

Hvad vi har brug for:

- 2 Asterisk kasser

- Root på box2

- Ssh

- Socat

Hvad jeg gjorde:

Tilslut begge felter med en SSH portvideresendelse at få opkald via internettet. Konverter IAX2 UDP-trafik fra at komme ind i Asterisk Box1s med socat TCP, fordi UDP ikke understøtter SSH tunneling. Send data via TCP tunnelen. Saml det op på den anden side med socat og konvertere det tilbage til UDP. Feed UDP data i målet stjerne.

Hvordan jeg gjorde det:

BOX1:

kontekst til foder på udgående opkald i vores socat konverter:

forlængelse => 3,1, Dial (IAX2/user: pass@127.0.0.1: 10000 / 1)

etablering socat:

socat udp4 lister: 10000, reuseaddr, gaffel tcp: 127.0.0.1:10001

oprette vores ssh tunnel:

ssh-l root @ box2 10001:127.0.0.1:10000


Box2:

Opsætning socat at hente TCP stream fra tunnelen og videregive det til stjerne:

socat tcp4-lyt: 10000, reuseaddr, gaffel UDP: 127.0.0.1:4569

iax.conf:

[Generelt]
bindport = 4569
bindaddr = 0.0.0.0
afviser = alle
tillader = ulaw-format
tillader = alaw

[Box1]
type = peer
brugernavn = bruger
Hemmeligheden = pass
auth = klartekst
kontekst = iax-tunnel
peer kontekst = iax-tunnel
kvalificere = yes
trunk = yes

Tunnelen iax kontekst bare at spille et bip:
; IAX test
[Iax-tunnel]
forlængelse => 1,1, Svar ()
forlængelse => 1,2, afspilning (bip)
forlængelse => 1,3, Læg på ()

Nyd ...

Kommentarer (0) Trackbacks (1)

    Efterlad en kommentar

    Kopier venligst strengen fGUh0U i feltet nedenunder: