[root@master ~]# rpm -qa | grep vsftp
[root@master ~]# yum install vsftpd-2.2.2-13.el6_6.1.x86_64
第二步、建立虚拟用户
[root@master vsftpd]# cat user.txt
test
1234567
格式为第一行为用户名名,第二行为密码,然后类推
[root@master vsftpd]# db_load -T -t hash -f user.txt /etc/vsftpd/virtual_user.db
[root@master vsftpd]# chmod 600 /etc/vsftpd/virtual_user.db
[root@master vsftpd]# cat /etc/pam.d/vsftpd
session include password-authM-1.0
#session optional pam_keyinit.so force revoke
##auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
##auth required pam_shells.so
##auth include password-auth
##account include password-auth
##session required pam_loginuid.so
##session include password-auth
#
auth required pam_userdb.so db=/etc/vsftpd/virtual_user
account required pam_userdb.so db=/etc/vsftpd/virtual_user
[root@master vsftpd]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO ##是否允许匿名用户访问
local_enable=YES ##设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问
write_enable=YES ##设定可以进行写操作。
local_umask=022 ##设定上传后文件的权限掩码
dirmessage_enable=YES ##设定开启目录标语功能。
xferlog_enable=YES ###设定开启日志记录功能。
connect_from_port_20=YES
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_list_enable=YES 限定用户不可以离开主目录
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
user_config_dir=/etc/vsftpd/vuser_conf
#chroot_list_enable=YES 限定用户不可以离开主目录
#chroot_list_file=/etc/vsftpd/chroot_list
chroot_local_user=YES //这里为了方便,直接默认情况下将所有用户都锁定在自己的目录里,如果不写这一行的话,就需要启用上面的两行,以后添加新账户的时候需要将用户添加到chroot_list_file来,来进行锁定用户在自己
的目录里,
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
chroot_local_user=YES
你可能要指定一个明确本地用户的列表来 chroot() 到它们的家目录.如果chroot_local_user is YES, 那么列表里的不能改变家目录。
此时被限制在家目录:
ftp> ls
227 Entering Passive Mode (127,0,0,1,126,143).
150 Here comes the directory listing.
226 Directory send OK.
ftp> cd /tmp
550 Failed to change directory.
ftp> cd aa
250 Directory successfully changed.