Gitlab服务器配置LDAP指导

  1. ssh登录gitlab服务器:192.168.1.203
  2. 修改配置文件
powershell 复制代码
sudo su
vim /etc/gitlab/gitlab.rb

找到ldap_enabled和ldap_servers关键字并修改参数

  1. 保存配置文件并重新载入配置
powershell 复制代码
gitlab-ctl reconfigure
  1. 检查ldap相关配置是否成功(列出前100个用户,若没出现用户列表,则会报错)
powershell 复制代码
 gitlab-rake gitlab:ldap:check

  1. 重启gitlab服务
powershell 复制代码
 gitlab-ctl restart

6.配置参数含义

powershell 复制代码
gitlab_rails['ldap_enabled'] = true #启用LDAP认证。
gitlab_rails['ldap_servers'] #指定LDAP服务器的配置信息。

label #LDAP服务器的标签,这里是"LDAP"。
host #LDAP服务器的IP地址或主机名。
port #LDAP服务器的端口号,这里是389。
uid  #用户在LDAP中的唯一标识字段,这里是"sAMAccountName"。
bind_dn  #用于绑定LDAP服务器的DN(Distinguished Name)。
password  #用于绑定LDAP服务器的密码。
encryption  #使用的加密方式,可以是"start_tls"、"simple_tls"或"plain"。
verify_certificates  #是否验证证书。
active_directory  #是否是Active Directory服务器。
allow_username_or_email_login  #是否允许使用用户名或电子邮件登录。
lowercase_usernames  #是否将用户名转换为小写。
block_auto_created_users  #是否阻止自动创建的用户登录。
base  #在LDAP中搜索用户的基础DN。
user_filter  #用户过滤器,用于限制从LDAP服务器检索用户的条件。

7.参考配置文件

powershell 复制代码
  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: '**.**.**.**' 
     port: 389 
     uid: 'sAMAccountName' 
     bind_dn: 'cn=***,cn=Users,dc=***,dc=****,dc=COM' 
     password: '*****' 
     encryption: 'plain' # "start_tls" or "simple_tls" or "plain" 
     verify_certificates: true 
     active_directory: true 
     allow_username_or_email_login: true 
     lowercase_usernames: false 
     block_auto_created_users: false 
     base: 'OU=Users,OU=*****,DC=***,DC=*****,DC=COM' 
     user_filter: '' 
     ## EE only 
#     group_base: '' 
#     admin_group: '' 
#     sync_ssh_keys: false 
# 
#   secondary: # 'secondary' is the GitLab 'provider ID' of second LDAP server 
#     label: 'LDAP' 
#     host: '_your_ldap_server' 
#     port: 389 
#     uid: 'sAMAccountName' 
#     bind_dn: '_the_full_dn_of_the_user_you_will_bind_with' 
#     password: '_the_password_of_the_bind_user' 
#     encryption: 'plain' # "start_tls" or "simple_tls" or "plain" 
#     verify_certificates: true 
#     active_directory: true 
#     allow_username_or_email_login: false 
#     lowercase_usernames: false 
#     block_auto_created_users: false 
#     base: '' 
#     user_filter: '' 
#     ## EE only 
#     group_base: '' 
#     admin_group: '' 
#     sync_ssh_keys: false 
 EOS
相关推荐
网硕互联的小客服5 小时前
Linux服务器磁盘应该如何合理分区?
linux·运维·服务器
m4Rk_5 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
lisanmengmeng5 小时前
nacos nrpe 监控机及被监控机部署
服务器·nacos·nagios·nrpe
2301_808414387 小时前
Linux中动静态库的理解
linux·运维·服务器
m4Rk_7 小时前
【论文阅读】Agent 记忆机制(81):EMR——用情景记忆避免 Agent 在多步推理中反复绕圈
论文阅读·人工智能·学习·开源·github
可涵不会debug9 小时前
第一次学 LangGraph:用一个快递案例搞懂 State、Node、Edge 和 compile
服务器·数据库·mysql
Web极客码10 小时前
抹平首包开销:我用 Claude 调优 Nginx 的 Brotli 与 Gzip 动态压缩,平衡 CPU 与网络吞吐
服务器·agent 工作流·agent 图
u13013010 小时前
GitHub 热榜项目:周榜(2026-09-27)
人工智能·github
云杂项11 小时前
tmux指南:安装、配置与高效使用(Ubuntu上)
linux·服务器·ubuntu
泡海椒11 小时前
趋势分析报表:jquick-pdf折线图PDF生成实战
java·大数据·运维·服务器·前端·pdf