LDAP服務器搭建
環境:redhat 6.0 64位
yum install openldap-clients openldap-servers -y 安裝軟件
cd /etc/openldap
rm -fr /etc/openldap/slapd.d/ 刪除此目錄,會影響實驗,
cp -p slapd.conf.bak slapd.conf 注意複製權限
vi slapd.conf
database bdb
suffix "dc=westos.org"
checkpoint 1024 15
rootdn "cn=Manager,dc=westos.org"
rootpw westos 添加密碼
access to *
by dn.exact="cn=Manager,dc=westos.org" read
by * none
cp /usr/share/doc/openldap-servers-2.4.19/DB_CONFIG.example /var/lib/ldap/
DB_CONFIG
cd /var/lib/ldap/
chown ldap.ldap DB_CONFIG
/etc/init.d/slapd start 重啓服務生成文件/var/lib/ldap/可以看到生成的文件
less /usr/share/doc/openldap-servers-2.4.19/README.migration 查看遷移用戶的幫助文檔
yum install migrationtools 需要安裝遷移的軟件
cd /usr/share/migrationtools 進入配置目錄
useradd ldapuser1 添加共享用戶
useradd ldapuser2
useradd ldapuser3
echo westos |passwd --stdin ldapuser1
echo westos |passwd --stdin ldapuser2
echo westos |passwd --stdin ldapuser3 添加ldap用戶
vi migrate_common.ph
$DEFAULT_MAIL_DOMAIN = "westos.org";
$DEFAULT_BASE = "dc=westos.org"; 修改配置
./migrate_passwd.pl /etc/passwd >users.ldif 遷移用戶信息
./migrate_group.pl /etc/group >groups.ldif 遷移組信息
./migrate_base.pl >base.ldif 遷移OU信息
vi base.ldif 刪除其他,只留下用戶,組就可以
dn: dc=westos.org
dc: westos.org
objectClass: top
objectClass: domain
dn: ou=People,dc=westos.org
ou: People
objectClass: top
objectClass: organizationalUnit
dn: ou=Group,dc=westos.org
ou: Group
objectClass: top
vi users.ldif 刪除其他用戶,只保留ldapuser1,ldapuser2,ldapuser3
vi groups.ldif 刪除其他組,只保留ldapuser1,ldapuser2,ldapuser3
vi快速刪除前面所有的行 d+gg 如果是下面d+GG
userdel ldapuser1
userdel ldapuser2
userdel ldapuser3 刪除用戶
ldapadd -W -x -D "cn=manager,dc=westos.org" -f base.ldif 添加
ldapadd -W -x -D "cn=manager,dc=westos.org" -f users.ldif
ldapadd -W -x -D "cn=manager,dc=westos.org" -f groups.ldif
ldapsearch -b "dc=westos.org" -x 查看添加的信息
服務端配置完成,在客戶端安裝directory-client ,就可以看到用戶
如果想要ssh登錄,就需要開啓tls
vi /etc/openldap/slapd.conf 修改配置
TLSCACertificateFile /etc/pki/tls/certs/ca-bundle.crt
TLSCertificateFile /etc/pki/tls/certs/slapd.pem
TLSCertificateKeyFile /etc/pki/tls/certs/slapd.pem
cd /etc/pki/tls/certs 生成加密文件
make slapd.pem Common Name那裏一定要寫自己的主機名
chgrp ldap slapd.pem 讓ldap可以讀取
chmod 640 slapd.pem
scp slapd.pem 192.168.0.98:/etc/openldap/cacerts/ 拷貝證書到客戶端
/etc/init.d/slapd restart 重啓服務
測試:客戶端選擇tls加密 可以看到用戶,可以ssh登錄,完成
ldap使用web管理
tar zxf phpldapadmin-1.2.2.tgz -C /var/www/html/
cd /var/www/html
mv phpldapadmin-1.2.2 ldap 修改名稱方便訪問
cd /ldap/config
cp config.php.example config.php 複製配置文件
/etc/init.d/httpd restart
yum install php php-ldap -y 安裝php支持
cn=manager,dc=westos.org 用戶名
westos 密碼