访问gitlab时报错forbidden
一般访问量大,密码错误频率高的时候,gitlab防爆机制启动了,对IP做了封禁,导致某些IP访问的是否返回 403 forbidden
1. 查看被封的IP
/opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket keys '*' | grep 'rack::attack'
2. 解除被封的IP
/opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket keys '*' | grep 'rack::attack' | xargs /opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket DEL
查看ip被封禁原因检查/var/log/gitlab/gitlab-rails/production.log 日志过滤对应ip即可
还有一种方式是配置白名单
vim /etc/gitlab/gitlab.rb
gitlab_rails['rack_attack_git_basic_auth'] = {
'enabled' => true, # 如果不需要拦截功能,可以关掉
'ip_whitelist' => ["127.0.0.1","192.168.168.168","10.2.20.20"],# 白名单列表,支持网段["192.168.222.0/24"]
'maxretry' => 20, # 每分钟访问次数
'findtime' => 60,
'bantime' => 3600
}
配置完白名单,gitlab的配置需要重新初始化一下(更新配置文件)
gitlab-ctl reconfigure 更新配置不会重启gitlab