gitlab配置自帶Nginx實現網段訪問限制、gitlab配置訪問黑白名單、gitlab訪問IP限制

一、在實際應用中,我們個人搭建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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章