柴少的官方网站 技术在学习中进步,水平在分享中升华

vsftp+openldap做集中身份认证

https://blog.51niux.com/?id=70

https://blog.51niux.com/?id=71

这两篇文章已经对vsftp做了一个详细的讲解,我们也看到了如果一个ftp服务器相对很多人开放的话,这个用户管理这块是很麻烦的,要涉及到经常的用户变更,这就涉及到要频繁的登录服务器进行操作。那么可不可以用集中身份管理认证的思想来搞一搞呢?答案是肯定的,而且很简单。

第一步:部署vsftp服务器,https://blog.51niux.com/?id=71按照这个操作,假设我们的vsftpd服务的匿名用户已经操作完毕。

第二步:部署ldap服务器,我们还是假设我们的ldap服务器为192.168.1.111

第三步:vsftpd服务器的操作,也就是作为ldap客户端的操作。

#yum  install  vsftpd  pam_ldap

#vi /etc/pam_ldap.conf

base dc=51niux,dc=com #修改这一行

uri ldap://192.168.1.111/ #ldap服务器的地址

pam_password md5 #末尾加上这句话

注意:在使用SSL加密的时候,uri中指定的服务器地址必须和证书中的CN名称匹配。

若LDAP服务器不允许匿名绑定,则需要配置binddn和bindpw。

若开启ssl加密的话,还要添加下面的配置:

  ssl   yes                                      #使用SSL加密              

  tls_cacertfile     /etc/openldap/cacerts/myca.crt     #指定的CA公钥


博文来自:www.51niux.com

第四步:配置vsftpd使用pam

# cat /etc/pam.d/vsftpd   #只保留下面的两行,如果你只需要ldaptest认证的话

auth       sufficient   /lib64/security/pam_ldap.so

account    sufficient  /lib64/security/pam_ldap.so


博文来自:www.51niux.com

第五步:重启vsftpd服务

# /etc/init.d/vsftpd restart


第六步:测试

blob.png

我们vsftpd服务器没有ldaptest9这个用户

# lftp 192.168.1.111   #

lftp 192.168.1.111:~> login ldaptest9 123456

lftp ldaptest9@192.168.1.111:~> ls  #可以登录,但是提示我/ftp1/下面没有ldaptest9这个目录,好的到此说明我们ldap的用户已经给ftp所识别了。

ls: Login failed: 500 OOPS: cannot change directory:/ftp1/ldaptest9

下面我们在ftp服务器上面创建/ftp1/ldaptest9这个目录并授权ftpuser属主属组继续测试。

lftp ldaptest9@192.168.1.111:~> ls     #查看已经没问题了,下面是空的还没有任何东西

lftp ldaptest9@192.168.1.111:/> mkdir test9  #创建一个test9的目录,创建成功

mkdir ok, `test9' created

lftp ldaptest9@192.168.1.111:/> cd test9/  #进入到test9目录,没有问题

lftp ldaptest9@192.168.1.111:/test9> put /root/1.sh #上传/root目录下面的1.sh文件到/ftp1/test9/下面

5100 bytes transferred                            

lftp ldaptest9@192.168.1.111:/test9> get 1.sh    #再将1.sh下拉到本地

5100 bytes transferred  

lftp ldaptest9@192.168.1.111:/test9> lpwd  #客户端的当前用户为/tmp

/tmp

然后我们查看客户端的/tmp目录1.sh被下载下来了

然后再到ftp服务器端,进行查看:

blob.png


经过测试,ldap结合vsftpd做身份验证可以了。

根据需求,如果大家都用同一个共享目录。那就不用再每次有新用户,就去创建对应的用户目录并授权了。如果非要每个用户自己一个目录的话。那也可以用脚本之类的来实现也是很方便的。都不是多麻烦的事情。


作者:忙碌的柴少 分类:ldap 浏览:7025 评论:0
留言列表
发表评论
来宾的头像