本文目录一览:
- 1、windows系统怎么安装ldap
- 2、window 2003 LDAP 不可用如何开启
- 3、如何在 Windows Server 2008 中 启用 LDAP 签名
- 4、windows下配置openldap,manager的连接:LDAP error:无效的凭据
windows系统怎么安装ldap
一、OpenLDAP安装和配置
安装还是比较简单的,一直next就好。
这里记得把上面2个都选上,将LDAP注册为系统的一个服务,默认安装位置:C:\Program Files\OpenLDAP,
进入安装目录,编辑slapd.conf文件:
找到
ucdata-path ./ucdata
include ./schema/core.schema
在下面加入:(注意你的系统路径,可能随安装位置不同而稍有差异)
include ./schema/core.schema (这里是和原来有的,如果加入的话就重复包含了,不能正常启动了。应该除这句外都加入)
include ./schema/corba.schema
include ./schema/dyngroup.schema
include ./schema/java.schema
include ./schema/misc.schema
include ./schema/cosine.schema
include ./schema/nis.schema
include ./schema/inetorgperson.schema
include ./schema/openldap.schema
这个搞定以后,在同一文件后面的(大概65-66行,修改)
suffix ”o=anotherbug,c=com“ (直接拷贝过去引号会变成中文的。注意引号用英文的,会影响启动)
rootdn ”cn=manager,o=anotherbug,c=com“
还有第70行的位置 : rootpw secret,这里要修改为加密后的密码。
具体操作:
打开命令行,定位到安装目录下,输入:slappasswd -h {MD5} –s “替换为你想要设置的密码,无引号”
将生成的MD5密文:{MD5}Xr4ilOzQ4PCOq3aQ0qbuaQ==填入原来secret位置。
OK至此配置已经搞定,可以测试一下服务了。打开命令行转到安装目录下输入:sldapd -d 1 注意命令是(slapd -d 1)
至此LDAP服务器已经搭建并可以跑起来了.下面要来测试怎么倒入.ldif格式的数据了。
二、建立条目(Entry) ,导入 ldif 后缀名文件
ldif:LDAP Data Interchange Format,基于文本。有两种类型的 LDIF 文件:第一种是描述 Directory 条目数据的,第二种是描述更新条目的。我们主要看怎么描述条目的。-windowsldap设置
打开编辑器(如Editplus,UltraEdit等),新建test.ldif内容如下:
dn: o=anotherbug,c=com
objectClass: dcObject
objectClass: organization
o: anotherbug
dc: com
dn: uid=mousepoato, o=anotherbug,c=com
uid: mousepoato
objectClass: inetOrgPerson
mail: paradise.lsj@gmail.com
userPassword: admin
labeledURI:
sn: Li
cn: test
注意ldif文件对格式的要求非常严格,属性要以冒号和空格与值隔开,并且其他地方不允许有空格。否则当你导入ldif文件时,会提示出现“ldap_add: Invalid syntax (21)”等诸多错误,另外在我机器上测试,ldif对中文支持也还不好,比如我将最后的cn: test改为 cn: 鼠标土豆,导入就会报错。-windowsldap设置
写完保存到安装目录下。在命令行输入:
ldapadd -c -x -D “cn=manager,o=anotherbug,c=com” -w “刚才替换secret出的密码明文” -f test.ldif
运行命令后结果如下:
注意我们在ldapadd后面加上了 ”–c “ 参数,他会一直运行不会因错误而终止,比如对系统已经存在的entry命令会提示但不会中止。
三、LDAP查看工具
可能大家看了这么多感觉还是很抽象,我们需要一个GUI看看LDAP到底是个什么东东。
这里推荐两个浏览工具
1、LdapBrowser
这是个Java 开发的 LDAP Browser/Editor 工具,不但跨平台(Windows, Unix-like),而且功能非常完整,速度又快。运行起来的界面时这个样子的。
2、Softrra LDAP Administrator 2009
这是一个比较强大和专业的客户端,涵盖了大多数企业的LDAP服务类型。
一直下一步安装成功后,它的配置也是比较简单的:
新建一个profile,命名为Local_LDAP
配置连接信息
这是完整配置好后的效果
四、通过 JNDI api操作LDAP例子
Javax里面提供的JNDI为我们封装好了对LDAP 的directory service进行存取查询的函数,可以方便实用。
贴上我用JUnit4写一个对LADP服务器进行测试的代码供参考:
private static Logger log = Logger.getLogger(TestLdapOper.class);
DirContext context = null;
TestLdap tldap = null;
@Before
public void init() throws NamingException {
tldap = new TestLdap();
context = tldap.getContext();// 获取context
}
@Test
@Ignore
public void testInsert() throws NamingException {
tldap.addEntry(context, “uid=IBM,o=anotherbug,c=com”);
}
@SuppressWarnings(“unchecked”)
@Test
public void testGetAttributes() throws NamingException {
List attNameList = new ArrayList();
attNameList.add(“o”);
attNameList.add(“dc”);
attNameList.add(“objectClass”);
Map map = JNDIUitl.getAttributes(context, “o=anotherbug,c=com”, attNameList);
Iterator keyValuePairs = map.entrySet().iterator();
for (int i = 0; i map.size(); i++) {
Map.Entry entry = (Map.Entry) keyValuePairs.next();
Object key = entry.getKey();
Object value = entry.getValue();
log.info(key + “==key”);
log.info(value + “–value”);
}
}
@SuppressWarnings(“unchecked”)
@Test
public void testGetAttriValues() throws NamingException {
assertEquals(“anotherbug.com”, JNDIUitl.getAttributeValues(context, “o=anotherbug,c=com”, “dc”).get(0) + “”);-windowsldap设置
List lst = new ArrayList();
lst = JNDIUitl.getAttributeValues(context, “o=anotherbug,c=com”, “objectClass”);
assertEquals(“organization”, lst.get(1) + “”);
for (int i = 0; i lst.size(); i++) {
log.info(lst.get(i));
log.info(ReflectionToStringBuilder.toString(lst.get(i)).toString());
}
}
@SuppressWarnings(“unchecked”)
@Test
public void testSearchContext() throws NamingException {
List list = JNDIUitl.searchContextSub(context, “o=anotherbug,c=com”, “(objectClass=*)”);
for (int i = 0; i list.size(); i++) {
log.info(list.get(i));
}
}
@After
public void destroy() throws NamingException {
context.close();
}
window 2003 LDAP 不可用如何开启
端口:389
服务:LDAP、ILS
说明:轻型目录访问协议和NetMeeting Internet Locator Server共用这一端口。
开始--程序--管理工具--服务里找到服务项,
选中属性选项将启动类型改成自动,并启用该服务。就可以了。
如何在 Windows Server 2008 中 启用 LDAP 签名
使用组策略
如何将服务器设置 LDAP 签名要求
单击开始,单击运行,键入mmc.exe,,然后单击确定。
在文件菜单上,单击添加/删除管理单元。
在添加或删除管理单元对话框中,单击组策略管理编辑器,然后单击添加。
在选择组策略对象对话框中,单击浏览。
在浏览组策略对象对话框中,在下的域、 Ou 和链接的组策略对象区域中,单击默认域策略,然后单击确定。
单击完成。
单击确定。
展开默认域控制器策略展开计算机配置,展开策略、 展开Windows 设置、 展开安全设置、 展开本地策略,然后单击安全选项。
用鼠标右键单击域控制器: LDAP 服务器签名要求,然后单击属性。
在域控制器: LDAP 服务器签名要求属性对话框中,启用定义这个策略设置,单击以选中定义这个策略设置下拉列表列表中,在要求签名,然后单击确定。
在确认设置更改对话框中,单击是。
如何设置客户端 LDAP 签名要求通过本地计算机策略
单击开始,单击运行,键入mmc.exe,,然后单击确定。
在文件菜单上,单击添加/删除管理单元。
在添加或删除管理单元对话框中,单击组策略对象编辑器,然后单击添加。
单击完成。
单击确定。
展开本地计算机策略、 展开计算机配置、 展开策略,展开Windows 设置、 展开安全设置,展开本地策略,然后单击安全选项。
用鼠标右键单击网络安全: LDAP 客户端签名要求,然后单击属性。
在网络安全: LDAP 客户端签名要求属性对话框中,单击要在下拉列表中,选择需要签名,然后单击确定。
在确认设置更改对话框中,单击是。
如何通过一个域组策略对象设置客户端 LDAP 签名要求
单击开始,单击运行,键入mmc.exe,,然后单击确定。
在文件菜单上,单击添加/删除管理单元。
在添加或删除管理单元对话框中,单击组策略对象编辑器,然后单击添加。
单击浏览,然后选择默认域策略(或您要为其启用客户端 LDAP 签名组策略对象)。
单击确定。
单击完成。
单击关闭。
单击确定。
展开默认域策略,展开计算机配置,展开Windows 设置、 展开安全设置,展开本地策略,然后单击安全选项。
在网络安全: LDAP 客户端签名要求属性对话框中,单击要在下拉列表中,选择需要签名,然后单击确定。
在确认设置更改对话框中,单击是。
windows下配置openldap,manager的连接:LDAP error:无效的凭据
刚遇到这个问题,找到原因了,让我来告诉你吧!!
首先,连接正确的 User DN(或 Username)应该是:cn=manager,dc=xxx,dc=aaa
xxx和aaa为自定义配置的值
然后检查客户端工具中输入文本框的位置是否有自动添加dc=xxx,dc=aaa的配置(比如LdapBrowser中有append base DN 的勾选框),有的话就可以不需要这部分,没有的话就要输入完整的值才能验证成功-windowsldap设置