差分

移動先: 案内検索

Asterisk SIP セキュリティ

3,965 バイト追加, 2020年8月5日 (水) 18:22
SIPのユーザ名/パスワードを、わかりにくくする
SIPのユーザ名、パスワードを総当たりしてくる攻撃の対策方法。<br>
総当たりで来るので、対策はそこそこ面倒です。<br>
==SIPポート番号をずらす==
デフォルトのSIPポートは5060/udpですが、これを別なポート番号にしてください。<br>
現在よく見られる攻撃は5060を狙い撃ちで来ます。このためSIPポート番号を移動することによって効果的な"逃げ"が行えます。<br>
ただしSIPポート番号を変更した場合には電話機等のSIPクライアント側も設定変更を行う必要があります(当然ですが)。<br>
==iptablesなどソースIPによるフィルタリング==
 一般的なセキュリティ対策と同様に通す/通さないIPアドレスが明確な場合には効果的な対策のひとつです。<br>
 特定のIPアドレスないしは、レンジからのREGISTERやSIPのセッションしか通さないのであれば、そのIPアドレスに対してのみSIP(5060)とRTP(UDPの10000~20000など)を開きます。<br>
 ただしこの方法は「相手」のIPアドレスが明確な場合にのみ使える方法です。<br>
==Fail2banを使用する==
fail2ban はログファイルを検査することにより、iptablesへ登録することでブロックする方式のツールです。SSHへのBruto Forceアタック対策などに使用されますが、Asteriskのログ検査を行うことでSIPをブロックするのにも使用できます。<br>
→[[SIP-Fail2ban]]
 
==ドメイン認証を使う==
sip.confのグローバルに以下の設定を追加します。
domain=nanntoka.kanntoka.tld
domain=192.168.1.120
このように複数を記述することができます。<br>ただしこの方法は簡単に裏をかかれる可能性が高いので過信してはいけません。設定したから安全だと思わないように。他のセキュリティ対策を必ず併用してください。<br><br>
==SIPのユーザ名/パスワードを、わかりにくくする==
===パスワードを長くする===
===ピア名を長くする===
サンプルの設定ファイルでは簡素化のために"内線番号=SIPピア名"という形で記述していますが、これは必ずしもイコールである必要はありません。ここをイコールにしている理由は
exten => _2XX,1,Dial(SIP/${EXENEXTEN})
のように内線番号そのままでSIPピアにダイヤルしたいからです。もし、この利便性を捨ててかまわないのであれば、以下のような記述はアリです。
---sip.conf---
---extensions.conf
exten => 201,1,Dial(SIP/4207f1257d2a12cb)
内線番号とSIPのピア名の紐付けを行っているのはextenです。なので、extenの中で正しく記述されていれば、SIPのピア内線番号とSIPのピア名の紐付けを行っているのはextensions.confです。なので、extensions.confの中で正しく記述されていれば、SIPのピア(ユーザ)名は内線番号と一致している必要はありません。===上の応用===上の方法を応用して、「ひみつのフレーズ」を付加することでピア(ユーザ)名を「わかりにくく」することが可能です。ただし、この「ひみつのフレーズ」を知られてしまっては意味がないので注意してください。<br>まず sip.conf はこんな感じ ---sip.conf--- [5e8518af331d-201] username=5e8518af331d-201 secret=なんちゃら次にextensions.confはこんな感じ exten => _201.,1,Dial(SIP/5e8518af331d-${EXTEN})このフレーズの部分 5e8518af331d を使うことで、ピア名を長くしてしまうわけです。 ==Asterisk 11の名前付きACLを使う==Asterisk 11から名前付きACL(Named ACL)が使用可能になっています。これを使うことで、SIPのピア毎にアクセス制御をかけることが可能です。*[[Asterisk 11 名前付きACL]] =外にかけられないように対策=勝手に外(外線)に対して発信できないように規制をかけることで、電話を勝手に使われて費用が発生してしまうことを防ぐことができます。<br>==外線プレフィックスを特殊なものにしてしまう==一般的に外線発信を単に、頭'0'で始めたり'0'ないしは'9' (03-, 003-のスタイル)で行えるようにしてしまっている所が多いと思います。これをワザと変なものにしてしまいます。例えば567とか何か適当なプレフィックスを外線発信用としてしまえば、ユーザ/パス総当たり->外線プレフィックス総当たり と両方を破って外に出られてしまうという危険性はかなり低くなります。<br> exten => _567.,1,Dial(SIP/${EXTEN:3}@outband-gateway)とかのように書いてしまいます。<br>==内線番号によって発信規制する==これはREGISTERされてCIDを騙られると効果はありませんが、特定の内線からのみ外線発信しておくことで若干は効果が期待できます。<br>==発信先規制を入れる==海外に通話できる番号を禁止してしまいましょう。そうすれば海外に対して発信できないので超高額な電話代の請求をされる可能性は、ぐっと低くなります。<br>例えば頭が'00'とか'010'に対しては発信させないようにextenで書いてしまいます。ですが、これでは国際通話ができないので不便という場合には「超長いプレフィックス」などを使うとダイヤルできるようにしておくと良いでしょう。<br>==そもそもの海外発信契約を止める==キャリアと契約すると黙っていても国際通話ができるようになっていますが、これを止めます。一番安全かもしれません。[[Category:セキュリティ]]

案内メニュー

VoIp-Info.jp

HP Directplus -HP公式オンラインストア-