安装FTP服务
- 安装
yum install -y vsftpd
- 启动
service vsftpd start
尝试访问访问 ftp://ip可浏览机器上的pub目录了,该目录为服务器上/var/ftp/pub/
。
配置权限配置 FTP 权限
vsftpd 的配置目录为 /etc/vsftpd:
- vsftpd.conf 为主要配置文件
- ftpusers 配置禁止访问 FTP 服务器的用户列表
- user_list 配置用户访问控制
更改/etc/vsftpd/vsftpd.conf文件
- 阻止匿名访问
anonymous_enable=NO
- 本地用户登录
local_enable=YES/NO(YES)
- 本地用户登录目录
local_root=/home/username
- 登录用户写权限
write_enable=YES/NO(YES)
- 切换根目录
chroot_local_user=YES
- 登录用户欢迎语
ftpd_banner=Welcome to yangkui’s FTP server
- 用户目录切换设置
chroot_list_enable=YES/NO(NO)
设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
chroot_list_file=/etc/vsftpd.chroot_list
用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
chroot_local_user=YES/NO(NO)
用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
通过搭配能实现以下几种效果:- 当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
- 当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
- 当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
- 当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。
编辑完成后保存配置,重新启动 FTP 服务
service vsftpd restart
创建 FTP 用户
- 创建用户admin
useradd admin
- 设置密码
echo "adminadmin" | passwd admin --stdin
限制该用户仅能通过 FTP 访问
usermod -s /sbin/nologin ftpuser
创建用户目录
/data/ftp 为主目录, 该目录不可上传文件
/data/ftp/pub 文件只能上传到该目录下
mkdir -p /data/ftp/pub
设置访问权限
chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub
设置为用户的主目录
usermod -d /data/ftp admin
访问FTP - 浏览器访问
ftp://ip
- 资源管理器访问
ftp://admin:admin@ip
增加ftp用户
userlist_deny=NO
--新增
useradd -d /ftp_data -g ftp -s /sbin/nologin ftp_test
-d 设置用户主目录 ftp_test为用户名
passwd ftp_test
设置用户密码
将用户添加到 user_list准许访问。
将用户添加到chroot_list准许切换目录