2016 年 12 月 2 日
登 大遊
2016 年 12 月 2 日 (金) 7:40 頃から、SoftEther VPN プロジェクトにおいて学術実験目的で運用している以下のサービスに障害が発生しています。
このことにつきましては、これらの学術実験サービスを利用されている方々にご迷惑をおかけしており、誠に申し訳ございません。このページでは、障害の状況と回避策をお知らせします。障害が回復した場合も、このページでできるだけ早くお知らせします。
なお、今回の障害により影響を受けられているのは、上記のような学術実験サービスを経由して VPN 通信を実現されている一部のユーザーの方々に限られます。
SoftEther VPN Server オープンソース版、または SoftEther VPN Server オープンソース版をもとに開発された製品版 PacketiX VPN Server の通常の利用方法 (これらの学術実験サービスの中央サーバに依存しない方法) で使用されている一般のユーザの方々の VPN 通信については、一切影響を受けません。
進捗状況の更新
- 2016/12/02 13:30
DDoS 攻撃が長時間終息しないことから、一部のサービスのサーバーを別のネットワークに移動する作業を実施しています。
すでに SoftEther Dynamic DNS (DDNS) サービスの回復手順を開始しました。DDNS サービスについては、段階的に復旧する見込みです。
その他のサービスについては、回復次第ここに掲載します。
- 2016/12/02 14:07
いくつかの対策を行ない、4 サービスとも復旧を確認しました。しかし、原因の性質上、今後も再発する可能性がありますので、しばらくの間は状況を注視いたします。
- 2016/12/02 14:40
DDNS サービスについて、新たにネットワーク分散を図り、特定のネットワークで障害が発生しても、サービスが継続して動作するような対策を行いました。また、複数の DDNS のコンテンツサーバを異なる物理的サーバ設備に設置し、特定の物理的サーバ設備に障害 (ネットワークや電源などの問題) が発生してもサービスを提供継続できるようにしました。今後、DDNS については以前よりも障害が発生しにくくなりました。
発生原因について
上記の学術実験サービスのサーバを収容するネットワークが、インターネット上から、国際的かつ大規模なサイバー攻撃 (数十 Gbps を超える DDoS 攻撃) を受けていることが原因です。
このサイバー攻撃は、不正アクセスや脆弱性を突いた攻撃などではなく、攻撃者が精巧な仕組みを用いて、世界中から、トラフィックを大量に (数十 Gbps 以上も) ターゲットのコンピュータに対して送付してくることにより発生しているものであり、物理的なテロ攻撃のように、一方的に行われるものです。現在、一般に利用可能な防御技術においては、このような攻撃による被害を受けることは、防ぐことはできません。このような大量のトラフィックの送付は、上流の回線帯域を占有するものであり、いかなるパケット・フィルタやファイアウォールであっても、それらのファイアウォールの所まですでにパケットが到達してしまっている以上、攻撃を検出して遮断をすることができません。
このサイバー攻撃による本学術実験サービスの障害は、不可抗力によって発生しているものであり、本学術実験サービス側に責任があるような理由 (たとえば、本学術実験サービスのサーバーシステムやネットワーク上に何らかの問題があるなど) で発生したものではありません。本学術実験サービスのサーバーシステムやネットワークにいかなる問題がない場合であっても、このように大量のトラフィックを送付される手法のサイバー攻撃を防ぐことは、現在の技術水準においては、根本的に不可能です。このことは、人類による発明である現在のインターネット技術およびサイバー攻撃に対する防衛技術の限界を示しています。今後、このような攻撃に対する防衛技術に係る技術水準の引き上げが必要です。
今回受けているサイバー攻撃に係るトラフィックの状況およびパケットの内容を、図 1 および 図 2 に示します。占有帯域は、数十 Gbps 程度と試算しております。
図 1: サイバー攻撃の状況
図 2: 一方的に送付されてくる DDoS パケットの内容
解決の見込みについて
今回の DDoS 型のサイバー攻撃は、匿名の攻撃者の責任で引き起こされているものであり、本サービスの運用側には、このサイバー攻撃を終焉させるための責任および取り得ることができる根本的な解決策はありません。
一般に、このような DDoS 型のサイバー攻撃は、通常、数時間程度で終了し、自然回復すると思われます。状況を注視するとともに、万一、サイバー攻撃が長時間継続する場合は、上記 4 サービスを一時的に他の IP ネットワークに移動するなどの緩和策を検討する予定です。ただし、これらは根本的な解決にはなりません。
また、長期的には、DDoS 攻撃を受けた場合でもこれを自動回避する根本的な対策や、関係する研究開発についても取り組んでいく予定です。
根本的な解決は、オープンソース版「SoftEther VPN Server」をご利用の方、および、SoftEther VPN Serverを元に製品化されている製品版「PacketiX VPN Server」をご利用の方で、今回の学術実験サービスの障害による影響を受けられている方の側で行うことが可能です。このページでは、一時的または恒久的な回避策について説明します。
今回の障害の影響範囲について
今回のサイバー攻撃により、オープンソース版「SoftEther VPN Server」をご利用の方、および、SoftEther VPN Serverを元に製品化されている製品版「PacketiX VPN Server」をご利用の方のうち、上記 4 種類の学術実験サービスのいずれかを利用されて通信をされている方に限り、これらのサービスの仲介を受けた通信を行うことができないという影響が発生しています。これらの学術実験サービスは、無償・無保証のサービスであり (注 1)、「PacketiX VPN Server」製品に含まれるものではありませんが、PacketiX VPN Serverにはこれらのサービスを利用するクライアント機能が含まれています。
これらの学術実験サービスの一部のユーザの皆様のうち一部の方々には、これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されている方もいらっしゃるかも知れません。しかし、これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されることは、禁止されていませんが、今回のような障害が発生した場合にその安定性が損なわれる問題が発生します。
オープンソース版「SoftEther VPN Server」または製品版「PacketiX VPN Server」を使用して、商業用途などの高い安定性が求められる用途のために、外部要因による影響を受けない安定した VPN を構築されたい場合は、以下の回避策を参考としていただき、これらの学術実験サービスに依存しないような設定を行っていただくことをお勧めします。
回避策について
NAT トラバーサルサービスまたは VPN Azure サービスを経由して通信をすることができない原因およびその回避策
VPN サーバとなっているコンピュータが、NAT やファイアウォールの背後に設置されており、NAT やファイアウォールにおけるポートの外部に対する開放を行っていない場合、問題が発生します。
オンラインマニュアルの共通事項の説明のとおり、通常、VPN サーバとなっているコンピュータを、外側がグローバル IP アドレスを持った NAT や、ファイアウォールの内側のプライベート IP ネットワーク上に VPN Server を設置する場合は、NAT やファイアウォールの設定を変更して、特定のポート番号に対する TCP/IP 接続のみ、プライベート側の VPN Server をインストールしたサーバーコンピュータに転送するように設定する必要があります。
通常、学術実験サービスである NAT トラバーサルサービスまたは VPN Azure サービスを利用されていた場合は、上記のような NAT またはファイアウォールの設定が正しく行われていない場合でも、NAT トラバーサルサービスまたは VPN Azure サービスを経由してインターネット上から VPN サーバに接続をすることができる場合があります (この際、Windows 版の GUI クライアントでは、NAT トラバーサルサービスは恒久的な安定動作に耐えることができないため、本来の手法である NAT やファイアウォールにおけるポート開放を行うよう促すメッセージが表示されます)。
しかし、NAT トラバーサルサービスまたは VPN Azure サービスに今回のような障害が発生している場合は、NAT トラバーサルサービスまたは VPN Azure サービスを経由して、NAT やファイアウォールの背後にある VPN サーバがインターネット側からの接続を受け入れることができません。
解決策としては、以下の 2 つの方法があります。
- NAT トラバーサルサービスまたは VPN Azure サービスに関する障害が発生するまで待つ (障害が回復すれば、自動的に接続できる状態となります。しかし、今後もこれらのサーバに対する外部からの到達性は、NAT トラバーサルサービスまたは VPN Azure サービスに依存することとなり、再び障害が発生すると、再度、通信に影響が発生することがあります)。
- オンラインマニュアルの手順どおり、VPN サーバとなっているコンピュータを、外側がグローバル IP アドレスを持った NAT や、ファイアウォールの内側のプライベート IP ネットワーク上に VPN Server を設置する場合、NAT やファイアウォールの設定を変更して、特定のポート番号に対する TCP/IP 接続のみ、プライベート側の VPN Server をインストールしたサーバーコンピュータに転送するように設定する。これにより、NAT トラバーサルサービスまたは VPN Azure サービスに依存することはなくなりますので 障害が発生している場合でも、影響を受けることなく通信が可能です。
SoftEther Dynamic DNS (DDNS) サービスを使用して通信をすることができない原因およびその回避策
DDNS サービスは、VPN サーバを非固定の IP アドレス上で動作させる際に便利です。
ドメイン名が *.softether.net の DDNS サービスは、学術実験目的で無償かつ無保証で提供されております。今回のケースのように本 DDNS サービスに障害が発生している場合は、その間、ドメイン名が *.softether.net の DDNS ホスト名を使った名前解決ができなくなります。
一時的な解決策としては、以下のような方法があります。
- SoftEther Dynamic DNS (DDNS) サービスに関する障害が発生するまで待つ (障害が回復すれば、自動的に接続できる状態となります。しかし、今後もこれらのサーバに対する外部からの到達性は、DDNS サービスに依存することとなり、再び障害が発生すると、再度、通信に影響が発生することがあります)。
- VPN クライアント側で、VPN サーバの DDNS ホスト名の代わりに、IP アドレスを指定する。
- SoftEther Dynamic DNS (DDNS) 以外の他の DDNS サービスを利用する。
恒久的な対策としては、以下のような方法があります。
- VPN Server で固定 IP アドレスを使用する。
- VPN Server で非固定の IP アドレスを使用したい場合は、複数の DDNS サービスを組み合わせて利用し、冗長性を確保する。冗長性の確保の方法としては、単に DDNS サービスを複数利用しておき、障害発生時には接続元の側で切替える方法のほか、独自のドメインの CNAME レコードを作成し、いずれかの DDNS サービスのホスト名を指定しておいた上で、一方の DDNS サービスで障害が発生した場合には、正常動作している別の DDNS サービスのホストを CNAME レコードで指し示すようにする。
PacketiX.NET 学術実験サービスを使用して通信をすることができない原因およびその回避策
PacketiX.NET 学術実験サービスのレンタル仮想 HUB を使用している場合、PacketiX.NET サービスのサーバが今回影響を受けている IP ネットワークに属していることから、PacketiX.NET の VPN サーバクラスタとの間で通信することができなくなっています。
一時的な解決策としては、以下のような方法があります。
- PacketiX.NET 学術実験サービスのレンタル仮想 HUB に関する障害が発生するまで待つ (障害が回復すれば、自動的に接続できる状態となります。しかし、今後もこれらのサーバに対する外部からの到達性は、PacketiX.NET 学術実験サービスのレンタル仮想 HUB に依存することとなり、再び障害が発生すると、再度、通信に影響が発生することがあります)。
一時的または恒久的に利用できる解決策としては、以下のような方法があります。
- PacketiX.NET 学術実験サービスを使用する代わりに、自分で SoftEther VPN Server を用いて VPN サーバを立ち上げて管理をする。ISP の回線を用いてサーバを立てるほか、一般的なパブリック・クラウド上の Linux や Windows 環境上で VPN Server を立ち上げることは、容易に可能です。
上記学術実験サービスについて (ご注意・免責事項)
以下の 4 つの学術実験サービスは、学術研究を目的として、無償かつ無保証で提供されている、開発途上のサービスです。
これらの学術実験サービスのクライアント機能は、SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品に組み込まれています。
これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されることは、禁止されていませんが、今回のような障害が発生した場合に安定性上の問題が発生するなどのリスクがあります。商業用途などの高い安定性が求められる用途においては、上記の回避方法などにより、これらの学術実験サービスに依存せずに VPN 接続が行われるように対策されることをお勧めします。
しかし、これらの学術実験サービスは SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品の一部ではありません。これらの学術実験サービスを経由すれば、NAT やファイアウォールの背後にある VPN サーバに、NAT やファイアウォールの設定を変更することなく接続することができますが、これらの学術実験サービスに今回のような障害が発生している期間中は、このような接続ができなくなります。
このように、これらの学術実験サービスに依存する形で VPN を構築している場合は、これらの学術実験サービスに今回のような不可避な障害が発生した場合は、毎回、このような VPN 通信も影響を受けることになります。
SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品は、自前で設置する VPN Server のほかは、いかなる中央サーバサービスにも依存しない VPN を構築することができるソフトウェアです。SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品は、上記に記載した回避策により、これらの学術実験サービスに依存することなく VPN 通信を実現することが可能です。
注 1
「ダイナミック DNS」、「NAT トラバーサル」および「VPN Azure」は、学術実験目的で研究開発され、運営されている実験的なサービスです。
SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品の「重要事項説明書」(インストール時に表示、またはバイナリファイルにテキストファイルて同梱) の 3.5 節に記載されているとおり、これらのサービスはすべて無料でご利用いただけますが、これらのサービスは一切の保証がない状態で提供されるものです。実験の休止、中止や実験中の技術的問題の発生によってサービスが中断する場合があります。その場合は、ユーザーはサービスを利用できなくなります。ユーザーはこのようなリスクがあること、およびそのリスクをユーザー自身が負担することを承諾いただいた上でこれらのサービスをご利用ください。
このような性質を許容することができない用途 (商業目的など) で SoftEther VPN または PacketiX VPN をご利用される場合は、上記の手法により、これらの学術実験サービスに依存しない方法で VPN ソフトウェアをご利用ください。