web-dev-qa-db-ja.com

Windowsファイアウォールルールのみを使用してVPN接続が切断された場合は、インターネット接続を切断します

コンピューターのVPN接続が切断されたときに、システム上のアプリやサービスがインターネットにアクセスできないようにする必要があります。基本的に私がここでやろうとしているのは、システム上のすべてのアプリがVPN経由でのみインターネットにアクセスでき、何らかの理由でVPN接続が切断された場合にタイムアウトになるようにすることです。

これは、サードパーティのアプリを使用せずに、Windowsファイアウォールでファイアウォールルールを使用することによってのみ実現したいと考えています。

これを実現するために、 "ブラックホール"と呼ばれる手法があることを昔どこかで読みましたが、詳細な情報は見つかりませんでした。 Windowsファイアウォールでルールを設定してこれを実現する方法を説明するインターネット。

編集:

@AppleoddityとBinarusの提案に従ってシステムを構成しようとしましたが、今のところ成功していません。

質問をより明確にするために編集しました。

サードパーティキルスイッチ/ VPNクライアント/ソフトウェアをインストールする必要がない限り、問題ありません。

特定のアプリ(たとえばビットトレントクライアント)がインターネットにアクセスできないようにする方法について知りたいのですが VPN接続は、なんらかの理由で切断されます。

ここで、私が使用しているVPNクライアントはネイティブのWindows 7 VPNクライアントであり、(L2TP、SSTP、さらにはPPTPを介して)接続するVPNサーバーのIPアドレスは常には変更されません。ルーターに接続されている有線LAN接続を使用しています(ダイヤルアップする必要はありません)。

VPNに接続しているとき、サーバーは常に65.23.78.56になります(たとえば)。つまり、VPNに接続するたびにIPは変更されませんが、静的なままです。そうすれば、設定がはるかに簡単になると思います。

VPNプロバイダーが提供するVPNクライアントを使用したくないので、もう一度、これは私が求めていることをより具体的にするはずです。

私は非常に特定の答えを求めています。システムへのインターネットアクセスを確実にするために正確に何をする必要があるかを説明していますVPNがドロップした瞬間に、実際のIPを外部に公開せずに、すぐにが強制終了されます。

IPが漏洩しない限り、接続がタイムアウトしても問題ありません。

言い換えると、VPN接続が切断された場合に、アプリが実際のIPを使用してインターネットにアクセスしないことを100%保証するインターネット「キルスイッチ」の構成を探しています。

これまでの回答ありがとうございます。

1
PeterG

@Appleoddityが完全に正しいかどうかはわかりませんが、Windowsファイアウォールを使用して実行することはできません。以下の説明はWindows7 Proに関するものであり、私はWindows 10を知りませんが、一般的な考え方はすべてのWindowsバージョンで機能するはずであることに注意してください。

「セキュリティが強化されたWindowsファイアウォール」の管理コンソールでファイアウォールルールをダブルクリックすると、ルールのプロパティを確認(および設定)できるダイアログボックスが開きます。そのダイアログで、[詳細設定]タブを選択し、[インターフェイスの種類]セクションの[カスタマイズ]ボタンを押します。これで、ルールを適用するインターフェイスタイプを選択できます。

3つのインターフェースタイプがあります。以下はヘルプファイルからのものです。

ローカルエリアネットワークこのルールは、コンピューターで構成した有線ローカルエリアネットワーク(LAN)接続を介して送信される通信にのみ適用されます。

リモートアクセスこのルールは、コンピューターで構成した仮想プライベートネットワーク(VPN)接続やダイヤルアップ接続など、リモートアクセスを介して送信される通信にのみ適用されます。

ワイヤレスこのルールは、コンピューターで構成したワイヤレスネットワークアダプターを介して送信される通信にのみ適用されます。

したがって、ファイアウォールルールのみを使用して目標を達成したい場合は、おそらく(この順序で、インターネットに関連するルールのみのすべてのステップ(つまり、内部LANではない)トラフィック):

  • アウトバウンドルールを削除する
  • 「ワイヤレス」および「ローカルエリアネットワーク」インターフェースタイプのすべてのトラフィックをブロックするアウトバウンドルールを作成します
  • 「リモートアクセス」インターフェースタイプのすべてのトラフィックを許可するアウトバウンドルールを作成します

インバウンドトラフィックに対しても同様のプロセスを実行します。

私はまだこれを試していません(そして現時点ではできません)ことに注意してください。ただし、Windowsが実際にその接続をVPN接続として認識するようにVPNクライアントが動作する場合は、上記の方法が機能するはずです。

そうは言っても、これは良い方法ではなく、別の方法で目標を達成しようとする必要があるという点で、@ Appleoddityに同意します。

1
Binarus

ファイアウォールルールだけでは不可能です。 VPN接続に基づいてファイアウォールルールを動的に追加および削除するには、少なくともスクリプトまたはタスクが必要です。

私はこのようにはしません。

私はこのようにします:

  1. VPNリモートエンドポイントIPへの静的ルートを作成し、ゲートウェイIPアドレスを介してルーティングする必要があることを指定します。
  2. ネットワークインターフェイスのtcp/ip設定からデフォルトゲートウェイを削除します。
  3. すべてのトラフィックにリモートVPNゲートウェイを使用するオプションを有効にします。これはVPNクライアント固有ですが、このオプションはWindowsVPNに存在します。これは、スプリットトンネリングの無効化とも呼ばれます。

または、高度なサードパーティのVPNクライアントを使用している場合は、セキュリティで保護されていないトラフィックをブロックするオプションを探します。 CiscoAnyConnectはこれを行うことができます。

0
Appleoddity