ダニエルさんのブログ
12 Dez/08 0

IAX2 VoIPのスルーSSHトンネルをトンネリング

IAX2 SSHトンネル

ただキックのために、私はBOX1からBOX2にIAX2を経由して暗号化されたコールを発信するためにSSHトンネルをスルー2 Asteriskのサーバーを接続しようとしました。 それは働いたが、音質は醜いですと、TCPトラフィックにUDPトラフィックを変換するのFIFO性質はいくつかの奇妙な結果が得られた。 しかし、すべての後、私はそれをやって多くのことを学んだ....

我々は必要なもの:

- 2アスタリスクボックス

- BOX2上のルート

- SSH

- socatの

私は何でした:

インターネットスルーコールを取得するためのSSHポートフォワーディングとボックスの両方を接続します。 UDPは、SSHトンネリングをサポートしていないため、socatのTCPと、アスタリスクにBox1sからIAX2のUDPトラフィックを変換します。 TCPデータスルーのトンネルを送信します。 socatの他の側でそれを拾うとUDPに戻して変換します。 ターゲットのアスタリスクにUDPデータを供給する。

私はそれをしなかった方法:

BOX1:

私たちのsocatのコンバーターへのアウトバウンドコールで供給するためのコンテキスト:

EXTEN => 3,1、ダイヤル(IAX2/user:pass@127.0.0.1:10000/1)

socatのを設定する:

socatのudp4リッスン:10000、ReuseAddrというフォークTCP:127.0.0.1:10001

私たちのSSHトンネルを設定する:

sshの-Lルート@ BOX2 10001:127.0.0.1:10000


BOX2:

トンネルからのTCPストリームをピックアップし、アスタリスクにそれを渡すためにsocatの設定:

socatのTCP4-listenは:10000、ReuseAddrというフォークUDP:127.0.0.1:4569

iax.conf:

[全般]
bindport = 4569
bindAddrに= 0.0.0.0
=すべて許可しない
= ULAWを許可
= ALAWを許可

[BOX1]
タイプ=ピア
ユーザ名=ユーザ
秘密=パス
AUTH =平文
コンテキスト= IAXトンネル
ピアコンテキスト= IAXトンネル
= YESを修飾する
トランク=はい

トンネルIAXのコンテキストだけでビープ音を再生する:
、IAXテスト
[IAX-トンネル]
EXTEN => 1,1、回答()
EXTEN => 1,2、再生(ビープ音)
EXTEN => 1,3、ハングアップ()

楽しむ...