Linux キルスイッチは、本格的な Linux VPN ユーザーにとって必須です。 VPN から切断されていても、だれもがデータにアクセスできないようにすることで、データがインターネットに漏洩するのを防ぎます。また、その間に何が起こっても、すべての情報の機密性が保たれます。
サイバー犯罪者にとって、キル スイッチは悪夢です。彼らと彼らのターゲットの間に立っているのは重大な障害です。コンピューターや電話がフリーズ、停止、または誤ってコードを切断したために VPN への接続が 1 秒間でも切断された場合、キル スイッチが有効になっている限り、そのデータには誰もアクセスできません。
前提条件
先に進むには、以下が必要です:
- VPN プロバイダに接続するための構成ファイル。この記事では、NordVPN を VPN プロバイダーとして使用しています。
- OpenVPN クライアントを搭載した Ubuntu デバイス。この例では、Ubuntu 20.04 と OpenVPN 2.5.3 を使用します。
単純なファイアウォール (UFW) のインストール
このチュートリアルでは、Linux キルスイッチはファイアウォールの構成に依存します。まず、Uncomplicated Firewall (UFW) をデバイスにインストールし、キル スイッチとして機能するようにファイアウォールを設定することから始めます。
飛び込む前に、Linux ディストリビューションが最新であることを確認してください。そうしないと、UFW ファイアウォールが期待どおりに機能しない可能性があります。たとえば、UFW が起動時に設定を読み込まない場合や、追加/削除されたルールが読み込まれない場合があります。
1. sudo apt install ufw -y
を実行します ファイアウォールをインストールします。
UFW ファイアウォールは、ほとんどの Ubuntu ディストリビューションにデフォルトでインストールされているため、すでに UFW がインストールされている可能性があります。
2. sudo systemctl start ufw
で UFW サービスを開始します .
3. UFW のインストールが成功したかどうかを確認します。 sudo systemctl status ufw
を実行します コマンドを実行し、成功した場合、出力には aactive (exited) が表示されます 下図のように緑色。

4. sudo ufw enable
で UFW を開始します . Y を押します そして入る 操作を続行しますか (y|n)? かどうか尋ねられたとき

リモート アクセス プロトコルの許可
ファイアウォールがインストールされたので、VPN で使用したいすべてのプロトコルを許可するように UFW を構成する必要があります。
クライアントからロックアウトされていないことを確認することから始めます。OpenVPN 接続に問題が発生した場合は、SSH 経由でログインする必要がある場合があります。接続が切断され、SSH 経由でログインできない場合は、デバイスに物理的にアクセスして再度接続する必要があります。
1. sudo ufw allow ssh
で SSH 接続を許可する 指図。 UFW ファイアウォールは、/etc/services のポートとプロトコルを読み取ります ファイルを開き、それに応じてポートを開きます。以下のコマンド出力を確認できます。

OpenVPN 経由で接続する際にユーザーに SSH キーによる認証を要求することで、セキュリティをさらに強化することを強くお勧めします。この手順により、ブルート フォース攻撃や不正な接続から保護されます。
2. 次に、対応するポートでトラフィックを許可することにより、VNC プロトコルを許可するルールを追加する必要があります。
VNC プロトコルに関しては、オプションです。 VNC では、SSH と同様にリモート アクセスが可能です。 VNC はグラフィカル コンソールを提供しますが、SSH はテキスト コンソールのみを許可します。 sudo ufw allow 5901:5910/tcp
で VNC トラフィックを許可する 指図。
これらのコマンドは、以下のような出力を提供します。

3. ルールが追加されたら、それらが正常に適用されていることを確認します。 sudo ufw show added
コマンドは、以下に示すように、追加されたすべてのルールを一覧表示します。

VPN キル スイッチの設定
このセクションでは、UFW ファイアウォールを使用して実際のキル スイッチを設定する方法を学習します。開始するには、次の 2 つのコマンドを実行します。
sudo ufw default deny outgoing
sudo ufw default deny incoming
ufw default deny
コマンドは、前のセクションで設定した明示的に許可された SSH 接続とリモート プロトコルを除いて、マシンとの間のすべての発信/着信トラフィックをブロックします。以下のスクリーンショットでコマンドの結果を確認できます。

次に、UFW ルールセットに例外を追加して、マシンが VPN サーバーに接続できるようにします。VPN サーバー構成ファイルが必要になります。このチュートリアルでは、OpenVPN ファイルの名前は ata.ovpn です。 NordVPN サイトからダウンロードします。
お使いの OpenVPN 構成ファイル名は異なる場合があります。このチュートリアルでは「ata」の命名規則を使用していますが、適切と思われる名前を自由に付けてください!
次に、ata.opvn の中を調べます コマンド sudo head /etc/ata.ovpn
を含む OpenVPN 構成ファイル .結果の出力には、ポートなどの情報が含まれます 、プロトコル 、IP アドレス 以下の例に示すNordVPNを使用して、接続するVPNサーバーの.
正しい UFW コマンドを作成するには、ポートに注意してください 、プロトコル 、パブリック IP アドレス 構成ファイルからの情報出力。

次に、ufw allow out
を作成します。 コマンドは次のとおりです:sudo ufw allow out to 69.28.83.134 port 1194 proto udp
.ご覧のとおり、使用されている IP アドレスとポートは、remote
で始まる構成行からのものです。 proto
で始まる行のプロトコル .
この例では、NordVPN を VPN プロバイダーとして使用しています。 NordVPN の場合、1194 UDP ポートが開いている必要があります。たとえば、Express VPN を使用する場合、1194 ポートではなく、1195 UDP ポートを開く必要があります。すべての VPN プロバイダーには、固有の UDP ポートがある場合があります。
OpenVPN のファイアウォール例外の作成
もちろん、適切に使用するには、OpenVPN がファイアウォールを通過することを許可する必要があります。この時点まで、いくつかのポートを除いて、すべての着信および発信トラフィックをブロックしました。
まず、OpenVPN クライアントが使用するネットワーク インターフェイス名を見つける必要があります。 ifconfig
を実行します 以下に示すように、すべての構成済みネットワーク インターフェイス名を一覧表示するコマンド。

tun0 という名前のネットワーク インターフェースに注目してください 結果のリストに。 tun0 interface は、すべての着信および発信トラフィックが通過する VPN インターフェースであり、許可するインターフェースです。これは起動時に追加される仮想インターフェイスであり、物理接続ではないことを意味します。このインターフェースは OpenVPN のデフォルトです。
ifconfig
で見つかった VPN トンネル インターフェイスのファイアウォール例外を追加します。 すべてのトラフィックを強制的に通過させます。そうしないと、インターネットにアクセスできず、キル スイッチが機能しなくなります。以下のコマンドを実行して、tun0
で OpenVPN トラフィックの例外を追加します。
sudo ufw allow out on tun0 from any to any

ゲームのプレイ中にボイス チャット アプリケーションにアクセスするなど、一部のアプリケーションでは、VPN 経由の着信接続が必要です。着信接続を許可するには、次のコマンドを実行します:
sudo ufw allow in on tun0 from any to any

OpenVPN クライアントの構成
この最後のセクションでは、以前に作成した構成を利用して、OpenVPN クライアントをサービスとして実行するように構成します。
プレーンテキストの名前を ata.opvn に変更することから始めます ファイル **(ファイル名は異なる場合があります) を ata.conf にコピーします . OpenVPN クライアントをバックグラウンド システム サービスとして実行するには、ファイル名に *.conf ファイル拡張子を付ける必要があります。さらに、ファイルを /etc/openvpn にも移動します。 ディレクトリ。
sudo mv /root/ata.ovpn /etc/openvpn/ata.conf
で構成ファイルを移動します .

ここで、ディレクトリを /etc/openvpn に変更します ファイルがそこにあることを確認してください。
cd /etc/openvpn
ls

/etc/openvpn の構成ファイルを使用 systemctl
で OpenVPN クライアント サービスを開始します。 指図。サービスを開始するには、次を実行します:sudo systemctl start [email protected]
.
OpenVPN クライアント名の「ata」部分は、使用されている構成ファイルの名前に由来します。ファイル名によって異なる場合があります。

OpenVPN サービスが実行されていることを確認するには、systemctl status
を使用します。 コマンドは次のとおりです。
sudo systemctl status [email protected]
以下に示すように、アクティブ (実行中) OpenVPN サービスの緑色のステータスが表示されます。

最後に、VPN サービスに自動的に接続するようにデバイスを構成する必要があります。 VPN に自動的に接続することで、マシンを再起動しても OpenVPN が常に実行されます。
sudo systemctl enable [email protected]
を実行します コマンドを実行すると、OpenVPN サービスが開始されると、自動的にデバイスが VPN に接続されます。

結論
この記事では、VPN 接続用に Linux キルスイッチを設定するために必要なすべての手順を示しました.キル スイッチは、接続が予期せず切断された場合にコンピューターからネットワーク接続を切断し、データの漏洩を防ぎ、オンラインで安全に保ちます。