Teams匿名会議に参加するためのみに必要なURL・IPフィルタ解除について

かなりきついWebフィルタ制限されている環境下で、Teamsの匿名会議に参加することは認めたいが、どこを解放すればよいか?こんな調査をすることになったのでまとめておきます。

今回はWebフィルターとそのフィルターログについてはSynology DS215Jを使用します。


要件


以下が可能なこと。
  1. Teamsにサインさせない(他テナントからのゲスト招待を受け入れさせたくない)
  2. 匿名参加者がチャットからファイル共有できないこと
  3. チャット
  4. 双方向ビデオ・音声通話
  5. 画面共有(匿名参加側も可能なこと
  6. 背景カスタマイズ
※1については、今回はそもそもマイクロソフトアカウントもo365組織アカウントも持たない人が利用することを想定しているため、テナント制限を使うことで解決する方式を検討しません。

テナント制限の参考

使用するSynplogy DS215Jのツール


WebフィルターとしてProxyServer、フィルタログとしてログセンターを使用します。

ログセンターの準備


受信中のログから作成を選びます。名前は適当にProxyLogとします。それ以外はデフォルト値にしておきます。

ログの受け口ができました。


ProxyProxyServerの設定


我が家の環境ではポート8080は別途使用しているので、ここでは8081に設定します。ログは上記で作ったログセンターに転送するように設定します。Synplogy DS215JのIPアドレスは192.168.11.39です。UDP:514で上記で作成したログの受け口に紐づくものと思われます。

まず、かなり厳しいWebフィルターとうことなので、全部ブロックし、ホワイトリスト方式にします。アクセスからallow(許可)、deny(拒否)を設定します。下記はTeamsとは関係ないですが、設定のサンプルです。

Office 365 の URL と IP アドレスの範囲Skype for Business Online および Microsoft Teamsの最適化必須、許可必須、既定値必須のみ設定します。Commonを入れるとサインインできてしまいます。

※URLとIPアドレスの範囲は随時更新されるようなので、ウォッチし、適宜加除する必要があるようです。




下記はSynologyのProxyServerでなくSquidのACLリストとなります。Synologyを使ってもSquidを使っても結果は同じです。

※SynologyのProxyServerは設定値をエクスポートできないので。
※筆者は下記許可リストに対して何の責任も負えませんし、問い合わせにも答えられません。
Skype for Business Online および Microsoft Teamsの重複値は除外しています。
※IPv6は許可対象にしていません。(特に理由はありませんがうまくいったので。)

2020年5月3日現在

#for Teams
acl whiteListIP src 13.107.64.0/18
acl whiteListIP src 52.112.0.0/14
acl whiteListIP src 52.120.0.0/14
acl whiteList dstdomain *.lync.com
acl whiteList dstdomain *.teams.microsoft.com
acl whiteList dstdomain teams.microsoft.com
acl whiteListIP src 13.70.151.216/32
acl whiteListIP src 13.71.127.197/32
acl whiteListIP src 13.72.245.115/32
acl whiteListIP src 13.73.1.120/32
acl whiteListIP src 13.75.126.169/32
acl whiteListIP src 13.89.240.113/32
acl whiteListIP src 13.107.3.0/24
acl whiteListIP src 51.140.155.234/32
acl whiteListIP src 51.140.203.190/32
acl whiteListIP src 51.141.51.76/32
acl whiteListIP src 52.163.126.215/32
acl whiteListIP src 52.170.21.67/32
acl whiteListIP src 52.172.185.18/32
acl whiteListIP src 52.178.94.2/32
acl whiteListIP src 52.178.161.139/32
acl whiteListIP src 52.228.25.96/32
acl whiteListIP src 52.238.119.141/32
acl whiteListIP src 52.242.23.189/32
acl whiteListIP src 52.244.160.207/32
acl whiteListIP src 104.215.11.144/32
acl whiteListIP src 104.215.62.195/32
acl whiteListIP src 138.91.237.237/32
acl whiteList dstdomain *.broadcast.skype.com
acl whiteList dstdomain broadcast.skype.com
acl whiteList dstdomain quicktips.skypeforbusiness.com
acl whiteList dstdomain *.sfbassets.com
acl whiteList dstdomain *.urlp.sfbassets.com
acl whiteList dstdomain skypemaprdsitus.trafficmanager.net
acl whiteList dstdomain *.keydelivery.mediaservices.windows.net
acl whiteList dstdomain *.msecnd.net
acl whiteList dstdomain *.streaming.mediaservices.windows.net
acl whiteList dstdomain ajax.aspnetcdn.com
acl whiteList dstdomain mlccdn.blob.core.windows.net
acl whiteList dstdomain aka.ms
acl whiteList dstdomain amp.azure.net
acl whiteList dstdomain *.msedge.net
acl whiteList dstdomain compass-ssl.microsoft.com
acl whiteList dstdomain *.mstea.ms
acl whiteList dstdomain *.secure.skypeassets.com
acl whiteList dstdomain mlccdnprod.azureedge.net
acl whiteList dstdomain videoplayercdn.osi.office.net
acl whiteList dstdomain *.skype.com
acl whiteList dstdomain statics.teams.microsoft.com
#for install
acl whiteList dstdomain *.mobile.pipe.aria.microsoft.com
acl whiteList dstdomain mobile.pipe.aria.microsoft.com
acl whiteList dstdomain statics.teams.cdn.office.net
acl whiteList dstdomain urlshortener.teams.microsoft.com
#for chat
acl whiteList dstdomain *.chatsvcagg.teams.microsoft.com
acl whiteList dstdomain chatsvcagg.teams.microsoft.com
acl whiteList dstdomain .api.cc.skype.com
acl whiteList dstdomain .chatsvcagg.teams.microsoft.com
acl whiteList dstdomain apac.ng.msg.teams.microsoft.com
acl whiteList dstdomain *.apac.ng.msg.teams.microsoft.com
acl whiteList dstdomain .browser.pipe.aria.microsoft.com
acl whiteList dstdomain .as-prod.asyncgw.teams.microsoft.com
acl whiteList dstdomain .as-api.asm.skype.com
acl whiteList dstdomain presence.teams.microsoft.com
acl whiteList dstdomain config.teams.microsoft.com
acl whiteList dstdomain go.trouter.teams.microsoft.com
acl whiteList dstdomain api.flightproxy.teams.microsoft.com
acl whiteList dstdomain .teams.microsoft.com
acl whiteList dstdomain tr.teams.microsoft.com
acl whiteList dstdomain southeastasia.notifications.teams.microsoft.com
acl whiteList dstdomain v20.events.data.microsoft.com
acl whiteList dstdomain japanwest-prod.notifications.teams.microsoft.com
acl whiteList dstdomain eastasia.notifications.teams.microsoft.com
acl whiteList dstdomain iecvlist.microsoft.com

上記の#for installを設定しないと下図のようにインストールが失敗したように表示されます。ただし、インストールは成功していますので匿名会議は利用可能です。

また、#for chatを設定しないと下図のように匿名参加側のチャットのボタンがグレーアウトしてしまい、チャットできません。もし、匿名参加側にチャットをさせたくなければ、これを解放しなければOKです。なお、匿名参加者を「発表者」に昇格させてもグレーアウトは変わりません。


#for installも#for chatもプロキシのログからDeniedを目視で追って特定したURLです。レンジで指定すべき値、ワイルドカードで指定すべきだった場合を考慮すると、不確実性を含んでいます。


背景のカスタマイズは何度かTeamsを再起動しているうちに(もしかしたら実行後しばらくして)選択可能になります。

Teamsにサインイン可能なアカウントでサインインを試みても下図のとおり失敗します。


会議のオプションも匿名参加者はできません(Webフィルターとは関係ないですが




結果


スクリーンショットはありませんが、要件どおりに
  • 匿名会議とみ参加できた
  • チャットできた
  • ビデオ通話・音声通話できた
  • 背景カスタマイズできた(グラフィックかCPUかはわかりませんが、性能の低いPC(例えばLenovo YOGA BOOK)だとできない(背景カスタマイズボタンが表示されない)ようです。)


このブログの人気の投稿

ダブルクォーテーションで括られたCSVカ​ンマ区切りテキストファイルを SQL Server で Bulk Insert する方法

PowerShellでTSV/CSVの列を絞り込んで抽出し、(先頭/行末)からN行出力する

IKEAの鏡を壁に取り付ける