IAX2 VoIPのスルー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、ハングアップ()
楽しむ...

