pfSenseでWireGuardVPNサーバーを構成する方法

pfSenseのWireGuardVPNサーバー

ワイヤガード VPN は、仮想プライベートネットワークを作成するための新しい堅牢で非常に高速なプロトコルです。この記事では、OpenVPNまたはIPsecの速度を2.5.0倍または2倍にする方法について説明しました。 この新しいVPNプロトコルは、消費するリソースが非常に少なく、接続が非常に高速であるため、スマートフォン、タブレット、ラップトップなどのモバイルクライアントを使用したリモートアクセス構成に最適です。 バージョン2.5.0のpfSenseオペレーティングシステムには、IPsec、LXNUMXTP、およびOpenVPNとともに、この新しいVPNが正式に組み込まれています。 今日は、リモート接続するためにpfSenseXNUMXでWireGuardVPNを最初から構成する方法を紹介します。

WireGuardVPNの機能

WireGuardVPN は非常に軽量なソフトウェアであり、VPNトンネルをすばやく簡単に構成できます。デフォルトでは、さまざまな非対称、非対称、またはハッシュ暗号化アルゴリズムを選択することなく、最新の暗号化を利用します。デフォルトでは、安全です。他のVPNプロトコルとは異なり、デフォルトではスイートです。 WireGuardの目標は 最高のVPN 家庭用とビジネス用の両方のユーザー向けであり、すでに統合されているため成功しています。 Linux 可能な限り最高のパフォーマンスを提供するカーネル。

使用される暗号化に関しては、 ChaCha20 対称暗号化の場合、認証された Poly1305 、つまりAEADがあります。 それはまた利用します カーブ25519 ECDHの場合、 ブレイク2 ハッシュのために、 シップハッシュ24 ハッシュテーブルキー用 HKDF 鍵導出のため。 ご覧のとおり、デフォルトで使用されている最新の暗号化アルゴリズムがあり、現時点では他の人のために変更することはできません。これらは「はい」または「はい」である必要があります。

この新しいVPNを使用すると、接続を管理したり、難しい構成を行ったりする必要がなくなります。これはL3 VPNであり、トランスポート層としてUDPプロトコルを使用し、TCPを選択できないため、トンネリングモードでのみ機能します。必要な人をリッスンするポートを変更します。 もちろん、WireGuardサーバーは問題なくNATの背後にある可能性があり、ポート転送のみを実行する必要があります。 その他の興味深い機能は、ネットワーク間をすばやく簡単にローミングできることです。常にどこからでも接続できます。 無線LAN または接続を中断せずに4G / LTEネットワーク。 さらに、VPNがダウンした場合のデータ漏洩を防ぐために、キルスイッチを有効にすることもできます。

最後に、この新しいVPNは、次のような複数のオペレーティングシステムと互換性があります。 Windows、Linux、MacOS、FreeBSD、 Android、また iOS 。 現在、pfSense 2.5.0開発チームはデフォルトでWireGuardをシステムに組み込んでいますが、以前はインストールすることもできましたが、公式のサポートはありませんでした。

WireGuardVPNサーバーの構成

pfSense 2.5.0のリリース前、これでWireGuardを完成させたい場合 ファイアウォール、FreeBSD互換のパッケージをダウンロードして、手動でシステムにインストールする必要がありました。 pfSense開発チームのおかげで、バージョン2.5.0の時点で、デフォルトでグラフィカルユーザーインターフェイスにすでに統合されています。

私たちが最初にやらなければならないことは、「 VPN / ワイヤーガード 」セクションに、この新しいVPNプロトコルの構成を入力します。 メニューに入るとすぐに、«トンネルの追加»をクリックします。

トンネル構成では、トンネルを有効にし、説明を付けて、次のように入力する必要があります。

  • アドレス:トンネルインターフェースのVPNサーバーのIPv4またはIPv6アドレス。
  • ポート:デフォルトでは51820 UDPですが、任意のUDPポートに変更できます。

pfSenseには、WireGuardを備えたVPNサーバー用の公開/秘密鍵ジェネレーターが組み込まれています。VPNクライアント用にいくつかの鍵を生成し、[生成]をもう一度クリックして、XNUMX番目に生成される鍵がVPNのものになるようにすることをお勧めします。サーバ。 たとえば、次のキーは、後でVPNクライアントで使用するキーです。 メモ帳またはメモ帳++を使用して、構成を記録することができます。

公開鍵と秘密鍵を使用したWireGuardの構成を容易にするために、 wireguardconfigツール これにより、サーバーとクライアントの両方を自動的に生成し、後でpfSenseに適合させることができます。

そして、生成されるXNUMX番目のものは、WireGuardを備えたVPNサーバー自体のものです。

キーを取得したら、[保存]をクリックする必要があります。これで、以前の構成でVPNサーバーが作成されます。

取得したら、「ピア」、つまりVPNクライアントを登録する必要があります。 WireGuardサーバー構成に戻り、緑色の「ピアの追加」をクリックします。 ここでは、いくつかの設定を入力する必要がありますが、すべてを入力する必要はありません。

次に、各オプションの目的について説明します。

  • 説明:このクライアントに、名前などの説明を付けます。
  • エンドポイント:VPNクライアントのパブリックIPアドレスを入力します。
  • エンドポイントポート:VPNクライアントのポートを配置します。

クライアントのパブリックIPとポートが変更されるVPNクライアントを構成する場合は、 「エンドポイント」と「エンドポイントポート」オプションは空のままにする必要があります 。 サイト間VPNを構成する場合は、これらのオプションを入力する必要がありますが、リモートアクセス(ロードウォリアー)では、これらのオプションを入力する必要はありません。

  • 存続:秒単位の値。トンネルがまだ稼働していることを確認することがよくありますが、デフォルトでは無効になっています。

ここで、最も重要な設定があります。

  • 公開鍵:VPNクライアントの公開鍵を配置する必要があります。これまで、クライアント用に生成される方法を確認しました。ここでは公開鍵を配置するためです。
  • 許可されるIP:インターネットリダイレクトとすべてのネットワークへのアクセスが必要な場合は、0.0.0.0 / 0を設定します。 最も一般的なことは、リモートアクセスVPNクライアントがVPN自体を介してインターネットにアクセスすることですが、ここでは、さまざまなネットワークへの特定のアクセスを構成できます。
  • Peer WireGuard Address:登録されたピアのIPアドレス。
  • 事前共有キー:オプション。事前共有キーを追加して、セキュリティをさらに強化できます。

私たちの場合、事前共有キーを配置していませんが、pfSenseとVPNクライアントの両方に配置する場合は、まったく同じである必要があり、このキーは、に表示される青いボタンで生成する必要があります。 pfSense。 たとえば、事前共有キー「12345678」を配置することはできません。pfSenseジェネレーターを使用する必要があります。

pfSense2.5.0でWireGuardVPNサーバーを正しく構成したら、ファイアウォール部分を構成します。これは、デフォルトでは常にすべてをブロックするモードであるためです。

WANおよびWireGuardでのファイアウォール構成

最初のVPNクライアントに接続する前に、「ファイアウォール/ルール」に移動して、インターネットWANインターフェイスに新しいルールを追加する必要があります。 次の情報を含む新しいルールを追加します。

  • アクション:合格
  • インターフェース:WAN
  • アドレスファミリ:IPv4、IPv6、またはその両方
  • プロトコル:UDP
  • ソース:任意(WireGuardを使用してサイト間をセットアップする場合は、セキュリティを向上させるためにソースパブリックIPをここに配置できます)。
  • 宛先:ポート51820のWANアドレス

構成が完了したら、[保存]をクリックしてこのルールを保存し、ファイアウォールに新しいルールを追加するときと同じように変更を適用します。

これが完了したら、次に移動する必要があります «WireGuard»インターフェース «で自動的に作成された ファイアウォール/ルール «セクションでは、接続後にすべての通信を許可するか、OpenVPNやIPsecのように必要なものだけを許可する必要があります。

次の構成では、次の構成のルールがあることがわかります。

  • アクション:合格
  • インターフェース:WireGuard
  • アドレスファミリ:IPv4、IPv6、またはその両方
  • プロトコル:任意
  • 出典:任意
  • 宛先:任意

「保存」をクリックして、通常どおり変更を適用します。 この時点で、WireGuardを使用してVPNクライアントを構成する準備が整いました。

WireGuard VPNクライアントを構成し、pfSenseに接続します

WireGuardを使用したVPNクライアントの構成はすべてのプラットフォームで同じであるため、まったく同じ情報が必要になります。 私たちの場合、Androidスマートフォンを使用しました。AndroidおよびiOS用の公式WireGuardアプリを以下からダウンロードできます。

ただし、このVPNプロトコルの公式Webサイトから直接、Windowsなどの他のオペレーティングシステム用にも入手できます。 インストールすると、クライアントを簡単に構成できるようになります。

前に述べたように、pfSenseで鍵を生成するときは、これらの鍵を公開鍵と秘密鍵の両方のメモ帳にコピーすることをお勧めします。 さらに、サーバーの公開鍵もコピーする必要があります。 これが完了したら、WireGuardを開き、新しいVPNトンネルの追加に進みます。XNUMXつのオプションがあります。

  • ファイルからすべての構成をインポートします。Windows、Linuxなどの複数のクライアントを構成する場合は、通常、異なる構成のテンプレートがあります。
  • QRコードからスキャン:WireGuardConfigツールを使用すれば簡単に実行できます。
  • ゼロから作成:これは私たちが選択したオプションです。

新しいVPNを追加するときは、要求されるすべてまたはほとんどすべての情報を入力する必要があります。これはVPNクライアントです。

  • 名前:VPNトンネルに説明を付けます。複数ある場合は、わかりやすい名前にします。
  • 秘密鍵:以前にメモ帳からコピーした秘密鍵を置きます。
  • 公開鍵:秘密鍵を入力すると、自動的に生成されます
  • アドレス:クライアントのIPv4またはIPv6。この場合、以前に10.9.0.2 / 32を構成しましたが、これを配置します。
  • ポート:空白のままにします
  • DNSサーバー:特定のDNSサーバーを配置することも、トンネルを直接解決することもできます。
  • MTU:空白のままにします。

次に、[ペアの追加]をクリックすると、さらに構成が表示されます。これらの構成はVPNサーバーの構成です。

  • ピア–VPNサーバーの公開鍵。
  • 事前共有キー:構成していない場合は空白のままにし、構成した場合はまったく同じようにコピーします。
  • 永続的なメンテナンス:存続させてください。空白のままにしておくことをお勧めします。
  • 最後のポイント:「IP:ポート」構文を配置する必要があるため、「vpn.redeszone.net:51820」を配置できます。
  • 許可されたIP:すべてを配置する場合は、0.0.0.0 / 0を配置します。 プライベートIPを除外するボタンもあります。

完了したら、[保存]をクリックすると、行われたすべての設定が表示されます。

追加してすべてが正しいことを確認したら、接続に進み、トラフィック交換が行われ、VPNが完全に機能していることを確認します。

パケットを受信して​​いない場合は、何か問題があり、WireGuardVPNトンネルが正しく確立されていないことを意味します。 これが発生した場合は、行われたすべての構成を確認し、pfSenseログを確認して何が起こっているかを確認する必要があります。

このチュートリアルで、すばらしいpfSense2.5.0でWireGuardVPNサーバーを構成できるようになったことを願っています。