vsftpd服务
前提:在做ftp实验前,修改/etc/sysconfig/selinux中的SELINUX为disabled,修改后需要重启才能生效
1.什么是ftp
FTP(File Transfer Protocol)即文件传输协议,中文简称为“文传协议”。
在FTP的使用当中,用户经常遇到两个概念:
下载:"下载"文件就是从远程主机拷贝文件至自己的计算机上
上传:"上传"文件就是将文件从自己的计算机中拷贝至远程主机上
2.安装ftp
yum install vsftpd -y
systemctl stop firewalld
systemctl disable firewalld
systemctl start vsftpd
systemctl enable vsftpd
注:防火墙可以不用关闭,但是需要将ftp服务添加到防火墙允许的程序中。
lftp ip
##能登陆并且显示,表示安装成功
注意:如果主机没有lftp,那么也需要下载lftp,yum install lftp -y
3.vsftpd文件信息
软件安装包: vsftpd
默认发布目录: /var/ftp
协议接口: 21/tcp
服务配置文件: /etc/vsftpd/vsftpd.conf
报错id的解析:
500 ##文件系统权限过大
530 ##用户认证失败
550 ##服务本身功能未开放
553 ##本地文件系统权限过小
4.vsftpd服务的配置参数
vim /etc/vsftpd/vsftpd.conf
匿名用户设定
anonymous_enable=YES | NO ##匿名用户登陆限制
匿名用户上传
vim /etc/vsftpd/vsftpd.conf
write_enable=YES ##用户是否可以进行写操作,匿名和本地用户同时管理
anon_upload_enable=YES
systemctl restart vsftpd
chgrp ftp /var/ftp/pub/
chmod 775 /var/ftp/pub/
匿名用户家目录修改
anon_root=/目录
注意:修改的这个家目录必须存在
vim /etc/vsftpd/vsftpd.conf
anon_root=/ftpdir
systemctl restart vsftpd
匿名用户上传文件默认权限修改
anon_umask=xxx
未修改权限前,即默认情况下
修改权限后
匿名用户建立目录
vim /etc/vsftpd/vsftpd.conf
anon_mkdir_write_enable=YES | NO ##设定参数值为no表示匿名用户不可以建立目录
systemctl restart vsftpd
未添加权限时
添加权限并允许后
匿名用户下载
vim /etc/vsftpd/vsftpd.conf
anon_world_readable_only=YES|NO ##设定参数值为no表示匿名用户可以下载
systemctl restart vsftpd
匿名用户删除
vim /etc/vsftpd/vsftpd.conf
anon_other_write_enable=YES | NO ##设定参数值为YES表示匿名用户可以删除
systemctl restart vsftpd
最大上传速率
vim /etc/vsftpd/vsftpd.conf
anon_max_rate=102400
systemctl restart vsftpd
默认上传速率
修改速率后
最大连接数
max_client=3 ##允许同时有多少台主机可以远程连接本主机
本地用户设定
local_enable=YES | NO ##本地用户登陆限制
write_enable=YES | NO ##本地用户写权限限制
本地用户家目录修改
vim /etc/vsftpd/vsftpd.conf
local_root=/tutudir
systemctl restart vsftpd
本地用户上传文件权限
local_umask=xxx
未修改前,即默认上传权限022
修改上传文件权限为077后
限制本地用户浏览/目录
chroot_local_user=YES
chmod u-w /home/*
未修改前
修改内容及修改后
用户黑名单建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/ftpusers ##用户黑名单,永久性
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单建立及设定
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
注意:要想黑白名单生效,最好/etc/vsftpd/user_list文件和/etc/vsftpd/chroot_list文件都要存在