見出し画像

【3CX V18】クラウドPBX BASIC - 2. ファイアウォールの設定(Firewall Configuration)

★検索から飛んできた人用 > 目次記事はこちら★

こんにちは、CCアーキテクトの辻です。3CX Advanced Certificationを取得するために、3CXサイトの記事を機械翻訳し日本語にしてから勉強しました。その時のメモなどをNoteにまとめていきます(こちらはメモページなのでオリジナルページ内コンテンツの視聴も強く推奨です)

※注:3CXサイトの記事が元ネタです。不明瞭な部分やおかしいな?と感じるところは原文を参照ください。


3CX導入のご相談は、CCアーキテクトまでお気軽にお問い合わせください。

# 3CX構築・Genesys構築のエキスパート CCアーキテクト (cc-arc.com)


オリジナルページ

Module 2. Firewall Configuration
⇒解説動画と解説スライドがあります。


ファイアウォールの設定 - なぜ?

■ファイアウォールはデフォルトでインターネットから入ってくるすべてのトラフィックをブロック。
■しかし、これでは3CXサーバーがVoIPプロバイダーやリモートデバイスなどの外部エンティティとの適切な双方向通信を行うことができない。
■なので、ファイアウォールが外部から3CXサーバーに到達するために必要なすべてのインターネットトラフィックを許可するように、いくつかの設定が必要。

このモジュールの前提条件

■このモジュールを完全に理解するためには、ネットワークとルーティングの基本的な知識が必要。
■試してみたい場合は、設定可能なファイアウォールが必要。ファイアウォールは、通常アプライアンスベースの物理的なデバイスであったり、サーバーにインストールするソフトウェアパッケージであったりする。どちらも最終的には同じ目的を果たす。
■このモジュールを通して、行う必要のある一般的な設定について説明するが、ベンダー固有の設定には踏み込まない。
■このため、使用するハードウェアでこれらの設定を実行する方法を知っておく必要がある。同じ理由で、3CXのスタッフがお客様の代わりにファイアウォールを設定しようとすることはない。
■市場で人気のあるファイアウォールの参考用として、いくつかのサンプル設定ガイドあり。
リンク: https://www.3cx.com/docs/manual/firewall-router-configuration を参照。

NAT & Ports

■ファイアウォールの最も重要な機能の1つが、NAT(Network Address Translation)
■これは、ある外部のパブリックIPアドレスにコンタクトしたときに、ファイアウォールが外部からのトラフィックをどこに向かわせればいいかを知るための方法。
■SIPトランク、3CXアプリ、STUN環境のIP電話、SBC、ブリッジなどの外部エンティティが、ローカルLANの外から3CXサーバーと通信できるようにするために必要。
 ■アクセス制御リスト(ACL)と呼ばれるものによって、3CXサーバーにアクセスできる人を制限できるよう、特定のルールを設定する必要がある。
■多くのファイアウォールでは、NATの設定に加えて、ACLの個別の設定が必要。一部のファイアウォールは、NATの設定が行われたときに、自動的にこれらのルールを作成する。これはファイアウォールに依存し、ファイアウォールはそれぞれ異なるため、ファイアウォールのドキュメントを参照して、適切な手順を実行。
 ■3CXではIPv6がサポートされているが、IPv6マスカレードはサポートされていない。IPv6を使用する場合は、IPv4と同様に、PBXとの間のすべてのトラフィックに対してIPv6ファイアウォールルール(ACL)を作成する必要がある。ポートはIPv4と同じ。

Full Cone NAT

■3CXが使用するネットワークアドレス変換のタイプは、Full Cone NAT
■これにより、ファイアウォールに未知のエンティティが3CXサーバーにコンタクトすることが可能になる。
■これは、VoIPプロバイダにとって特に重要。ほとんどの場合、プロバイダは1つだけでなく、広範囲のIPからサーバーにコンタクトしようとする。
■ユーザーが自宅で固定IPを持っていない場合や、外出先で接続する場合など、リモート内線にも重要。特に出張先では、ユーザーは事前にネットワーク管理者と通信して、IPをネットワークに入れることを許可する必要はない。モバイルワーカーは自分のIPアドレスを知る必要さえない。ファイアウォールは、これから説明する特定のポートを使って、どこからでもアクセスできるようにする必要がある。

ポートの保存(Preservation)

■ファイアウォールが備えるべきもうひとつの重要な特性は、「ポートの保存」
■これは、内部のエンティティがファイアウォールを介してパケットを送信するとき、ファイアウォールはソースポートを変更せずにこれを通過させなければならないということ。
■多くのファイアウォールは「ソースポートリマッピング」のような機能を備えており、これを行うことで、ソースIPポートを意図的に変更することができる。
■通常、他のプロトコルでは問題にならないが、SIPとSDPはこの意味で一種独特となる。他の多くのプロトコルは、トランスポートヘッダーにあるソースポートに依存しているので、もしこれがファイアウォールによって変更されても問題はない。(つまりSIPでは変更されてはいけないという事)

SIP ALGを無効にする

■SIP ALGは、多くのファイアウォールが備えているもう一つの機能。
■これは、SIPパケットの内部を覗き込んで情報を改ざんしようとするもの。SIP ALGの意図は接続性の問題を解決しようとするものだが、経験上すべての実装が確実に動作するわけではない。
■このため、無効化することをお勧めする。
■ただし、これを行うには少し厄介なところがあり、これを行う方法には一貫したパターンがなく、ファイアウォールベンダーによって異なることがある。
■この機能を無効にする方法がわからない場合は、ファイアウォールの製造元に問い合わせるか、製造元が提供するオンラインドキュメントで調べるのが良い。

SIPサービスプロバイダー向けセットアップ

■ここで、利用する外部VoIPトラフィックに応じて、どのNATポートを開放する必要があるかについて、もう少し具体的に説明する。
■このモジュールで説明するポートのほとんどは、他のモジュールと同様に、インストールプロセス中に変更することが可能。
■ここでは、常にデフォルトのポートに言及する。インストール中にポートを変更した場合、これを反映させるために必要なポートフォワーディングを修正し実行する必要がある。
■SIPトランクは、最近のほとんどの導入事例で使用されてるので、まずここから説明を行う。
■SIPトランクを使用するには、PBXのSIPポートを開き、転送する必要がある。このポートは、デフォルトではTCPおよびUDPトラフィック用のポート5060だが、インストール段階で変更することができる。
■これにより、プロバイダからのSIPシグナルが3CXに届くようになる。しかし、SIPシグナルには、実際の音声ペイロードは含まれない。オーディオは、RTP(Real-time Transport Protocol)と呼ばれる別のプロトコルを使用し、別のポート範囲を使用する。
■つまり、UDP トラフィック用にこのポート範囲も開く必要がある。この範囲は9000から10999に設定されており、変更することはできない。
■オーディオペイロードには、Web Client、デスクトップアプリ、PWA(Progressive Web App)を介した通話の音声のほか、ビデオやFAXのトラフィックも含まれる場合がある。アプリの具体的なポートについては、後ほど説明。

3CX Apps、SBC、ブリッジのセットアップ

■リモートユーザーが3CXアプリ、SBCを介して動作するIP電話、またはブリッジを介して接続された別のPBXで作業することを意図している場合、開く必要があるポートはPBXのトンネルポートであり、デフォルトではTCPおよびUDPトラフィック用の5090になる(インストールプロセス中に変更しない場合) 
■トンネルプロトコルは、SIPとオーディオの両方のパケットをカプセル化するため、通話とオーディオの通過に必要なポートは上記1つだけとなる。
■エンドポイントは、プレゼンス情報、プロビジョニング情報、会社の電話帳など、SIP以外の情報も受信する可能性があるため、もう1つポートを開く必要がある。
■それは、インストール時に選択したHTTPSポートで、デフォルトでは5001であり、TCPトラフィックとなる。

3CX WebMeetingのセットアップ

■WebMeetingは、3CXが提供するもう一つの優れた機能。参加者がリモート・ネットワークからミーティングを作成し、参加するには、3CXのHTTPSポートをTCPトラフィック用にオープンする必要がる。
■参加者はこのポートを使ってミーティング情報を取得するが、ミーティングに参加すると、参加者が交換するオーディオ、ビデオ、テキストメッセージは、3CXからリモートでホストされている3CX MCU Cluster(メディアコントロールユニット)を介して行われる。

■また、ネットワークからの送信トラフィックを制限している場合は、WMR(WebMeeting Router)およびMCUサーバーへの送信トラフィックを許可する必要がある。
 ■これらのIPは、MCUが常に追加、削除されるため、変更される可能性があり、MCUサーバーのIPは、MCUサーバーを定義しているホストqos.3cx.netのFQDNを調べれば、いつでも確認することが可能。
■ネットワークからのアウトバウンドトラフィックを制限していなければ、準備は完了となる。
https://www.3cx.com/blog/voip-howto/video-conference-server-optimization

外部IP電話 (STUN) と WebClient (In SIP Mode)

■外部IP電話は、3CX Session Border Controller(SBC)を介して3CXサーバーに接続できるが、直接接続することも可能。
■この場合、開いて転送する必要があるポートは、TCPおよびUDPトラフィック用のPBX SIPポート、およびUDPトラフィック用のオーディオポート。
■これらに加えて、IP Phoneが設定ファイルや会社の電話帳などの情報を取得できるようにするため、TCPトラフィック用にHTTPSポートを開く必要がある。
■3CX Web Client、Desktopアプリ、Progressive Webアプリ(PWA)の通信はHTTPSで行われるため、PBX Secure Web Portを開放する必要がある。
■Web Clientがオーディオに使用するポートは10500~10999 UDPだが、これらはデフォルトのオーディオ範囲である9000~10999ですでに開かれているはずなので、これを動作させるために追加の設定は必要ない。

Teamsインテグレーション

■Microsoft Teamsと3CXを統合するには、Teamsプラットフォームが3CXサーバーと通信する必要がある。
 ■2つのプラットフォーム間のSIP通信には、2つのシナリオがある。
 ■TeamsのFQDNは、3CX提供のものではなく、お客様自身のFQDNである必要があり、Microsoftがサポートする発行元が発行するSSL証明書で接続する必要がある。
 ■1つ目のシナリオでは、3CX Communications SystemのFQDNがTeamsのFQDNと同じ場合:ポート5061をSecure SIP Portとして使用しTCPトラフィックとなる。
 ■2番目のシナリオでは、3CX Communications SystemのFQDNが3CX Provided FQDNで、Teams FQDNとは異なるもの:この場合、セキュアSIP通信用にポート5062が必要で、TCPトラフィックとなる。
 ■ネットワークファイアウォールで該当するポートを開く必要がある。
 ■Audioの場合、TeamsはProvidersと同じポートを必要とするので、UDPのポート9000~10999も開ける必要がる。

メッセージング

■Facebookメッセージ、SMS、または3CX Live Websiteのチャットを使用する場合、ファイアウォールでPBXのHTTPSポートを開く必要がり、これはTCPトラフィックとなる。

リモート設定ウィザード

■ブラウザでPBXConfigToolを使用してPBXを設定する際、ポート5015はTCPトラフィックで使用される。リモート・ネットワークからこの作業を行う場合は、このポートをPBXに転送する必要がある。これは、ホストのセットアップの間だけ必要で、PBX の実際の運用時には使用されない。
 ■この時、SSL証明書はまだ作成されていないため、HTTPが使用される。
 ■同じネットワーク内から3CXをセットアップする場合は、この特定のポート転送を行う必要はない。

有効化(Validation)

■ファイアウォールの設定が完了したら、ファイアウォールの設定が正しく行われているかどうかを確認する。
■3CXには、ファイアウォールの設定をチェックするためのツールが内蔵されている。これは、ファイアウォールチェッカーと呼ばれている。
■ポートが本当に開かれているかどうかをチェックし、ステータスを提供するもの。
■緑色は、ポートが正常に開かれたことを意味する。
■赤はポートが開かれていないことを意味し、その場合はファイアウォールの設定を再度確認する必要がある。
■3CXがファイアウォールを適切に設定したと見なすには、ファイアウォールチェッカーが100%合格する必要がある。それ以下の場合は、失敗とみなされる。
■Firewall Checkerを実行するには、管理コンソールにログインし、ダッシュボードで「Firewall」オプションを選択。スクリーンショットでは、赤色で表示されている。
■チェックされるのはUDPポートのみ。
■SIPとトンネルのTCPトラフィックをチェックすることはない。また、HTTPSポートの状態も確認することがない。
■ファイアウォールチェッカーは、テストを実行するためにPBXのサービスを停止し、終了すると自動的に再起動する。
■本番システムでこのテストを実行すると、アクティブなコールがすべて切断されるので注意が必要。

失敗例

■すべてのテストに失敗したと思われるシステムで実行されたFirewall Checkerの例。これは、結果に明確に記載されている。
 ■失敗の理由が記載されており、トラブルシューティングのためのリンクも提供されている。

有効化(Validation)

■上記はファイアウォールが全く設定されていないか、設定が間違っていることを意味する。
■この場合、どのようにすればよいかわからない場合は、ファイアウォールメーカーのサポートチームに連絡し、必要なポートを適切に開くための手順を教えてもらうとよい。
■Firewallデバイスに関する特別な知識が必要な場合があるため、3CXサポートチームはこのプロセスで支援することはできない。
■VoIPプロバイダーやリモート内線に関連するトラブルシューティングは、まだ意味がない。
■問題は、ファイアウォールの設定に誤りがあるため、ファイアウォールを正しく設定し、ファイアウォールチェッカーに合格してから、問題が解決するかどうかを確認する。
■新規インストールの場合、ファイアウォールチェッカーに合格するまで、VoIPプロバイダ、ブリッジ、リモートエクステンションの作成とプロビジョニングを続行する必要はない。

有効化(Validation) - あと少しだが = まだFALE

■これもFirewall Checkerの結果の一例。
■完全に失敗したわけではないが、完全に成功したわけでもない。
■見てわかるように、ここではSIPサーバーのポート5060とトンネリングプロキシのポート5090はパスしているが、その他はすべて失敗している。
■これはまだFirewall Checkが失敗しているが、正しい方向に進んでいると考えられる。

有効化(Validation)

■手順は進めていくが、設定にサポートが必要な場合は、これ以上進める前にファイアウォールメーカーに相談する。
■上記では、リモート・エンティティは接続されるが、音声に問題がある。

有効化(Validation)- 成功!

■Firewall Checkerの成功結果はこのような感じとなる。

有効化(Validation)- 何がチェックされるのか?

■ファイアウォールチェッカーでは何をチェックしたのか。
■Full Cone NATは正常に設定され、Port Preservationも正しく設定されている。
■SIP ALGもFirewall checkerでテストされたが、検出されなかったので、無効と考えられる。
■TCPのポートのチェックはしていなのでTCPを必要とするポートが正しく開かれていることを確認する。

SIP ALG: 結果に関して

■SIP ALGテストは、ファイアウォールテストに統合されている。無効になっている場合は緑色の結果になる。
■有効になっており、検出された場合は、「検出された」という結果が表示される。これを無効にするには、ファイアウォールを設定する必要がある。
■「失敗」という結果が出た場合は、テストが正常に終了していないことを意味する。3CX Communications System は、SIP ALG 検出器と通信して、合格または不合格の応答を得ることができなかったことを表す。これは、ネットワーク上で SIP ALG が有効であることを意味するものではない。テストをもう一度やり直す必要がある。

■ファイアウォールチェックがどのように行われ、成功/失敗した場合の様子を動画で確認。⇒オリジナルサイトで動画が視聴できます。

3CXのことを詳しく聞きたい。興味があるという方はぜひ、こちらまでお気軽にお問い合わせください。

# 3CX構築・Genesys構築のエキスパート CCアーキテクト (cc-arc.com)

●VoIP情報満載のBlogはこちら
 ⇒ 
https://blog.cc-arc.com/

●FAQ満載のサポートサイトはこちら
 ⇒ 
https://portal.cc-arc.com/

●マニュアル掲載満載のリソースサイトはこちら
 ⇒ 
https://resource.cc-arc.com/resource/

●動画によるご紹介はこちら
 ⇒ 
Youtube

●SNSでも情報発信中!ぜひご登録を!
 ⇒ 
Twitter Linkdin Facebook

目次記事はこちらです

目次記事へのリンク

#3CX , #SIP , #PBX , #IP -PBX , #VoIP , #IPフォン , #IP電話 , #SIPフォン ,
#SIP電話 , #SBC , #ひかり電話 , #OG , #ISDN-GW , #ATA , #コールセンター


この記事が気に入ったらサポートをしてみませんか?