如何在 Windows Server 2008 中 启用 LDAP 签名
使用组策略
如何将服务器设置 LDAP 签名要求
1 单击开始、 单击运行、 键入mmcexe,然后单击确定。
2 在文件菜单上单击添加/删除管理单元。
3 在添加或删除管理单元对话框中单击组策略管理编辑器并单击添加然后。
4 在选择组策略对象对话框中单击浏览。
5 在浏览组策略对象对话框中单击域、 Ou 和链接的组策略对象的区域下的默认域策略,然后单击确定。
6 单击完成。
7 单击确定。
8 展开默认域控制器策略、 展开计算机配置、 展开策略、 展开Windows 设置、 展开安全设置、 展开本地策略,然后单击安全选项。
9 用鼠标右键单击域控制器: LDAP 服务器签名要求,然后单击属性。
10 在域控制器: LDAP 服务器签名要求属性对话框中定义这个策略设置启用、 单击以选中定义这个策略设置下拉列表中的要求签名,然后单击确定。
11 在确认设置更改对话框中单击是。
如何设置客户端 LDAP 签名要求通过本地计算机策略
1 单击开始、 单击运行、 键入mmcexe,然后单击确定。
2 在文件菜单上单击添加/删除管理单元。
3 在添加或删除管理单元对话框中单击组策略对象编辑器并单击添加然后。
4 单击完成。
5 单击确定。
6 展开本地计算机策略、计算机配置、策略、 Windows 设置、安全设置、 展开本地策略,然后单击安全选项。
7 用鼠标右键单击网络安全: LDAP 客户端签名要求,然后单击属性。
8 在网络安全: LDAP 客户端签名要求属性对话框中单击以在下拉列表中选择要求签名然后单击确定。
9 在确认设置更改对话框中单击是。
如何通过一个域组策略对象设置客户端 LDAP 签名要求
1 单击开始、 单击运行、 键入mmcexe,然后单击确定。
2 在文件菜单上单击添加/删除管理单元。
3 在添加或删除管理单元对话框中单击组策略对象编辑器并单击添加然后。
4 单击浏览,然后选择默认域策略﴾或您要为其启用客户端 LDAP 签名组策略对象﴿。
5 单击确定。
6 单击完成。
7 单击关闭。
8 单击确定。
9 展开默认域策略、 展开计算机配置、 展开Windows 设置、 展开安全设置、 展开本地策略,然后单击安全选项。
10 在网络安全: LDAP 客户端签名要求属性对话框中单击以在下拉列表中选择要求签名然后单击确定。
11 在确认设置更改对话框中单击是。
1 安装LDAP插件
[ https://pluginsjenkinsio/ldap/]
2 添加一个Jenkins LDAP配置
Server :这里填写LDAP server的地址即可
root DN : 这里填写你需要的base路径, 如果这里不填则勾选 Allow blank rootDN ,但是user search base和group search base则不能为空,否则会报找不到object的错误
User search base :可以不填,则会查找改root DN下的所有用户
User search filter :一般包含三种, uid={0}; cn={0}; sAMAccountName={0}, 如果不确定LDAP Server怎样设置的,则可以依次尝试
Group search base : 可以不填,则会查找改root DN下的所有组
Manager DN :认证查询该LDAP服务器的用户DN,包括该用户的完整CN, OU, DC
Manager Password : 上述用户的密码
其他可以保持默认配置
3 添加另外一个LDAP Server 的配置
点击 Add Server , 可以按照上述配置继续配置,这两个可以是不同的配置
配置多个ldap时建议勾选上 Ignore if unavailable ,这样如果其中一个ldap server不可用,会尝试使用下一些个ldap server。
4 配置过程中遇到的问题
41 错误日志:
User lookup: failed for user "your_username" LdapCallback;null; nested exception is javaxnamingPartialResultException [Root exception is javaxnamingCommunicationException: dc1dc2dc3:389 [Root exception is javanetUnknownHostException: dc1dc2dc3]] LDAP Group lookup: could not verify
其中your_username是你试图登陆的一个AD用户; dc1dc2dc3是你设置的DC=dc1, DC=dc2, DC=dc3,我这里出现了该问题是因为LDAP server我提供的是一个IP地址
原因:该问题是找不到 dc1dc2dc3该域名,请在AD上配置域名解析 your_LDAP_IP 到dc1dc2dc3或者临时在系统的/etc/hosts文件中添加该域名解析
42 错误日志:
LdapCallback;LDAP response read timed out, timeout used:60000ms; nested exception is javaxnamingNamingException: LDAP response read timed out, timeout used:60000ms; remaining name ''
这个问题是因为connection pool的连接有问题,解决方案是在Jenkins的LDAP配置中添加一个环境变量 comsunjndildapconnectpool 设为 false , 具体可参考:[ https://guvcloud/post/jenkins-and-ldap/]
43 我使用的是docker 容器跑的Jenkins,有一些有用的命令
docker logs --following container_name/ID 查看日志
docker exec --user root -it container_name/ID /bin/bash 以root用户登陆该容器
44 如果登陆速度较慢,可以enable cache来减少查询LDAP server的负载
安装“Foxmail企业地址簿”软件,该软件在站点foxfoxmailcomcn的下载区提供免费下载。
构建好网络地址簿服务器端之后,就可以在Foxmail下使用了。
点击Foxmail地址簿窗口“文件”菜单下的“新建连接”,将会弹出“LDAP服务器”设置对话框。在“属性”页,需要填写需要填写以下属性:
“帐号名称”:就是新建连接的名称。
“服务器名”:网络地址簿服务器名称,也可以填写服务器的IP地址。
“此服务器要求登陆”:要访问网络地址簿,必须选中该复选项。
“帐号”、“密码”:每个网络地址簿的注册用户都有一个帐号和相应的密码。
“域”:网络地址簿下可以开设不同的域,这里填写帐号所在的域。
“LDAP服务器”设置对话框的“高级”页可以设置其他一些属性,一般使用默认值即可。
属性填写完成后,点击“确定”,将会在地址簿窗口树状列表中看到两个新的网络地址簿文件夹,一个是私人地址簿,一个是公共地址簿。展开网络地址簿文件夹,将看到状态栏出现“正在连接地址服务器,请稍候 按ESC建取消”的信息。
如果一切正常,将打开网络地址簿。对于网络地址簿中的私人地址簿,您可以像操作本地地址簿一样进行各种操作,对于网络地址簿中的公共地址簿,只能读取其中的联系人信息。每一个使用该网络地址簿的用户的E-mail地址都会自动添加到公共地址簿。
搭建前提:已搭建gitlab-ce和内部AD域
gitlab中默认是关闭LDAP服务的,在默认配置文件/etc/gitlab/gitlabrb中修改LDAP配置项,添加以下配置:
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAMLload <<-'EOS'
main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'AD 认证'
host: '19216815'
port: 389
uid: 'sAMAccountName'
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
bind_dn: 'CN=binduser,CN=Users,DC=example,DC=com'
password: ''
verify_certificates: true
active_directory: true
allow_username_or_email_login: true
block_auto_created_users: false
base: 'ou=开发部,DC=example,DC=com'
user_filter: ''
EOS </pre>
相关参数说明:
label:登录页显示标签。
host 、port :是 LDAP 服务的主机IP和端口,默认为389。
bind_dn :管理 LDAP 的 dn(区分名)。指定ldap服务器的管理员信息,即cn=账户,cn=组织单位。(CN为对象,ou为组织单元,DC为域部分)
password:bind_dn的密码。
base:以该目录为 节点,向下查找用户。ldap服务器的base域。
user_filter:表以某种过滤条件筛选用户。
[root@localhost ~]# gitlab-ctl reconfigure
[root@localhost ~]# gitlab-ctl restart
LDAP服务器,有必要用大机吗?为什么不用X86服务器?
你这个环境,你是想使用什么版本的LDAP软件?准备做什么用?
如果没有特定的软件要求的话,你是想用商业版的?还是开源版本的?
开源版本的试试openLDAP,商业版本的,你可以试试eDirectory
0条评论