nginx - GitLab 发布临时 IP 禁令 - 403 被禁止

标签 nginx gitlab ip-address access-control

我的 GitLab 实例设置偶尔会对我们自己的 IP 地址设置 IP 禁令,导致我们办公室中的所有用户在任何网页或 git 请求上都收到 403/Forbidden。

由于重复的身份验证错误,禁令正在实现,这完全是一个单独的问题,但我想防止我们自己的 IP 地址被 IP 禁止。它持续约一小时。

在 nginx 日志中,gitlab_access.log 或 gitlab_error.log 文件中没有任何异常弹出。服务器仍在运行,并且在禁令生效期间外部 IP 地址不受影响。

我希望能够将我们自己的 IP 地址列入白名单,或者能够在禁令发生后禁用禁令(重新启动 gitlab 不会删除禁令)。如果这两个都不可能,那么只需找到将禁令持续时间从一小时调整为低的设置也可以。

最佳答案

按照接下来的步骤取消对您的 IP 的禁令

  • 在生产日志中查找被屏蔽的IP:
    grep "Rack_Attack" /var/log/gitlab/gitlab-rails/production.log
  • 由于黑名单存储在Redis中,所以需要打开redis-cli:
    /opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket
  • 您可以使用以下语法删除 block ,替换为列入黑名单的实际 IP:
    del cache:gitlab:rack::attack:allow2ban:ban:<ip>

  • GitLab 文档来源:Remove blocked IPs from Rack Attack via Redis

    关于nginx - GitLab 发布临时 IP 禁令 - 403 被禁止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36298959/

    相关文章:

    服务器上的 SSL/TLS 配置

    express - 将nginx与expressJS结合使用时,我应该在express还是nginx中使用压缩?

    php - Nginx - 在其他目录和 PHP 中具有 root 的位置

    ios - 如何在 iOS/macOS 上以编程方式获取我的 IP 地址?

    macos - 在 macOS Movaje 10.14 中安装 Homebrew + nginx + rtmp

    GitLab:无法 fork 我自己的项目

    git - 如何通过 SSH 在 CI 构建成功上部署我的 webapp?

    docker - GitLab Runner Docker Executor 中的缓存层 - Long Time DinD Container

    c# - 列出 IP 子网中的所有地址

    c - 十六进制格式的IP地址范围搜索