最近在折腾openldap,以下是配置TLS(ssl)的摘要:
1. 首先,需要安装openssl (鱼漂提醒:rpm或deb安装的话,还需要openssl-devel包)
2. 修改/usr/lib/ssl/openssl.cnf设置默认的国家,省份,城市等信息
3. 复制/usr/lib/ssh/misc/CA.sh到工作目录,比如~/work/
4. 修改~/work/CA.sh的证书期限,比如根证书为15年,普通证书为3年
5. 进入工作目录 cd ~/work/
6. ./CA.sh -newca 按照提示输入一些信息,中间要输入三次密码,请记住你的密码,以后签署证书时需要用到。
7. 使用openssl生成证书,需要注意的是Common Name一定要输入ldap服务器的全称,比如ldap.systemadmin.cn, openssl命令如下:
openssl req -new -nodes -keyout newreq.pem -out newreq.pem
8. 签署证书:
./CA.sh -sign
需要输入刚才的密码。
9. 将生成的证书复制到openldap的目录:
mkdir /usr/local/etc/openldap/ca
mv newcert.pem /usr/local/etc/openldap/ca/servercrt.pem
mv newreq.pem /usr/local/etc/openldap/ca/serverkey.pem
cp demo/cacert.pem /usr/local/etc/openldap/ca/
10.修改Openldap服务端配置文件slapd.conf,增加证书配置:
TLSCACertificateFile /usr/local/etc/openldap/ca/cacert.pem
TLSCertificateFile /usr/local/etc/openldap/ca/servercrt.pem
TLSCertificateKeyFile /usr/local/etc/openldap/ca/serverkey.pem
11.重启openldap服务器
#kill -INT `cat /usr/local/var/run/slapd.pid`
#/usr/local/libexec/slapd -h "ldap:/// ldaps:///"
12.客户端的配置
首先,需要将根证书复制到每台客户端,并在客户端的ldap.conf文件中如下配置:
TLS_CACERT /usr/local/etc/openldap/ca/cacert.pem
此外,鱼漂(http://www.eit.name), 特别提醒,需要在编译openldap时指定使用openssl:
(在ubuntu 9.10上测试时,只使用--with-tls,而没有指定openssl的话,好象是不成功的。)
#export CPPFLAGS="-I/usr/local/BerkeleyDB/include"
#export LDFLAGS="-L/usr/local/BerkeleyDB/lib"
(如果是编译安装BerkeleyDB,需要设置以上两个环境变量)
#./configure --with-tls=openssl --enable-modules
#make depend
#make
#make install
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
1. 首先,需要安装openssl (鱼漂提醒:rpm或deb安装的话,还需要openssl-devel包)
2. 修改/usr/lib/ssl/openssl.cnf设置默认的国家,省份,城市等信息
3. 复制/usr/lib/ssh/misc/CA.sh到工作目录,比如~/work/
4. 修改~/work/CA.sh的证书期限,比如根证书为15年,普通证书为3年
5. 进入工作目录 cd ~/work/
6. ./CA.sh -newca 按照提示输入一些信息,中间要输入三次密码,请记住你的密码,以后签署证书时需要用到。
7. 使用openssl生成证书,需要注意的是Common Name一定要输入ldap服务器的全称,比如ldap.systemadmin.cn, openssl命令如下:
openssl req -new -nodes -keyout newreq.pem -out newreq.pem
8. 签署证书:
./CA.sh -sign
需要输入刚才的密码。
9. 将生成的证书复制到openldap的目录:
mkdir /usr/local/etc/openldap/ca
mv newcert.pem /usr/local/etc/openldap/ca/servercrt.pem
mv newreq.pem /usr/local/etc/openldap/ca/serverkey.pem
cp demo/cacert.pem /usr/local/etc/openldap/ca/
10.修改Openldap服务端配置文件slapd.conf,增加证书配置:
TLSCACertificateFile /usr/local/etc/openldap/ca/cacert.pem
TLSCertificateFile /usr/local/etc/openldap/ca/servercrt.pem
TLSCertificateKeyFile /usr/local/etc/openldap/ca/serverkey.pem
11.重启openldap服务器
#kill -INT `cat /usr/local/var/run/slapd.pid`
#/usr/local/libexec/slapd -h "ldap:/// ldaps:///"
12.客户端的配置
首先,需要将根证书复制到每台客户端,并在客户端的ldap.conf文件中如下配置:
TLS_CACERT /usr/local/etc/openldap/ca/cacert.pem
此外,鱼漂(http://www.eit.name), 特别提醒,需要在编译openldap时指定使用openssl:
(在ubuntu 9.10上测试时,只使用--with-tls,而没有指定openssl的话,好象是不成功的。)
#export CPPFLAGS="-I/usr/local/BerkeleyDB/include"
#export LDFLAGS="-L/usr/local/BerkeleyDB/lib"
(如果是编译安装BerkeleyDB,需要设置以上两个环境变量)
#./configure --with-tls=openssl --enable-modules
#make depend
#make
#make install
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Sach
2010/11/08 22:11
您的网站是非常好的。我曾试图寻找这一信息一遍又一遍。我很高兴地发现这个!非常丰富的文章。谢谢你提供。
分页: 1/1 1