共计 2682 个字符,预计需要花费 7 分钟才能阅读完成。
本次实践使用的 Linux 服务器 CentOS / 7.1 x86_64 (64bit)
vsftpd: version 3.0.2
FileZilla_win64_3.14.1.0.1454131478
安装 VSFTPD
1. 首先确认系统内无 VSFTPD。
rpm -qa|grep vsftpd
若有的话会显示 vsftpd-x.x.x.-x.xxx.x86_64
若没有的话会空返回
2. 安装 VSFTPD
yum -y install vsftpd
3. 设置开机启动
chkconfig vsftpd on
配置 VSFTPD
1. 打开 vsftpd 配置文件 /etc/vsftpd/vsftpd.conf
cd /etc/vsftpd
vi vsftpd.conf
.
anonymous_enable=NO // 设定不允许匿名访问
local_enable=YES // 设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为 NO 的情况下所有虚拟用户将无法访问
chroot_list_enable=YES // 使用户不能离开主目录
chroot_list_file=/etc/vsftpd/chroot_list ascii_upload_enable=YES
ascii_download_enable=YES // 设定支持 ASCII 模式的上传和下载功能
pam_service_name=vsftpd //PAM 认证文件名。PAM 将根据 /etc/pam.d/vsftpd 进行认证
// 已下三个请在配置文件中手动添加guest_enable=YES // 设定启用虚拟用户功能
guest_username=ftp // 指定虚拟用户的宿主用户,CentOS 中已经有内置的 ftp 用户了
user_config_dir=/etc/vsftpd/vuser_conf // 设定虚拟用户个人 vsftp 的 CentOS
FTP 服务文件存放路径。存放虚拟用户个性的 CentOS FTP 服务文件 (配置文件名 = 虚拟用户名
2. 创建用户密码文件 /etc/vsftpd/vuser_passwd.txt,注意奇行是用户名,偶行是密码
vi vuser_passwd.txt
admin
passwd
3. 生成虚拟用户认证的 db 文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt
/etc/vsftpd/vuser_passwd.dbls 查看有没有 vuser.passwd.db 生成
4. 编辑认证文件 /etc/pam.d/vsftpd
把前面的注释去掉,然后加上以下几条
注:db=/etc/vsftpd/vuser_passwd 中的 vuser_passwd 是你生成的虚拟用户的 db 文件
查看系统版本号:getconf LONG_BIT
系统为 32 位:
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd account
required pam_userdb.so db=/etc/vsftpd/vuser_passwd系统为 64 位:
auth required /lib64/security/pam_userdb.so
db=/etc/vsftpd/vuser_passwd account required
/lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
5. 创建虚拟用户配置文件
mkdir /etc/vsftpd/vuser_conf/
vi /etc/vsftpd/vuser_conf/admin
// 文件名等于 vuser_passwd.txt 里面的账户名,否则下面设置无效
6. 设置用户配置文件内容
local_root=/storage/ftp // 虚拟用户根目录, 根据实际情况修改 该目录必须要有读写权限
write_enable=YES // 可写
anon_umask=022 // 掩码
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
7. 设置文件夹权限
chmod -R 777 /storage
8. 设置 Selinux
setsebool -P ftp_home_dir=1 // 设置 ftp 可以使用 home 目录
setsebool -P allow_ftpd_full_access=1 // 设置 ftp 用户可以有所有权限
9. 启动 vsftpd 服务
service vsftpd start
使用 FileZilla 连接
使用快速连接功能。填入主机号,刚刚设置好的账户密码 admin/passwd
FTP 协议详解与 vsftpd 在 Linux 上的安装配置 http://www.linuxidc.com/Linux/2016-09/134831.htm
玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm
vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm
Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm
Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm
Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm
Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm
openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd http://www.linuxidc.com/Linux/2014-12/110070.htm
CentOS7 基于虚拟用户的 vsftpd http://www.linuxidc.com/Linux/2016-11/137150.htm
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-12/138639.htm