3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Re;dashでIP BANされてしまった場合の対処

Posted at

この記事について

Re;dashではFlaskLimiterという、API制限をかけたりするライブラリを内部的に使って、ログインページ(/login)へのアクセスを制限しているようです。デフォルトでは1時間50アクセス(REDASH_THROTTLE_LOGIN_PATTERNの設定値で変えられるようです)。GET,POST双方でカウントされるので、loginページをリロードしまくると再現できます。

これでBAN(BANとはちょっと違うかもしれませんが)されると429 Too Many Requestsが返されます。何らかの原因でこの状態になってしまった場合の対処法を軽く紹介します。1時間待てって? それが正しいです。

対処法

1時間も待ちきれないぜというそこのあなたに向けた方法。もしかしたらボタンぽちーでできてしまったりするのかもしれませんが、、、

FlaskLimiterはIPなどのアクセス情報の保存先にRedisを利用しているようです。デフォルトではローカルホストをさしているので、Redashが動いているサーバでredis-cliコマンドをたたきましょう。

そしてkeysコマンドで保存されているキーを見るとそれっぽいのがあるかと思いますので削除しましょう。一気に全部削除もできますが、一応必要なものだけを消すようにしましょう。

$ redis-cli keys LIMITER*
LIMITER/xxx.xxx.xxx.xxx/redash.login/50/1/hour
...
$ redis-cli del LIMITER/xxx.xxx.xxx.xxx/redash.login/50/1/hour

これで/loginにアクセスできればokです。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?