gitlab-ce白名单设置杜绝并发数过大引起的封ip故障

gitlab-ce 7.9安装手札以及上篇文章的问题解决

鸣谢

感谢ruby大神===》章鱼的一路指点,才能拨开迷雾见云天!
章鱼大人:
    国内Ansible部落原创翻译之一!
    资深运维!
    ROR大神!
    熟读各种源码,精通十八般运维技能!
    章鱼大人微博:http://weibo.com/u/2009151365?wvr=5&lf=reg
感谢官方文档!这才是最好的教材

问题描述

每天定时403服务一小时

解决方案

1、修改nginx配置文件,proxy_pass不进行前端访问ip进行后转   【临时解决方案】
2、修改/opt/gitlab/embedded/service/gitlab-rails/config/initializers/1_settings.rb添加白名单 【修改源码的方案】
3、在/etc/gitlab/gitlab.rb中添加白名单  【本文采取方案】

下载

归档页面

https://about.gitlab.com/downloads/archives/

下载7.9版本

wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.9.0-omnibus.2-1_amd64.deb

安装指北

参考官网安装:
https://about.gitlab.com/downloads/#ubuntu1404
http://doc.gitlab.com/ce/install/installation.html

配置文件

修改配置项

打开/etc/gitlab/gitlab.rb,将external_url = 'http://hostname'修改为自己的IP地址:http://xxx.xx.xxx.xx,,然后执行下面的命令,对GitLab进行编译。
sudo gitlab-ctl reconfigure

登录系统

Username: root
Password: 5iveL!fe

关于rack_attack的变迁

https://gitlab.com/gitlab-org/omnibus-gitlab/issues/480

如何设置白名单

参考

https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-config-template/gitlab.rb.template

查看设置白名单的配置文件

    "gitlab-rails": {
      "rack_attack_git_basic_auth": {
        "enabled": true,
        "ip_whitelist": [
          "127.0.0.1"
        ],
        "maxretry": 300,
        "findtime": 5,
        "bantime": 60
      },

详细配置过程

root@zhuima:/tmp# grep -C 5 'ip_whitelist' /etc/gitlab/gitlab.rb
# gitlab_rails['rate_limit_requests_per_period'] = 10
# gitlab_rails['rate_limit_period'] = 60

gitlab_rails['rack_attack_git_basic_auth'] = {
   'enabled' => true,
   'ip_whitelist' => ["127.0.0.1","192.168.101.219"],
   'maxretry' => 300,
   'findtime' => 5,
   'bantime' => 60
 }

root@zhuima:/tmp# gitlab-ctl show-config | grep -C 5 ip
the ffi-yajl and yajl-ruby gems have incompatible C libyajl libs and should not be loaded in the same Ruby VM
falling back to ffi which might work (or might not, no promises)
    "ci-redis": {
    },
    "gitlab-rails": {
      "rack_attack_git_basic_auth": {
        "enabled": true,
        "ip_whitelist": [
          "127.0.0.1",
          "192.168.101.219"
        ],
        "maxretry": 300,
        "findtime": 5,
root@zhuima:/tmp#

我想说的

很多时候需要看官方文档才行,要不然会吃亏
另外就是官方文档的配置模板一定要详细查看

gitlab-ce更新相关

https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG

后记

2015年9月5日追马于北京

来源链接:http://www.178linux.com/7988 原创文章,如有转载,请注明出处

原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2015-09-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python研发

django-debug-toolbar的配置以及使用

django,web开中,用django-debug-toolbar来调试请求的接口,无疑是完美至极。   可能本人,见识博浅,才说完美至极, 大神,表喷,抱拳...

30110
来自专栏腾讯NEXT学位

小程序iOS客户端框架——控件事件逻辑框架与控件原生化(上)

? 小程序自发布以来,为开发者和用户提供了一种轻量级的App。作为一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打...

18910
来自专栏落影的专栏

iOS开发笔记(五)

前言 社会的模式很多是重复的,当你做一样事情很擅长时,与之类似的事情也能触类旁通。 正文 Code开发 1、delegate的trick 很多人习惯在调用de...

52240
来自专栏编程坑太多

python使用selenium+chromedriver调用chrome截图

40750
来自专栏张戈的专栏

巧用echo命令解决Samba批量添加用户难题

最近实在太忙,没时间研究和折腾,所以也没有什么可以分享到博客的。果然,个人博客坚持原创太不不容易了。张戈博客上线 2 年多,从 1 天多更,到一天 1 更、一周...

42290
来自专栏葡萄城控件技术团队

HTML5 & CSS3初学者指南(3) – HTML5新特性

介绍 本文介绍了 HTML5 的一些新特性。主要包含以下几个方面: Web 存储 地理位置 拖放 服务器发送事件 Web存储 HTML5...

26380
来自专栏進无尽的文章

工具篇-统计Crash的工具Crashlytics使用指南

按照官网里的步骤你基本上一步一步来就可以完成 Crashlytics集成到项目中了。 我在集成的时候遇到了一些问题:

25010
来自专栏Java社区

超好用的微信工具,清理僵尸粉,群发,群管,自动回复。

39940
来自专栏carven

reactjs

最近在学习react js,ReactJS是Facebook开发的用于构建用户界面的JAVASCRIPT库,利用其可以实现组件式开发。

10200
来自专栏云加头条

云+社区开发者大会TechWork技术工作坊学员准备——智能钛机器学习平台应用实践

3. 需要提前申请开通TI-ONE平台(申请中备注“参加开发者大会工作坊”),并开通COS服务

53370

扫码关注云+社区

领取腾讯云代金券