Proton VPN のホームページ

OpenVPNを使用してpfSense上でProton VPNを設定する方法

閲覧中
2 分
カテゴリー
ルーター

本ガイドでは、OpenVPNのVPNプロトコルを使用して、pfSense 23.09およびpfSense 2.7.xにProton VPNをセットアップする方法を説明します。これにより、お客様のルーターが、接続されているすべてのデバイスをProton VPN接続で保護できるようになります。

OpenVPNについてより詳しく

pfSense 2.7.xをご利用の場合は、代わりにWireGuard®プロトコルの使用をお勧めします。

また、OpenVPNを使用した複数接続は推奨されませんのでご注意ください。このユースケースでは、同様にWireGuardの使用をお勧めします。

開始する前に、以下が必要になります:

  • 新規にインストールされたpfSense 23.09またはpfSense 2.7.x
  • pfSenseのフロントエンドにアクセスできるように、お客様のLANネットワークに接続されたコンピューター
  • お客様のOpenVPNのユーザー名とパスワード。これらは通常のProton VPNのユーザー名とパスワードとは異なります。これらを確認するには、account.protonvpn.comにサインインし、[アカウント][OpenVPNユーザー名]に移動してください。

1. OpenVPN設定ファイルを作成する

account.protonvpn.comにて、Protonアカウントのユーザー名とパスワードを使用してProton VPNにサインインし、ダウンロードOpenVPN 設定ファイルに進み、OpenVPN設定ファイルをダウンロードします。その際、必ずプラットフォームを選択:ルーターにしてください。

Proton VPNからOpenVPN設定ファイルをダウンロードする方法はこちら

pfSenseを設定するには、この設定ファイルからTLS証明書(新しいウィンドウ)を取得する必要があります。これを確認するには、ダウンロードしたOpenVPN設定ファイルをテキストエディタで開き、—–BEGIN CERTIFICATE—- で始まり、-—-END CERTIFICATE—–で終わるテキストを探します。

OpenVPNのTLS証明書

また、VPNサーバーのIPアドレスポート番号も必要になります。これらは、証明書に記載されている最初のremoteの行で確認できます。最初の数字がIPアドレス二番目の数字がポート番号です。以下の例では、IPアドレスは185.159.157.6、ポート番号は51820です。

最初の数字がIPアドレス、二番目の数字がポート番号です。

最後に、OpenVPN Static keyが必要です。これは—–BEGIN OpenVPN Static key V1—-で始まり、—–END OpenVPN Static key V1—–で終わります。

OpenVPN Static key

2. pfSenseにTLS証明書を追加する

ブラウザのURLバーに192.168.1.1と入力して、pfSenseのウェブインターフェースを開きます。サインインして、System(システム) → Certificates(証明書) → Add → Import certificate(追加 → 証明書のインポート)に移動します。

以下の設定を行います。

CAの作成/編集。[Authorities](認証機関) → [Add](追加)に移動し、以下の設定を変更します。

  • Descriptive name(わかりやすい名前): ProtonのTLS証明書を説明するのに適した任意の名前を入力できます
  • Method: Import an existing Certificate Authority(既存の認証機関をインポート)

既存の認証機関(Existing Certificate Authority)

証明書を設定する

完了したら、保存をクリックします。

3. OpenVPNクライアントを設定する

データを暗号化してVPNサーバーにトンネリングするためのOpenVPNクライアントを追加します。

VPNOpenVPNClients(クライアント)に移動し、Add(追加)をクリックして、 以下の設定を行います。

General Information(一般情報):

  • Description(詳細): この構成の表示名を選択します
  • Disabled(無効化): チェックを外す

モード構成(Mode Configuration)

  • Server Mode(サーバーモード): Peer to Peer (SSL/TLS)
  • Device mode(デバイスモード): tun – Layer 3 Tunnel Mode

エンドポイント構成(Endpoint Configuration)

  • Protocol(プロトコル): UDP on IPv4 only(IPv4でのみUDP)またはTCP on IPv4 only(IPv4でのみTCP)のいずれか(任意ですが、ダウンロードした設定ファイルと一致する必要があります)。UDPとTCPの比較について詳しくはこちら
  • Interface(インターフェース): WAN
  • Local Port(ローカルポート): –
  • Server host or address(サーバーのホストまたはアドレス): ステップ1を参照して確認してください。
  • Server port(サーバーのポート): こちらもステップ1を参照して確認してください。
  • Proxy host or address(プロキシのホストまたはアドレス): –
  • Proxy port(プロキシのポート): –
  • Proxy Authentication(プロキシ認証): なし
OpenVPNクライアント1を設定する

User Authentication Settings(ユーザー認証設定)

  • Username(ユーザー名): お客様のProton VPN OpenVPNユーザー名
  • Password(パスワード): お客様のProton VPN OpenVPNパスワード
  • Authentication Retry(認証の再試行): チェックを外したままにする

注意: これらは通常のProton VPNのユーザー名とパスワードとは異なります。追加機能を有効にするには、お客様のOpenVPNユーザー名の末尾に以下のサフィックスを追加してください。

  • NetShield Ad-blocker: +f1
  • NetShield Ad-blocker 拡張(有料プランをご利用の場合にのみ使用可能。マルウェアやトラッカーもブロックします): +f2

例えば、NetShield Ad-blockerを有効にするには、username+f1と入力します。

OpenVPNクライアントの構成2

Cryptographic Settings(暗号設定)

  • Use a TLS Key(TLSキーを使用): チェックを入れる
  • Automatically generate a TLS Key(TLSキーを自動生成): チェックを外す
  • TLS Key(TLSキー): OpenVPN設定ファイルから取得したOpenVPN Static keyをここに貼り付けます(ステップ1を参照
  • TLS Key Usage Mode: TLS暗号化および認証
  • TLS keydir direction: デフォルトの方向を使用
  • Peer Certificate Authority: Proton AG(またはステップ2でお客様が使用したわかりやすい名前)
  • Peer Certificate Revocation List: 変更しない
  • Client Certificate: なし(ユーザー名および/またはパスワードが必要)
  • Data Encryption Negotiation: チェックを入れる
  • Data Encryption Algorithms: AES-256-GCM、CHACHA20-POLY1305
  • Fallback Data Encryption Algorithm: AES-256-GCM
  • Auth digest algorithm: SHA256 (256ビット)
  • Hardware Crypto: これがサポートされているかどうかは、お客様のデバイスによって異なります。サポートされている場合は、まずSystemAdvancedMiscellaneousに移動して有効にする必要があります。不明な場合は、No hardware crypto accelerationを選択してください。
  • Server Certificate Key Usage Validation: チェックを入れる
Ports explained

トンネル設定

  • IPv4 Tunnel Network: –
  • IPv6 Tunnel Network:-
  • IPv4 Remote network(s): –
  • IPv6 Remote network(s): –
  • Limit outgoing bandwidth: -(お客様の特別なご希望がない限り)
  • Allow Compression: すべての非スタブ圧縮を拒否(最も安全)
  • Topology: Subnet — 共通サブネット内のクライアントごとに一つのIPアドレス
  • Type of service: チェックを外したままにする
  • Don’t pull routes: チェックを入れる
  • Don’t add/remove routes: チェックを外したままにする
  • Pull DNS: チェックを入れる
OpenVPNクライアント4の設定

Ping設定

  • すべてデフォルト値のままにしてください。
OpenVPNクライアント5の設定

拡張構成

  • Custom Options: 以下を追加します:

tun-mtu 1500;
mssfix 0;
reneg-sec 0;
remote-cert-tls server;

注意:これらの設定は、以下のスクリーンショットに示されている設定に代わるものです。

接続の信頼性を向上させるには、お客様がダウンロードしたOpenVPN構成ファイルをテキストエディタで開き、remoteで始まる行を探します。二行目のremote行以降、remoteで始まる各行をpfSenseのCustom Optionsフィールドにコピーし、末尾にセミコロンを記述してください。

how port forwarding works

  • UDP Fast I/O: チェックを入れる
  • Exit Notify: 無効
  • Send/Receive Buffer: デフォルト
  • Gateway creation: IPv4のみ
  • Verbosity level: 3(推奨)
OpenVPNクライアント6の設定

Saveをクリックし、StatusOpenVPNに移動します。新しいVPNクライアントが表示され、そのStatusupになっているはずです。

これでOpenVPNクライアントが起動しているはずです

4. OpenVPNインターフェイスの設定

VPNクライアントは起動していますが、トラフィックはまだルーティングされていません。お客様のすべてのネットワークトラフィックを安全なProton VPNトンネル経由でルーティングするには、インターフェイスとファイアウォールルールを設定する必要があります。

InterfacesInterface Assignments → Available network portsに移動し、ドロップダウンメニューから今追加したVPNクライアントを選択してAddをクリックします。

これにより、「OPTx」(xはルーターの物理インターフェースの数によって異なります)という名前のインターフェースが作成されます。新しく作成されたインターフェースをクリックして構成します。

OpenVPNインターフェイス1の設定

Interfacesタブに移動してOPTxをクリックし、以下の構成設定を入力します·

一般構成:

  • 有効にする:チェックあり
  • Description: インターフェイスのわかりやすい名前を指定してください

予約済みネットワーク:

  • Block bogon networks: チェックを入れる

残りのフィールドは変更しないでください。

SaveApply Changesをクリックします。

OpenVPNインターフェース2の設定

5. ファイアウォールルールを構成する

ファイアウォールルールを使用して、設定したばかりのProton VPNインターフェイス経由ですべてのトラフィックをルーティングします。FirewallNATOutboundに移動し、Manual Outbound NAT rule generationを選択します。その後、SaveApply Changesをクリックします。

ファイアウォールルールの構成 1

Mappingsの下に、六つのルールが表示されます。Source列では、これらのルールのうち4つにアドレス「127.0.0.0/8」および「::1/128」が表示されています。これらは無視し、残りの二つのルールを編集(Actions列の鉛筆アイコンをクリック)してください。

ファイアウォールルールの構成 2

両方のルールについて、Interfaceをステップ4でお客様が作成したProton VPNインターフェイスに変更します。SaveApply Changesをクリックします。

ファイアウォールルールの構成 3

注意:これにより、インターフェイスと同じ名前のゲートウェイも自動的に作成されます。

ファイアウォールルールの構成 4

マッピングの設定は、以下のようになっているはずです:

ファイアウォールルールの構成5

ファイアウォールルールLANに進みます。Default allow LAN IPv6 to any ruleの横にあるアイコンをクリックして無効化します。

ファイアウォールルールの構成 6

Default allow LAN to any rule 編集 (鉛筆アイコン)に進みます

ファイアウォールルールの設定 7

Display advancedゲートウェイをクリックし、ステップ5で作成したゲートウェイを選択します。保存および変更を適用をクリックします。

ファイアウォールルールの構成8

次に、ステータスOpenVPNに移動し、サービス再起動アイコンをクリックして、新しい設定でOpenVPNクライアントを再起動します。

ファイアウォールルールの設定 9

DNS設定の構成

pfSenseファイアウォールを通過するすべてのインターネットトラフィックは、Proton VPNサーバー経由でルーティングされるようになります。ただし、DNSリクエストはルーティングされません。これを修正するには、pfSenseのDNS設定を変更する必要があります。

システム → 一般セットアップ → DNSサーバー → DNSサーバーに進み、以下の設定を入力します:

  • DNSサーバーアドレス: 10.2.0.1
  • DNSサーバーゲートウェイ: ステップ4で作成したVPNインターフェイスを選択します
  • DNS Server Override: チェックします
  • DNS Resolution Behavior: リモートDNSサーバーを使用し、ローカルDNSを無視します
DNSサーバー設定の構成

次に、サービスDNSリゾルバー送信ネットワークインターフェイスに移動し、以下の設定を入力します:

  • 送信ネットワークインターフェイス: ステップ4で作成したVPNインターフェイスを選択します
  • DNS Query Forwarding: チェックします

OpenVPNのユーザー名に「+f1」または「+f2」のサフィックスを追加して、NetShield広告ブロッカー機能を有効にしている場合(ステップ3を参照)、DNSSECサポートを 無効化 する必要があります。

一般的なDNSリゾルバーオプションの構成

保存変更を適用をクリックします。

セットアップが完了しました。これでお客様のネットワークからのすべてのトラフィックが、選択したProton VPNサーバーを経由して安全にルーティングされます。ネットワーク上の任意のデバイスから、当社の無料の安全なIPスキャナーにアクセスしてテストできます。

オプションの微調整

お客様は、ネットワーク上の一部のコンピューターがVPNインターフェイスを使用しないように除外できます。例えば、ゲーム機をVPNに接続せずにインターネットにアクセスさせたい場合などです。手順は以下の通りです:

1. ファイアウォールルールLAN追加に移動します。

VPNからデバイスを除外する1

2. 以下のように設定を構成します:

  • アクション: Pass
  • Disabled(無効化): チェックを外す
  • インターフェイス: LAN
  • アドレスファミリー: IPv4
  • プロトコル: Any
  • 送信元(Source): 「Single Host or Alias」を選択し、除外したいデバイスのIPを追加します
  • 送信先(Destination): Any
  • ログ: 変更なし
  • 詳細(Description): 詳細を追加します
pfSenseセットアップ22

3. Display Advancedをクリックし、ゲートウェイWANに変更します。

pfSenseセットアップ23

4. 保存および変更を適用をクリックします。

デバイスをVPNから除外する 4

5. ファイアウォールNATアウトバウンドに移動し、モード自動(Automatic)に切り替えてから、保存および変更を適用をクリックします。その後、モード手動(Manual)に戻し、再度保存および変更を適用をクリックします。

デバイスをVPNから除外する 5

これにより、選択したデバイスがローカルWANネットワークにアクセスできるようにする二つの新しいルールが作成されます。

pfSense セットアップ 24

デバイスはVPNインターフェイスから除外され、ISPから割り当てられたIPアドレスを使用してインターネットにアクセスするようになります。ただし、DNSサーバーはProton VPNのDNSサーバーを使用します。