プロキシ アプリケーションをセットアップしたいと思ったことはありませんか?プロキシ アプリケーションは、オンラインでのプライバシーを強化する効果的な方法です。 Envoy Proxy は、HTTP プロキシ サーバーをセットアップするのに最適なアプリケーションの 1 つです。そして、それの最良の部分は?それは完全に無料です!
このチュートリアルでは、Envoy を HTTP リバース プロキシ サーバーまたは TCP リレー サーバーとして使用する方法を学習します。数回クリックするだけで、独自のカスタム セキュリティ ポリシーを構成できます!
読み進めて、Envoy Proxy Server でプライバシーを強化しましょう!
前提条件
このチュートリアルは実践的なデモンストレーションです。フォローしたい場合は、次のものが揃っていることを確認してください:
- Linux マシン – このデモでは Ubuntu 20.04 LTS を使用していますが、どの Linux ディストリビューションでも動作します。
- sudo 権限を持つ root 以外のユーザー
Envoy プロキシのインストール
アプリケーションをプロキシする前に、他のパッケージの場合と同様に、まずマシンにアプリケーションをインストールします。ただし、サードパーティのリポジトリからインストールする前に、必要な依存関係もインストールします。
1. apt update
を実行します 以下のコマンドを update
に マシンのリポジトリ インデックス。
sudo apt update -y

2. 次に、apt install
を実行します 以下のコマンドを使用して、HTTP セキュア プロトコル (HTTPS) 経由でリポジトリからパッケージを取得します (apt-transport-https
)。次に、コマンドは必要な依存関係 (gnupg2)
をインストールします
このコマンドは、FTP プロトコル (curl
) 経由でリポジトリからパッケージをフェッチします。 ) マシンに関する LSB (Linux Standard Base) 情報を表示します (lsb-release
)。 LSB 情報により、マシンが互換性のある LSB バージョンを知ることができます。
sudo apt install apt-transport-https gnupg2 curl lsb-release -y

3. 以下の curl
を実行します サーバーの開発者から GPG キーをインポートするコマンド (gpg.8115BA8E629CC074.key
) を APT キーリング (getenvoy-keyring.gpg
) に )。この GPG キーにより、中間者攻撃ではなく、サーバーの公式バージョンを取得できます。
APT キーリングは、Envoy Proxy Server のリポジトリをインストールまたはアップグレードする前に、GPG を使用してリポジトリの署名をチェックします。
curl -sL 'https://deb.dl.getenvoy.io/public/gpg.8115BA8E629CC074.key' | sudo gpg --dearmor -o /usr/share/keyrings/getenvoy-keyring.gpg
以下のように、GPG キーが正しくインポートされている場合、コマンドは何も出力しません。

4. echo
を実行します。 以下のコマンドを実行して、GPG キーが有効で信頼できるものであることを確認します (sha256sum --check
)。 key_ring
を置き換えます 開発者の公開鍵リングを使用します。
echo key_ring /usr/share/keyrings/getenvoy-keyring.gpg | sha256sum --check
以下に示すように、キーは有効であり、使用しても問題ありません。

5. 以下の echo
を実行します Envoy Proxy Server の公式リポジトリを追加するコマンド (https://deb.dl.getenvoy.io/public/deb/ubuntu $(lsb_release -cs) main
) をマシンに送信します。このコマンドは、パッケージをダウンロードしてインストールする場所を APT に指示します。
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/getenvoy-keyring.gpg] https://deb.dl.getenvoy.io/public/deb/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/getenvoy.list
dl.getenvoy.io/public/deb/ubuntu が表示されます サーバーがホストされている場所であり、フォーカル リリースにあることを示す、以下に示す出力の文字列 チャネル。この出力は、サーバーのリポジトリがマシンに追加されたことを確認します。

6. 次に、apt update
を再実行します。 コマンドを使用して、マシンのリポジトリから最新のパッケージ情報を取得します。
sudo apt update -y

7. apt-cache policy
を実行します 以下のコマンドを実行して、マシンのリポジトリからサーバーをインストールできることを確認します。
sudo apt-cache policy
以下では、リリース チャネル (focal チャネル) からサーバーを ubuntu マシンにインストールできることを確認できます。 ).

8. 最後に、apt install
を実行します。 以下のコマンドでサーバーをインストールします (getenvoy-envoy
)。
sudo apt install getenvoy-envoy -y

Envoy プロキシ サーバーの実行
Envoy Proxy Server をインストールしましたが、それがどのように機能するかわかりませんか?端末からデモ インスタンスを実行します。
1. envoy --version
を実行します コマンドを使用して、マシンで実行されているサーバーのバージョンを確認します。
envoy --version
サーバーを正しくインストールすると、端末にバージョンが表示されます。このデモでは、バージョンは 1.18.2 ですが、実際のバージョンは異なる場合があります。

2. 次に、envoy --help
を実行します。 コマンドを使用して、Envoy Proxy Server の実行時に使用できるすべてのオプションを一覧表示します。
envoy --help
以下の出力にリストされているほとんどのオプションを使用して、サーバーの動作を表示または変更できます。

3. wget
を実行します 以下のコマンドで envoy-demo.yaml
という名前のデモ構成をダウンロードします サーバーの Web サイトからのファイル。このファイルを使用してデモを開始します。
wget https://www.envoyproxy.io/docs/envoy/latest/_downloads/92dcb9714fb6bc288d042029b34c0de4/envoy-demo.yaml

envoy-demo.yaml ファイルの内容は次のようになります。このファイルは、ポート 10000 で HTTP 要求を処理するために、着信接続 (0.0.0.0) をリッスンするようにサーバーに指示します。

4. 次に、以下のコマンドを実行して、サーバーに構成 (-c envoy-demo.yaml
) を読み取るように指示します。 ) ファイルで、インスタンスを開始します。
envoy -c envoy-demo.yaml

5. 次に、以下のコマンドを実行して、システムで実行中のすべてのプロセスを確認します (ps -ef
)、Envoy Proxy Server が実行されていることを確認します (grep envoy
) )。
ps -ef | grep envoy
以下の出力に、Envoy Proxy Server プロセスがリストされていることがわかります。この時点で、Envoy Proxy Server はポート 10000 でリクエストとプロキシをリッスンします。

6. netstat
を実行します 以下のコマンドで、Envoy Proxy Server がポート 10000
をリッスンしているかどうかを確認します .
sudo netstat -tulpn | grep :10000
以下に、Envoy Proxy Server の構成に使用したポート番号 (10000) を示します。

7. ufw
を実行します。 以下のコマンドでポート 10000
を開きます ファイアウォールで。サードパーティのファイアウォールを使用している場合は、コマンドを調整して、プロキシ サーバーの対応するポートを開く必要がある場合があります。
以下のコマンドは、ポート 10000 からの着信接続のみをリッスンするため、サーバーを保護するファイアウォール ルールを追加します。
sudo ufw allow 10000/tcp

8. ufw status
を実行します コマンドを実行して、ファイアウォールのステータスを確認し、Envoy Proxy Server ポートが開いていることを確認してください。
sudo ufw status verbose
以下の出力は、Envoy Proxy Server のポート (10000) がファイアウォールで開いていることを確認します。

9. 最後に、curl
を実行します。 以下のコマンドを実行して、Envoy Proxy Server が意図したとおりにプロキシ/動作しているかどうかを確認します。
curl -v localhost:10000
以下の Envoy Proxy からのデフォルトのウェルカム ページを確認できるように、予想どおり、curl コマンドは Envoy Proxy Server によってプロキシされます。

結論
このチュートリアルでは、Ubuntu マシンに Envoy Proxy Server をインストールして実行する方法を学習しました。 Envoy Proxy Server のポート (10000) を開くためのファイアウォール ルールの追加についても触れました。 )、Envoy Proxy Server が完全に機能することを確認しました。
この時点で、完全に機能するプロキシ サーバーが完成し、それを使用してアプリケーションのトラフィックをプロキシできるようになりました。
それでは、この新たな知識を活用して、Envoy Proxy Server を使用してスケーラブルで可用性の高いプロキシ インフラストラクチャをセットアップしてみませんか?