Gitlab加入LDAP认证

如果企业大大小小系统较多,每个系统都给用户单独配置一账户。这样各个系统的账户信息都要单独记忆,比较繁琐,而且账户信息易忘。所以加入集成 LDAP 统一认证,域控管理。这里对Gitlab应用系统结合LDAP认证,前提是企业内部已搭建好AD域服务。

  1. Gitlab配置LDAP
    Gitlab已安装好,安装的CE版本。Gitlab配置LDAP服务要在配置文件中修改,无法像Jenkins加入LDAP那样安装一LDAP插件,然后配置LDAP信息即可。Gitlab中需在默认的配置文件/etc/gitlab/gitlab.rb中修改LDAP配置项。默认LDAP服务是关闭的,配置项 gitlab_rails[‘ldap_enabled‘] = false。现开启LDAP服务并配置,修改以下配置项:

    gitlab_rails[‘ldap_enabled‘] = true
    ###! **remember to close this block with ‘EOS‘ below**
    gitlab_rails[‘ldap_servers‘] = YAML.load <<-‘EOS‘
    main: # ‘main‘ is the GitLab ‘provider ID‘ of this LDAP server
    label: ‘LDAP‘
    host: ‘10.10.10.60‘
    port: 389
    uid: ‘sAMAccountName‘
    bind_dn: ‘CN=ldapadmin,CN=Users,DC=hicore,DC=local‘
    password: ‘password‘
    encryption: ‘plain‘ # "start_tls" or "simple_tls" or "plain"
    active_directory: true
    allow_username_or_email_login: false
    base: ‘DC=hicore,DC=local‘
    user_filter: ‘‘
        ....
        ...
        ..
    EOS

    host 、port :是 LDAP 服务的主机IP和端口。
    bind_dn :管理 LDAP 的 dn。指定ldap服务器的管理员信息,即cn=账户,cn=组织单位。
    base:表 LDAP 将以该 dn 为 节点,向下查找用户。ldap服务器的base域。
    user_filter:表以某种过滤条件筛选用户。
    使用gitlab命令配置重置生效。

    gitlab-ctl reconfigure
  2. 获取AD域中用户列表
    从AD域服务中获取域用户。
    gitlab-rake gitlab:ldap:check

  3. LDAP账户登录
    接下来登录Gitlab中将出现一新的账户登录窗口,LDAP登录,如下图:
  4. Gitlab关闭注册
    接下来为了提高系统安全性,Gitlab注册功能关闭,新用户只能通过 LDAP 认证的方式进行登陆。

原文地址:https://blog.51cto.com/10874766/2459536

时间: 2024-08-29 19:44:01

Gitlab加入LDAP认证的相关文章

配置Gitlab使用LDAP认证

1. 通过SSH登陆Gitlab服务器. 2. 进行以下配置文件夹. [[email protected] ~]# cd /etc/gitlab/ 3. 打开gitlab.rb配置文件,并加入以下配置. gitlab_rails['ldap_enabled'] = true ###! **remember to close this block with 'EOS' below** gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'    mai

Gitlab+Gerrit+Ldap+nginx+mysql 之Gerrit搭建与配置(一)

公司之前一直用gitlab来存放项目代码 ,目前因为业务需要(代码bug太多)需要引入gerrit来进行code review. 最初用的是centos 7.4,但是安装完成后,GerritResource中没有ALL_Project.git和All_Users.git生成,日志中一直在报错,反复装了几次后发现,在centos7上的兼容性不是太完美,所以采购了centos6.8 服务器进行安装,还是比较顺利的完成了安装. 另外本文采用LDAP认证,LDAP的配置本文不做讲解,参考其他文章. 已经

LDAP认证是什么?企业必须要认证LDAP吗?

鉴于最近不少朋友在我网站留言像我资讯关于LDAP认证的相关知识,今天抽空集中给大家讲解下到底什么是LDAP认证,以及企业要不要做LDAP认证呢? 什么是LDAP认证? LDAP认证是通过WSS3.0加上轻量目录LDAP协议搭建的一种认证方式,使用https加密传输,主要用于做文档管理.LDAP认证就是把用户数据放在LDAP服务器上,通过LDAP服务器上的数据对用户进行认证处理,好比采用关系型数据库存储用户信息数据进行用户认证的道理一样. 企业是否要做LDAP身份认证? ①LDAP数据库是对读操作

关于AD域在通过LDAP认证登录时密码修改后还可使用旧密码正常登录问题解决方法

最近一直在做一个LDAP的管理认证登录平台,但是发现在Active Directory中修改用户账号密码后,LDAP认证还可以正常通过认证,并登录系统,这是什么原因了? 在查看相关资料后发现,系Active Directory原因造成:那么应该如何解决这个问题了,可以通过修改旧密码的生命周期时间可以解决此问题: 具体原因: ?域用户成功更改密码使用 NTLM 后,旧密码仍然可用于网络访问用户可定义的时间段.此行为允许帐户,如服务帐户,登录到多台计算机来访问网络,而密码更改会传播. ?密码的扩展寿

SVN使用LDAP认证

完成了openldap的配置之后,为了更进一步的进行用户统一身份认证,所以需要配置SVN使用openldap进行认证,这样的话只需要维护ldap中的用户数据,然后在SVN上进行服务授权即可完成SVN的用户权限分配.同样的,这个配置也适合于其他的软件,比如vsftpd,ssh,openvpn等,下面开始配置SVN使用ldap认证. 1.安装sasl SASL全称Simple Authentication and Security Layer,是一种用来扩充C/S模式验证能力的机制. SASL是一个

LDAP认证客户端、自动挂载用户家目录shell脚本配置

这个是LDAP认证客户端与自动挂载家目录shell脚本配置,使用"authconfig-tui"图形化配置简单,但是后面需要手动操作,自动写入配置文件还没有研究透彻.以后完善 #!/bin/bash yum install -y nss-pam-ldapd nfs-utils nfs autofs pam_ldap openldap openldap-clients #showmount -e 172.16.16.22 automaster="/etc/auto.master

Windows 2008 使用Linux LDAP认证

公司出于数据安全需要, 把linux服务器放到了子网里面, 但是linux查看文档不是太方便. 然后领导说折腾一台windows专门用来查看文档. 网上找了下 pGina 可以用于windows的LDAP认证. 因为AD不在那个子网中, 出于安装考虑, 只有使用linux的LDAP认证了. 直接起一台windows 2008虚拟机. 在里面安装好 pGina. 打开软件. 1: 把LDAP 相关选项勾上. 因为要操作组所以把 Gateway也勾上了.然后再点击配置 2: 这里直接更改ldap的地

zabbix使用LDAP认证

为统一管理内部系统的账户,想让zabbix使用LDAP认证方式.原来zabbix有和SSO系统进行整合.当想更好管理zabbix的权限,所以想直接和LDAP整合,反正SSO账户信息也是从LDAP得到的. 公司LDAP使用的是windows的Exchange.首先需要在AD域内创建一个账户. Admin.LDAPuser和zabbix这三个账户,是为zabbix创建的三个账户. 接下来,就可以在zabbix上设置认证方式 1.在配置之前,首先需要安装php-ldap Module,否则会报找不到该

jenkins 使用LDAP认证

jenkins使用LDAP认证配置如下图所示: 用管理员账户登录jenkins,点击系统管理 ==> Configure Global Security 注意:我没有配置User search base和Group search base,这样ldap用户登录时,会对ldap 服务器上所有组所有用户进行匹配查询,如果指定了某一个组或某一个用户,那么其他组其他用户就算在ldap服务器上存在,也无法通过认证.LDAP只是做认证的,jenkins的的权限需要在授权策略中配置. 另外,我使用的是ldap