温馨提示×

GitLab在Linux上如何配置LDAP认证

小樊
42
2025-10-20 21:58:11
栏目: 智能运维

在Linux上为GitLab配置LDAP认证,可以按照以下步骤进行:

1. 安装必要的软件包

首先,确保你的Linux系统上已经安装了GitLab和OpenLDAP客户端工具。

sudo apt-get update
sudo apt-get install gitlab-ctl slapd ldap-utils

2. 配置OpenLDAP

编辑OpenLDAP的配置文件 /etc/ldap/ldap.conf,设置基本DN和其他相关参数。

BASE    dc=example,dc=com
URI     ldap://ldap.example.com

3. 配置GitLab

编辑GitLab的配置文件 /etc/gitlab/gitlab.rb,添加LDAP认证相关的配置。

gitlab_rails['ldap_enabled'] = true

gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
  main:
    label: 'LDAP'
    host: 'ldap.example.com'
    port: 389
    uid: 'uid'
    method: 'plain' # 'tls' or 'ssl'
    bind_dn: 'cn=admin,dc=example,dc=com'
    password: 'your_ldap_admin_password'
    allow_username_or_email_login: true
EOS

gitlab_rails['ldap_user_search_base'] = 'ou=users,dc=example,dc=com'
gitlab_rails['ldap_user_search_filter'] = '(uid=%{username})'
gitlab_rails['ldap_group_search_base'] = 'ou=groups,dc=example,dc=com'
gitlab_rails['ldap_group_search_filter'] = '(memberUid=%{username})'
gitlab_rails['ldap_group_search_scope'] = 'subtree'
gitlab_rails['ldap_group_name_attribute'] = 'cn'
gitlab_rails['ldap_group_member_attribute'] = 'memberUid'
gitlab_rails['ldap_group_member_format'] = '%{memberUid}'

4. 重新配置并重启GitLab

保存并关闭配置文件后,运行以下命令重新配置并重启GitLab。

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

5. 验证LDAP认证

登录到GitLab,尝试使用LDAP账户进行认证,确保配置正确。

注意事项

  • 确保LDAP服务器的URL、端口、绑定DN和密码等信息正确无误。
  • 根据你的LDAP服务器配置,可能需要调整ldap_user_search_baseldap_user_search_filter等参数。
  • 如果使用TLS或SSL,确保在gitlab_rails['ldap_servers']中设置methodtlsssl,并配置相应的证书。

通过以上步骤,你应该能够在Linux上成功配置GitLab的LDAP认证。

0