文档库 最新最全的文档下载
当前位置:文档库 › kerberos与openldap整合

kerberos与openldap整合

kerberos与openldap整合
kerberos与openldap整合

kerberos与openldap整合

一、安装kerberos

1.安装方法:编译源代码。

2.kerberos版本:krb5-1.7。

接下来我们开始安装kerberos:

1../configure –prefix=/usr/local/

注:--prefix=/usr/local/用来指定kerberos的安装路径。在此之前,我们需

要在usr/local/目录下创建var文件夹,在usr/local/var目录下创建krb5kdc

文件夹。

2.make

3.make install

安装kerberos 之后,开始写配置文件:

在目录/etc/下找到配置文件krb5.conf进行修改

在目录/usr/local/var/krb5kdc 下创建数据库配置文件kdc.conf和权限管理文件kadm5.acl。

这里为了方便,我们进行了最简单的权限配置。

创建数据库:/usr/local/sbin/kdb5_util create –r KDC -s

这样就基本完成了kerberos 的安装了。接下来我们启动服务,测试服务是否安装成功。

启动服务:usr/local/sbin/krb5kdc

添加管理主体:

启动kadmin服务:

启动kadmin服务失败。

通过修改目录/etc 下的hosts文件就可以解决这一问题

这个名字要与配置文件中的名字保持一致。

再次启动kadmin服务就能成功了

通过启动以上几个服务,kerberos基本安装成功了。

二、安装openldap

1.安装方法:编译源代码。

2.openldap版本:openldap-2.

3.40。

接下来我们就开始安装openldap:

1../configure --prefix=/usr/local/openldap

注:prefix=/usr/local/openldap是用来指定安装路径的。需要我们先手动

在/usr/local/目录新建openldap这个文件夹。

2.make depend

3.make

4.make test

5.make install

安装openldap 之后,开始写配置文件

在usr/local/openldap/etc/openldap/下找到配置文件slapd.conf

1.引入schema文件

2.修改目录名,设置管理员

3.设置密码

当前的密码是以明文的形式保存在配置文件之中,这样存在安全隐患,我们可以通过/usr/local/openldap/sbin下的slappasswd,将密码加密成密文的形式,保存于配置文件中。

将密文形式的密码粘贴到配置文件中

写完配置文件之后,进行数据录入

我们采用导入ldif文件的方式进行数据录入的。

首先创建一个ldif文件,在里面写入要导入openldap中的数据,内容如下:

注:每一行的行首、行尾一定不能有空格、Tab!!!

通过命令:ldapadd –x –D “cn=admin,dc=kerberos,dc=kdc”–W –f test.ldif 完成数据录入。

通过命令:ldapsearch -x -b "dc=kerberos0,dc=kdc0" "(objectclass=*)"查询

ldap中的数据。

通过以上几个步骤,可以确定openldap已经安装成功,接下来我们来安装kerbreos

三、安装kerberos

1.安装方法:编译源代码。

2.kerberos版本:krb5-1.7。

接下来我们开始安装kerberos:

1../configure --prefix=/usr/local/–with-ldap

注:--prefix=/usr/local/用来指定kerberos的安装路径,--with-ldap是将

kerberos和ldap进行整合。

在此之前,我们需要在usr/local/目录下创建var文件夹,在usr/local/var

目录下创建krb5kdc文件夹。

2.make

3.make install

安装kerberos之后,开始写配置文件

在目录/etc/下找到配置文件krb5.conf进行修改

注:红线框出来的部分,是用来指定ldap为kerberos存放数据的地方,注意在写配置文件的时候不要漏泄了这一句。蓝线框出来的部分,是存放进入ldap的密码文件的目录。

写完了kerberos的配置文件,我还要修改openldap的配置文件,使openldap 支持kerberos。

修改openldap配置,使其支持kerberos有两种情况:

1.静态通过slapd.conf配置,每次配置后需要重新启动ldap服务2.slapd.d来动态配置,不需要重新配置ldap服务器。

这里我们采用的是静态配置方法。

对于静态ldap的情况很简单就是在slapd.conf文件中配置加上

1.引入kerberos.schema

在kerberos的安装源代码,目录src/plugins/kdb/ldap/libkdb_ldap下找到kerberos.schema文件,拷贝到目录/usr/local/openldap/etc/openldap/schema下,然后在配置文件中引入kerberos.schema。

2.在slapd.conf中添加ACL

3.krb5principalName添加索引。

以上就完成了对openldap的配置文件的修改。

接下来就进行数据的录入:

1.创建全局container(ou=krb5,dc=kerberos0,dc=kdc0)

2.管理“域”的dn(cn=kdc-srv,ou=krb5,dc=kerberos0,dc=kdc0)

3.kdc服务的dn(cn=adm-srv,ou=krb5,dc=kerberos0,dc=kdc0)

同样是采用导入ldif文件的方式进行数据录入

通过命令:ldapadd –x –D “cn=admin,dc=kerberos,dc=kdc”–W –f krb.ldif 完成数据录入。

图中用红线框出来的部分就是kerberos进入ldap所需的密码,接下来我们就需要经这两个密码提取出来,以文件的形式放入krb5.conf配置文件中所指定的目录下。

通过命令:kdb5_ldap_util -D cn=admin,dc=kerberos,dc=kdc stashsrvpw -f /etc/kerberos/service.keyfile cn=kdc-srv,ou=krb5,dc=kerberos,dc=kdc和

kdb5_ldap_util –D,cn=admin,dc=kerberos,dc=kdc stashsrvpw -f /etc/kerberos/service.keyfile cn=adm-srv,ou=krb5,dc=kerberos,dc=kdc提取密码。

接下为kerberos创建域:

kdb_ldap_util –D cn=admin,dc=kerberos,dc=kdc create –r KDC –s.

这样就完成openldap对kerberos的支持。

四、测试

1.添加管理主体

命令addprinc,添加主体。

命令listprincs,列出所有的主体。

用红线框出来的就是我们刚才创建的主体。2.启动服务

命令kinit,获取票据。

命令klist,列出票据。

相关文档