ldap学习资料
https://wiki.shileizcc.com/confluence/pages/viewpage.action?pageId=39223517
ldap卸载
systemctl stop slapd apt-get remove --purge slapd ldap-utils apt-get remove --purge phpldapadmin apt-get remove slapd ldap-utils rm -rf /etc/ldap rm -rf /var/lib/ldap userdel?openldap
ubuntu ldap安装
1. apt-get install -y slapd ldap-utils
?设置确认密码
2. 执行dpkg-reconfigure slapd
3.是否需要创建初始配置和数据库,选择no
?4.设置dnc,我们设置ldap.test
?5.设置组织名称,可以和上一步一样
6.配置管理员密码
7.卸载ldap时是否删除数据库,选择no
8.这里我们推荐使用最新的数据库,因此需要移走老的库,选择yes
注解:ubuntu1~18.0版本安装ldap时会有选择数据库类型选项,老的ldap使用hdb,所以我们直接选择hdb好做迁移,但是本次是ubuntu1~20.04,默认就是mdb。
安装相关资料 https://blog.csdn.net/beeworkshop/article/details/114390125 https://www.cnblogs.com/storyawine/p/15322876.html https://ubuntu.com/server/docs/service-ldap ?
schema添加
schema在ldap中相当于mysql的主键,字段类型的配置,在/etc/ldap/schema/下,可以加默认的所有的schema,执行所有的ldif文件
sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/ppolicy.ldif
adding new entry "cn=ppolicy,cn=schema,cn=config" |
phpldapadmin安装
https://github.com/leenooks/phpLDAPadmin github下载:git clone https://github.com/leenooks/phpLDAPadmin.git mv /data/ldap/phpLDAPadmin /data/ldap/phpldapadmin 软连接到Apache2 ln -s /data/ldap/phpldapadmin /var/www/html/phpldapadmin 两种方式配置文件 1. 直接copy老的ldap的:cp /var/www/html/phpldapadmin/conf/config.php 2. 修改/data/ldap/phpldapadmin/conf/config.php
mv?/data/ldap/phpldapadmin/conf/config.php.example??/data/ldap/phpldapadmin/conf/config.php 添加 $servers->newServer('ldap_pla'); $servers->setValue('server','name','LDAP Server'); $servers->setValue('server','host','127.0.0.1'); $servers->setValue('server','port',389); $servers->setValue('server','base',array('dc=uhome-app,dc=haier')); $servers->setValue('login','auth_type','cookie'); $servers->setValue('login','bind_id','cn=admin,dc=uhome-app,dc=haier'); $servers->setValue('login','bind_pass','Ldap2016^'); $servers->setValue('server','tls',false);
重启apache2 systemctl restart apache2
访问phpldapadmin http://ip/phpldapadmin
phpldapadmin相关资料 https://cloud.tencent.com/developer/article/1349446
密码策略设置
加载模块ppolicy:
cat << EOF | ldapadd -Y EXTERNAL -H ldapi:/// dn: cn=module{0},cn=config changetype: modify add: olcModuleLoad olcModuleLoad:?{0}ppolicy EOF
添加 objectClass 对象,增加额外属性和值
cat << EOF | ldapadd -Y EXTERNAL -H ldapi:/// dn: olcOverlay=ppolicy,olcDatabase={1}mdb,cn=config changetype: add objectClass: olcConfig objectClass: olcOverlayConfig objectClass: olcPPolicyConfig olcOverlay: ppolicy olcPPolicyDefault: cn=default,ou=policies,dc=uhome-app,dc=haier olcPPolicyHashCleartext: TRUE olcPPolicyUseLockout: TRUE EOF
创建policies组 cat << EOF | ldapadd -x -D cn=admin,dc=uhome-app,dc=haier -W dn: ou=policies,dc=uhome-app,dc=haier objectClass: top objectClass: organizationalUnit ou: policies EOF
定义密码规则 cat << EOF | ldapadd -x -D cn=admin,dc=uhome-app,dc=haier -W dn: cn=default,ou=policies,dc=uhome-app,dc=haier cn: default objectClass: top objectClass: device objectClass: pwdPolicy pwdAttribute: userPassword pwdAllowUserChange: TRUE pwdInHistory: 5 pwdMinLength: 5 pwdMaxFailure: 5 pwdFailureCountInterval: 30 pwdCheckQuality: 0 pwdMustChange: TRUE pwdSafeModify: FALSE pwdGraceAuthNLimit: 5 pwdMaxAge: 7776000 pwdMinAge: 0 pwdExpireWarning: 1209600 pwdLockoutDuration: 900 pwdLockout: TRUE EOF
数据恢复
由于原ldap是centos 使用hdb,且版本低,导出的数据使用命令导入一直失败,所以最后采用phpldapadmin页面导入 从之前的ldap服务器页面导出,再新ldap页面导入即可
发送邮件sendEmail命令
安装: wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz tar -zxvf sendEmail-v1.56.tar.gz cd sendEmail-v1.56 把里面的主要程序复制到环境变量目录下,即可使用 cp sendEmail /usr/bin/ 参数解释 -f root@yunwei.com 发件人邮箱 -t 123@qq.com 收件人邮箱 -s mail.yunwei.com 发件人邮箱smtp服务器 -u "testsubject" 邮件标题 -o message-content-type=html 邮件内容的格式 -o message-charset=utf8 邮件内容编码 -xu admin@yunwei.com 发件人邮箱用户名 -xp root 发件人邮箱密码 -m "test" 邮件具体内容 sendEmail -o tls=no -s "xxx.com:587" -xu "hitest@cihome.top" -xp 'xxx' -f "hitest@cihome.top" -t "xx@xx.com" -u "mytest" -o message-content-type=html -o message-charset=utf8 -o message-file=mailmsg
tls选择加密传输
|