以下是我个人结合网上各种的vsftpd+pam做虚拟用户登录FTP服务器的文章做的一个总结,红色部分是比较特殊的说明,按照以下的步骤就可以实现了,我比较的笨,搞了好长的时间,中间读了一下PAM的文章,希望可以帮到各位,做一个稍稍复杂的FTP服务器。vsftp下建立虚拟用户
在RedHat AS里,是自带了vsftpd为系统提供了一个ftp服务,但在实际应用中根据自己的需要还是要做不少的配置。我们知道,在建立vsftpd用户时,我们一般是在linux下建立用户useradd的方式来访问ftp,但有时我们只想提供ftp服务,而避免用户用ftp的帐号去登录linux,采用一般的方式只能是限制该用户的访问权限,但还是避免不了用户登录进linux系统,所以比较好的方法是用vsftpd的虚拟用户(virtual users)。
一、建立虚拟用户数据库
# vi /tmp/logins.txt 它的内容是:
test1
pwtest1
test2
pwtest2
虚拟用户的信息,格式:
二、以root用户登录系统,建立用户数据库
# db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db#没有db-load需要安装db4-utils 的包
建立数据库文件 /etc/vsftpd_login.db ,同时改变它的文件属性:
# chmod 600 /etc/vsftpd_login.db
三、建立PAM文件,告诉系统你要使用自己的数据库
# vi /etc/pam.d/vsftpd /**这个文