gitlab服务怎么设置,只允许指定的ip地址访问
tqx
·发布于 5 个月前·1 人看过
环境
操作系统:ubuntu 22.04
gitlab版本:17.1
要求
gitlab在私有化部署之后,要求只能部分网络IP或者指定的IP网段才能访问
步骤
-
进入gitlab控制台
以docker 部署gitlab为例
sudo docker exec -it gitlab /bin/bash
-
修改配置文件
vim /etc/gitlab/gitlab.rb
查找:快捷键/ (斜杠) ,然后输入:custom_gitlab_server_config 然后回车找到如下配置
`# nginx['custom_gitlab_server_config'] = "location ^~ /foo-namespace/bar-project/raw/ {\n deny all;\n}\n"
建议不要改变原始内容,在这个上面添加新的内容,内容如下:
nginx['custom_gitlab_server_config'] = "location ~* (.*)
{
allow 192.168.1.1;
allow 192.168.3.0/24;
allow 192.168.0.0/16;
deny all;
proxy_cache off;
proxy_pass http://gitlab-workhorse;
root html;
index index.html index.htm;
}"
解释一下
allow 192.168.1.1; 代表允许192.168.1.1,这个IP访问
allow 192.168.3.0/24; 代表允许192.168.3.0~192.168.3.254,这个IP段访问
deny all; 代表除以上允许之外,禁止其他所有网络访问
下面这几行也放上,官方文档里是让放上,官方文档地址
proxy_cache off;
proxy_pass http://gitlab-workhorse;
root html;
index index.html index.htm;
注意:这个顺序不能随便写,读取顺序会从上往下,如果把deny all;放到第一行,后面的就不起作用了
-
保存配置文件并重新启动GitLab服务
gitlab-ctl reconfigure
gitlab-ctl restart