信頼性が高くスケーラブルなVPNセキュアトンネリング

投稿者 Zevenet | 18年2020月XNUMX日

概要

インターネットプロバイダーを介してインターネットに接続する場合、このプロバイダーが接続の安全を確保するためにすべてを考慮に入れることは間違いありませんが、プライベートサービスに接続する場合はどうでしょうか。 公共インフラストラクチャのクライアントからサーバーへのトラフィックが安全であることをどのように保証しますか? いつですか VPN サービスまたは 仮想プライベートネットワーク 技術が必要です。 両方のノード間で安全な接続が確立され、外部エージェントがトラフィックを傍受して機密情報を取得しないようにします。

VPN サービスは、次のようないくつかの機能を提供します。

機密性:誰かがあなたのデータを読むのを防ぎます。 これは暗号化で実装されます。
認証:ポイントツーポイントを作成するメンバーが正当なデバイスであることを確認します。
整合性:転送中にVPNパケットが変更されていないことを確認しています。
アンチリプレイ:誰かがトラフィックをキャプチャして再送するのを防ぎ、正当なデバイス/ユーザーに見せかけようとします。

市場ベースのプライベートおよびオープンスタンダードにはさまざまな種類の実装があります。この記事では、オープンソリューションに焦点を当てます。以下を参照してください。

IPSEC:インターネット上のVPNインストールの標準のデファクトになり、多数の暗号化アルゴリズムを実装しており、主要な脆弱性は確認されていません。
OpenVPN:非常に人気がありますが、標準に基づいていません。カスタムセキュリティプロトコルを使用し、OpensslでのTLS / SSLと多数の暗号化アルゴリズムをサポートしています。
L2TP:これはPPTPの拡張であり、セキュリティ層としてIPSecを使用できます。これは、以前は主にISPによって使用されていました。 現在、より優れたオプションがあり、パフォーマンスが向上しています。
ワイヤーガード:非常に高速なVPNであり、非常に簡単にインストールできます。すでにLinuxカーネルに含まれている暗号化アルゴリズムを使用し、UDPを使用し、任意のポートで構成できます。

スケーラブルなVPN環境

この記事の目的は、高可用性設定を備えた負荷分散サービスを作成する方法を説明することです VPN とのサービス ZEVENETロードバランサー。 この記事は ワイヤーガード、ポートを使用 51820 UDP、ただし、別のプロトコルとポートを使用して他の同様のソリューションに拡張できます。

この記事では、 VPN サーバーは省略されますが、規模に応じて以下の点を考慮する必要があります VPN 高可用性で正常に:

挽き目 VPNサーバー構成ファイルを複製する必要がある 全部で VPN バランスをとるサーバー。
VPNクライアント トラフィックはNATする必要があります VPNサーバーでは、APNクライアントからのすべての受信接続と送信接続がプール内の同じVPNサーバーを経由するようにします。

次の図は、到達するスケーラブルなアーキテクチャを示しています。

VPN Wireguardアーキテクチャ

1. ツー ワイヤーガード 同じ構成を共有するサーバー。
2.ワイヤーガード サーバーは同じプライベートネットワークを作成します 192.168.2.0 / 24.
3.VPN クライアントはのIPでNATされます VPN 接続先のサーバー。
4. クライアントはXNUMXつのパブリックIPに接続します vpn.company.com51820 UDP、この接続はに転送されます ゼベネット (192.168.100.10).
5. ゼベネット 利用可能なクライアント接続の負荷を分散します VPN サーバー、そして最後に、トンネルはサーバーのXNUMXつに対して作成されます。

この記事では、このVPNスケーラブルサービスを構成する2つの方法について詳しく説明します。 ゼベネット:XNUMXつ Web GUI そして別の コマンドラインインターフェイス.

ZEVENETによるVPN仮想サービス構成

このセクションでは、コマンドラインインターフェイスを使用して適切な構成に到達する方法について説明します。

それを考慮してください VPNプロトコル 必要とする 持続セッション 同じクライアントが同じに接続されていることを確認するための機能 バックエンド このクライアントがトラフィックを生成していなくても、一定期間。

作成するには VPN仮想サービスと呼ばれる新しい農場 VPNLB   l4xnatプロファイル 聞いている 51820 UDP にバインド VPN仮想IP 192.168.100.10sNAT モード、ファイアウォールは次のコマンドでクライアントからの接続をNATします:

zcli farm create -farmname VPNLB -vip 192.168.100.10 -vport 51820 -profile l4xnat

またはWeb GUI経由で:

修正します グローバルパラメータ 使用するための農場の UDP プロトコル、次に構成 持続セッション by ソースIP そしてシンプルな 負荷分散アルゴリズム by 重さ.

zcli farm set VPNLB -protocol udp -nattype nat -persistence srcip -ttl 1800 -algorithm weight

またはWeb GUI経由で:

XNUMXつ追加 バックエンドサーバー192.168.100.11192.168.100.12 既に作成されたファームに VPN 負荷分散サービス。 ポート として構成する必要はありません l4xnat と同じものを使用します 仮想ポート 構成されました。

zcli farm-service-backend add VPNLB default_service -ip 192.168.100.11
zcli farm-service-backend add VPNLB default_service -ip 192.168.100.12

またはWeb GUI経由で:

正常なバックエンドのみを選択するために、ポートを確実にするバックエンドの簡単なヘルスチェックを設定しましょう 51820 UDP バックエンド側で利用可能です。 呼び出された現在のジェネリックおよびプリロードされたヘルスチェックのコピーを作成します check_udp そしてそれを編集します。 変更することをお勧めします インターバル 〜へのフィールド 21 各ヘルスチェックは タイムアウト of 10秒ので、 10秒* 2つのバックエンド+ 1秒= 21秒.

zcli farmguardian create -copy_from check_udp -name check_udp_vpn
zcli farmguardian set check_udp_vpn -description "VPN check for UDP 51820" -interval 21

またはWeb GUI経由で:

最後に、すでに作成されているヘルスチェックを追加します check_udp_vpn 現在の農場へ VPNLB.

zcli farm-service-farmguardian add VPNLB default_service -name check_udp_vpn

IPDSモジュールによるDDoS攻撃の軽減

VPNサービスは通常、リモート接続を利用して組織のネットワークに侵入するために、攻撃やサイバーセキュリティの脅威の標的になります。

そのため、スケーラブルなものを完成させることをお勧めします VPN 外部の攻撃から組織を保護するセキュリティシステムを備えたサービス。 現在のセクションでは、 ゼベネット IPDSモジュール そして緩和する DDoS攻撃 for パブリックVPNサービス 非常に簡単に。

このセクションでは、XNUMX種類の保護について詳しく説明します。この種類のサービスでは、より良い結果が得られます。 ホワイトリスト接続制限.

特定のホワイトリストからパブリックVPNサービスへのアクセスを許可する

の使用法 ブラックリスト/ホワイトリスト クライアントリストが公開されていることを確認できるサービスで使用できます。 VPNサービス 特定の国の組織で在宅勤務を許可する。

のホワイトリストを設定するには ドイツ 他からのトラフィックを拒否する IPアドレス 国の範囲、次を適用してください:

1. IPDS>ブラックリストに移動します ブラックリストを見つけます geo_ES_Germany。 それから 編集 このブラックリストルールとポリシーフィールドを 許可する ホワイトリストとして使用されます。
2. 同じリストでタブに移動します 農場 農場を移動します VPNLB コラムから 利用可能な農場 〜へ ファームを有効にする.
3. 押します: 遊びます に含まれるアイコン アクション ホワイトリストを有効にします。
4. 次のURLに行きます。 IPDS>ブラックリスト ブラックリストを見つけます 全て、タブに移動 農場 農場を移動します VPNLB 列から 利用可能な農場 〜へ ファームを有効にする.
5. 押します: 遊びます のアイコン アクション ブラックリストを有効にします。

この構成では、XNUMXつのホワイトリストが geo_ES_Germany すでにプリロードされています ゼベネット そのような国のすべてのIP範囲で、ファームに追加されます VPNLB という名前の追加のブラックリスト 全て 残りのIPアドレスがファームに追加されるため、クライアントIPがドイツのどの地域でも一致しない場合は、ドロップされます。

接続制限付きのパブリックVPNサービスへのアクセスを許可する

この種を適用するために DDoS保護 たとえば、公共サービスの仕組みを知ることをお勧めします。 ワイヤーガード 使用のみ クライアントごとにXNUMXつのUDP接続。 したがって、同じ送信元IPから複数の同時接続を受信した場合、複数の在宅勤務者がトラフィックをマスカレードしているNATの背後に接続しているか、またはトラフィックに関連していると考えられます。 UDPフラッド攻撃。 いずれの場合も、ソースIPあたり10を超える接続は正当なトラフィックではないと理解できます。

ソースIPごとの同時接続の制限を構成するには、 VPN仮想サービス 以下を行ってください:

1. 次のURLに行きます。 IPDS> DoS> DoSルールの作成、名前で新しいルールを作成 limit_per_source_IP 選択 ルールタイプ ソースIPごとの合計接続制限 を押し 作ります.
2. ルール編集フォームで、必要な同時接続制限をフィールドに入力します 送信元IPあたりの総接続数の制限、 私たちの場合には 10 を押し 送信.
3. タブに移動 農場 農場を移動します VPNLB 列から 利用可能な農場 〜へ ファームを有効にする.

この構成では、ソースIPあたりの同時接続数を10に制限しています。10を超えるVPN接続を確立しようとするクライアントIPは信頼していません。 複数のクライアントがパブリックNATを介して接続を実行しないようにすることができる場合は、 limit_per_source_IP 1だけに設定できます。

スケーラブルで可用性の高い安全なVPNサービスを ゼベネット!

上の共有:

GNU Free Documentation Licenseの条項に基づくドキュメンテーション。

この記事は役に立ちましたか?

関連記事