リバースプロキシ(Reverse Proxy)とは、利用者からの要求をサーバーの手前で受け止め、代わりに裏側のサーバーへ取り次ぐ仕組みのことです。利用者から見れば、話している相手はここ一か所だけになります。
現実世界に例えると、リバースプロキシは会社の受付のようなものです。訪ねてきた人は受付に用件を伝えるだけでよく、担当者が何階のどの部屋にいるかを知る必要はありません。受付が奥へ取り次ぎ、答えを持って戻ってきます。
リバースプロキシ図解
プロキシとの違い
| 項目 | プロキシ | リバースプロキシ |
|---|---|---|
| 立つ位置 | 利用者の側 | サーバーの側 |
| 代理するもの | 利用者 | サーバー |
| 通信の向き | 内から外へ | 外から内へ |
| 主な目的 | 社内からの通信の管理 | 負荷分散や防御 |
向きが逆になっている
名前の由来はここにあります。普通のプロキシは、社内から外へ出ていく通信を、利用者側の代理として中継します。リバースプロキシはその逆で、外から入ってくる通信をサーバー側の代理として受け止めます。立つ位置が反対なので「リバース(逆)」と呼ばれます。
裏側を隠せる
まず得られるのは目隠しの効果です。実際に処理をしているサーバーのアドレスや台数、構成が、外からは見えなくなります。攻撃を仕掛ける側は狙う先を絞りにくくなり、こちら側は裏の構成を自由に変えられます。サーバーを入れ替えても、外から見た窓口は変わりません。
複数のサーバーへ振り分ける
もっとも多い使い道がこれです。同じ処理ができるサーバーを何台か並べておき、来た要求を順に割り振ることで、一台あたりの負担を下げられます。混み合う時間帯にも耐えられるようになり、一台が止まっても残りで受け続けられます。
暗号化の処理を肩代わりする
意外に効くのがこの役目です。HTTPSの暗号を解く処理はそれなりに重く、これをリバースプロキシがまとめて引き受ければ、裏のサーバーは本来の仕事に専念できます。証明書の管理も一か所で済むため、期限の更新にかかる手間もまとまります。
よく使うものを覚えておく
同じ答えを何度も作らせない工夫もできます。画像や変化の少ないページをリバースプロキシが手元に保管しておき、次に同じ求めが来たら、裏まで通さずその場で返します。利用者から見た表示は速くなり、裏のサーバーの負担も同時に減ります。
攻撃から守る盾になる
安全面でも働きます。不審な要求をここで弾いたり、同じ相手からの過剰なアクセスに制限をかけたりできます。危険な通信を選り分ける専用の仕組みを、この位置に組み合わせるのも一般的です。守りを一か所へ集められるのが利点になります。
一か所に集まる怖さ
裏返しの弱点もあります。すべての通信がここを通る以上、リバースプロキシが止まればサービス全体が止まります。そのため実際には二台以上で組み、片方が落ちても続けられるようにします。便利さと引き換えに、ここだけは手を抜けない場所になります。


コメント