LDAP.note

noteId: WEB4664d1800dc7feabf2771bd9e0cbc9e0 · 原始路径:/ALL/世赛题目(练习) - 笔记/第48届/08-集训队解题/A/LDAP.note · 图片:13 · 附件待处理:0

 
·注意:必须要改 ldap.conf:
vim /etc/ldap/ldap.conf
 
 
1、OU:
 
ou1.ldif
 
ou2.ldif
 
ou3.ldif
 
ldapadd -x -D cn=admin,dc=hq,dc=int -W -f ou1.ldif
ldapadd -x -D cn=admin,dc=hq,dc=int -W -f ou2.ldif
ldapadd -x -D cn=admin,dc=hq,dc=int -W -f ou3.ldif
 
2、People:
cd /etc/ldapscripts/
echo 'WSC2026!shanghai' > ldapscripts.passwd
 
只展示重要的修改,其他修改不赘述
 
ldapaddgroup user1
ldapaddgroup user2
 
ldapadduser user1 user1
ldapadduser user2 user2
 
# 注意:密码有感叹号 !必须要用反引号 \ 转义为字符串
ldapsetpasswd user1 WSC2026\!shanghai
ldapsetpasswd user2 WSC2026\!shanghai
 
ldapaddusertogroup user1 user1
ldapaddusertogroup user2 user2
 
 
3、Visitor:
vim /etc/ldapscripts/ldapscripts.conf
 
 
·注意,因为后面Nginx要求仅允许user1、Vis001 ~ 050 登陆,因此Vis用户这里,需要一个组,同时包含Vis001 ~ 050用户
# debian 13已经将不同OU中,用户、组 uid、gid相同的问题解决了,因此后面在 Nginx中直接 指定允许 两个 gid的用户访问即可
 
ldapaddgroup Vis1
ldapaddgroup Vis2
 
# 使用 for 循环(分两批创建):
## for i in {001..100}; do echo $i ; done
## 第一批:
for i in {001..050}; do ldapadduser Vis$i Vis1 && ldapsetpasswd Vis$i WSC2026\!shanghai && ldapaddusertogroup Vis$i Vis1 ; done
 
## 第二批:
for i in {051..100}; do ldapadduser Vis$i Vis2 && ldapsetpasswd Vis$i WSC2026\!shanghai && ldapaddusertogroup Vis$i Vis2 ; done
或者将 user1 加入 Vi1 组
 
·SSL:
mkdir backup
mv slapd.d/* backup
cp /usr/share/doc/slapd/example/slapd.conf .
slappasswd >> slapd.conf
vim slapd.conf
 
slaptest -f slapd.conf -F slapd.d
chown -R openldap:openldap slapd.d/*
chown -R openldap:openldap /etc/ssl/globalcorp-ca/srv.*
 
vim /etc/default/slapd
保留 ldapi
 
·客户端连接:
 
注意这里要改成 hq.int,因为这台机的fqdn是 br.int
 
SSL 需要使用 demand
 
cp ca.crt /etc/ssl/certs/ca-certificates.crt
cp ca.crt /usr/local/share/ca-certificates
update-ca-certificates
 
systemctl restart nslcd