昨天有同时说,上午还访问好好的GitLab下午就显示Forbidden了,发现是通过无线的方式连接到内网,可以ping通服务器但是访问就403,找了半天没找到原因,后来搜索后得知普遍出现这种情况是因为触发了防爆破机制被拦截了,解决办法挺简单的

解决方法

打开Gitlab配置文件

vi /etc/gitlab/gitlab.rb

但是我进到服务器后发现etc下面根本没有这个目录,原来是之前到同事通过Docker部署的GitLab,然而我找了半天也没找到挂载出来的目录,没办法就直接通过Docker进入容易去改

docker exec -it gitlab /bin/bash
#gitlab为容器的名字,也可以是容器ID

进入容器以后编辑gitlab.rb文件,找到下面几行并取消注释

gitlab_rails['rack_attack_git_basic_auth'] = {
    'enabled' => true,
    #ip_whitelist是gitlab暴露出的ip,我们公司这边用到的是内网IP,写入白名单
    'ip_whitelist' => ["127.0.0.1",'192.168.0.23'],
    #最大连接数由10改为200
    'maxretry' => 200,
    'findtime' => 5,
    'bantime' => 60
}

修改完成以后重新加载一次

gitlab-ctl reconfigure

接着再次访问,发现问题解决