Gitlab服务器配置LDAP指导

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

找到ldap_enabledldap_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
相关推荐
本贾尼1 分钟前
Linux系统下的终端,会话,shell,bash,进程组这几个概念的关系。
linux·服务器·网络·ubuntu·bash
文火冰糖的硅基工坊21 分钟前
[嵌入式系统-115]:鸿蒙操作系统(HarmonyOS)与欧拉操作系统(openEuler)、Linux操作系统的关系、比较及异同如下:
linux·服务器·科技·华为·重构·架构·harmonyos
馨谙36 分钟前
标题:Linux 系统中的“保险库管理员”:深入浅出理解 /etc/shadow 文件
linux·运维·服务器
wadesir2 小时前
云服务器与传统服务器租用的核心差异解析(云服务器与服务器租用之间的区别在哪里?)
运维·服务器
风吹落叶花飘荡2 小时前
启用服务器登录失败处理与超时自动退出功能
运维·服务器
嵌入式郑工8 小时前
LINUX驱动开发: 设备和驱动是怎么匹配的?
linux·运维·服务器
rain bye bye9 小时前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
郭式云源生法则9 小时前
归档及压缩、重定向与管道操作和综合使用,find精确查找、find处理查找结果、vim高级使用、vimdiff多文件使用
linux·运维·服务器
字节逆旅9 小时前
Git提交后追加修改操作指南
gitlab
小池先生10 小时前
服务请求出现偶发超时问题,经查服务本身没问题,问题出现在nginx转发。
运维·服务器·nginx