nginx が一定期間内に特定の IP にリダイレクトするようにする方法
フィルタリング ルールを書きました:
ここで問題があり、相手が条件を満たしていればリダイレクトされるのですが、数十秒、数秒後に再度訪問するとリダイレクトが効かなくなります。
私が望むのは、相手がこれらのルールを初めてトリガーしたときに、次にルールがトリガーされるかどうかに関係なく、相手の IP が翌日にリダイレクトされることです。 24 時間が経過したら、ブロックを解除します
。相手が 1 日後に再度トリガーした場合は、別の日にリダイレクトします。
ネット上ではngx_white_black_listモジュールが使われていると言われていますが、ブラックリストで実行するコマンドをソースコードのどこに書く(書き換える)のかが不明です。オンラインで得られた回答は次のとおりです:
リーリーここでは、禁止されたアクセス
のみが示されています。リダイレクトとして書き換えるべきかどうかわからない
攻撃を防ぎたい場合は、iptablesを使用し、一定時間後にクリアする必要があります。
Openrestyを使用している場合は、rewrite_by_luaを使用できます