欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

gitlab配置自带Nginx实现网段访问限制、gitlab配置访问黑白名单、gitlab访问IP限制

程序员文章站 2022-06-03 21:16:40
...

一、在实际应用中,我们个人搭建gitlab环境的时候,都是在公司内网的情况下,只为单独的某个企业/公司使用,所以此时会出现某些特殊的访问需求,比如我只允许公司某个网段中的IP地址访问,或者只允许某几台主机访问gitlab服务器,而拒绝某些主机访问。

二、在外网情况下,也会有恶意IP攻击gitlab服务,进行不友好的访问,此时我们可以找出这些IP地址,将其加入黑名单

三、检查环境,确定你所在的网段中用于测试的主机之间能够互相ping同,正常情况下启动gitlab,同网段的其他主机能够正常访问gitlab页面服务。

四、gitlab本身集成的就有Nginx功能,在无需设置外部Nginx情况下,我们一样可以做访问网段限制。

五、编辑 vim /etc/gitlab/gitlab.rb文件,增加下面的几行代码:

nginx['custom_gitlab_server_config'] = "location ~* (.*) {
                deny 192.168.2.109;
                allow 192.168.2.0/24;
                deny all;
                proxy_cache off;
                proxy_pass  http://gitlab-workhorse;
                root   html;
                index  index.html index.htm;}\n"

1. 此处修改不可以设置location /规则,因为gitlab自己的gitlab-http.conf中已经有对应的配置;


2. proxy_cache off;\n proxy_pass http://gitlab-workhorse;\n这两行一定要加,不然全部报404错误


3. root   html;\n index index.html index.htm;这两行也要加,因为我们使用location ~* (.*)重置了所有的请求匹配


4. allow 192.168.2.0/24是指192.168.2.0 - 192.168.2.254的ip区段都可以访问, 如果想匹配192.168.*.*可以使用192.168.0.0/16


5.deny  192.168.2.109是指拒绝该主机的访问,如果有更多的主机,可以在下一行继续添加拒绝IP地址: deny 192.168.x.x 实现gitlab的IP黑名单设置

6.deny all除了上面的规则外,拒绝所有其他主机访问。

配置完成后,重新配置gitlab,执行 gitlab-ctl reconfigure命令

即可发现被拒绝的主机在访问gitlab页面服务时报403错误,不能进行访问。

 

参考地址:https://github.com/idododu/FE/blob/gh-pages/install-gitlab.md