Help us understand the problem. What is going on with this article?

iptablesのみでリバースプロキシ配下のアプリケーションサーバ(Webサーバ)の接続元IPアドレス制限を実現する方法

More than 1 year has passed since last update.

Amazon Web Services(AWS)のApplication Load Balancerや、リバースプロキシを構成したNginxなどのリバースプロキシ配下のアプリケーションサーバにて、iptablesのみで接続元IPアドレス制限を実現する方法です。

本手順のメリットは、接続元アクセス制御(接続元IPアドレス制限)のために、ApacheやNginxなどのWebサーバ(HTTPd)を立てる必要が無いことです。また、Linuxが標準で提供する(カーネルに内包される)機能を利用するため、デーモン(サーバ)が落ちるような心配をする必要がありません。

デメリットは、セグメント(サブネット)での制限が行えない、行えても前方一致での制限(例:192.168.1. → 192.168.1.0~255)に限られることです。ただし、膨大なIPアドレスを保有していなければ、それほど影響は無いものと思います。

特定のIPアドレスのみ拒否する

# iptables -A INPUT -m string --algo bm --string 'X-Forwarded-For: <拒否したいIPアドレス>' -j DROP

特定のIPアドレスは許可して、それ以外は拒否する

# iptables -A INPUT -m string --algo bm --string 'X-Forwarded-For: <許可したいIPアドレス>' -j ACCEPT
# iptables -A INPUT -m string --algo bm --string 'X-Forwarded-For: ' -j DROP
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away