前言
简要介绍:在LDAP和FTP相关技术的基础上,提出一套基于LDAP和FTP技术的统一身份认证方案和账号管理系统方案,解决FTP系统的统一认证、访问控制和B/S模式下FTP账号管理等问题。LDAP(Lightweight Directory Access Protocol)是一种基于X.500标准的跨平台的轻量级目录访问协议。它运行在TCP/IP协议上,对Internet有着良好的支持性,采用树状的层次结构来存储数据,具有数据读取速度快,管理方便等特点。LDAP多用于构建统一身份认证系统,集中管理应用信息系统的账号,实现统一用户管理、身份认证、访问控制等功能;可解决多应用系统用户的统一管理、统一认证和统一授权;有助于减少数据冗余,提高数据安全和便于用户操作。OpenLDAP:OpenLDAP是一款开源的LDAP目录服务产品,可以运行于Linux,Uinx等操作系统。其设计目的是提供一种高效、安全的方法来查询和管理数据。通过使用SASL,SSL来支持强度认证和提供完整性与安全保护,通过使用丰富的功能强大的存取控制手段来控制对权限的操作。认证机制与流程VSFTP与LDAP集中认证,主要通过LDAP使用vsftpd.schema定义VSFTP的各项属性,并将FTP账号信息存入LDAP数据库中,当用户向FTP服务器请求认证时,FTP服务器将认证工作交由LDAP服务器处理。1.FTP用户请求连接并发送账号认证信息。2.FTP服务器根据pure-ftpd.conf中配置将用户帐号信息转发到LDAP服务器验证。3.LDAP服务器验证账号密码。4.LDAP服务器返回验证信息和账号信息(FTPStatus等属性)。5.FTP服务器根据LDAP返回信息对用户授权(是否允许连接)。6.FTP服务器向用户返回授权结果。
1.初始化准备
系统:centos7 65位配置yum源
wget http://mirrors.aliyun.com/repo/Centos-7.repo
cp Centos-7.repo /etc/yum.repos.d/
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
mv Centos-7.repo CentOS-Base.repo
yum clean all
yum makecache
关闭selinux和防火墙
sed -i ‘/SELINUX/s/enforcing/disabled/’ /etc/selinux/config && setenforce 0&& systemctl disable firewalld.service && systemctl stop firewalld.service && shutdown -r now
2.安装openldap
使用如下命令安装
yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools pam_ldap
查看版本
[root@centos-linux1810 ~]# slapd -VV
@(#) $OpenLDAP: slapd 2.4.44 (Oct 30 2018 23:14:27) $
mockbuild@x86-01.bsys.centos.org:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd