前提
以下の記事の具体例を端的に書きます。
conf ファイル
設定ファイルは以下のようにするとよいかと思います。$http_x_forwarded_for
を用いるのがポイントです。
ここでの条件および期待する結果は次のとおりです。
123.123.123.123
および231.231.231.231
からのアクセスのみ許可し、それ以外からのアクセスに対しては403
を返す
map $http_x_forwarded_for $is_denied { default 1; 123.123.123.123 0; 231.231.231.231 0; } server { if ( $is_denied = 1) { return 403; } (省略) }
If
は Evil
なのでなるべく使わないほうがいいとは思いますが、ササッと書く場合などでは使うのもまあアリかなと思います。