1.ftp定义
FTP是File Transfer Protocol(文件传输协议)的简称
2.vsftpd
提供ftp协议的软件是vsftpd
默认发布目录:/var/ftp
协议接口:21/tcp
配置文件: /etc/vsftpd/vsftpd.conf
3.部署ftp服务
1.安装服务端vsftpd服务
yum install vsftpd -y
2.安装客户端lftp服务
yum install lftp -y
3.开启服务端vsftpd,并开机自启
systemctl start vsftpd
systemctl enable vsftpd
4.查看防火墙状态,如果是关闭状态,打开防火墙
systemctl start firewalld
5.防火墙策略
firewall-cmd --permanent --add-service=ftp
在火墙开启状态下,永久添加ftp服务。
firewall-cmd --reload
重新加载火墙服务
6.检测
lftp 172.25.254.166,ls可以看到内容则说明服务器端已经开启vsftpd服务
4.准备工作
SELinux支持三种模式
Enforcing:强制模式,代表SElinux运行中,且已经正确的开始限制demain/type了;
Permissive:宽容模式
Disable:关闭,SELinux并没有实际运行
注意在ftp服务端,使用getenforce,
若状态是Enforcing,为了不影响后边测试,将其关闭
vim /etc/sysconfig/selinux
修改disabled
设置完后reboot重启虚拟机
重启后查看是否修改成功
5.FTP服务的使用
1.用户的访问方式:
匿名用户访问
服务端上的本地用户身份登陆
lftp 172.25.254.166 以匿名身份登陆,默认登录的是/var/ftp/
创建一个新用户tony
lftp 172.25.254.166 -u tony 以tony的本地用户身份登陆,登陆的是本地用户的家目录/home/tony
2. 报错id的解析:
500文件系统权限过大
530认证失败,系统服务器不给你登陆或者登陆过程有问题
550服务本身不开放这个功能
553本地文件系统权限过小
3.
vim /etc/vsftpd/vsftpd.conf ##修改配置文件
anonymous_enable=YES|NO ##匿名用户是否可以登陆
local_enable=YES|NO ##本地用户是否可以登陆
write_enable=YES|NO ##ftp是否对登陆用户可写
systemctl restart vsftpd ##修改完后重启
vim /etc/vsftpd/vsftpd.conf ##修改配置文件
anonymous_enable=NO ##匿名用户不可以登陆
修改完重启systemctl restart vsftpd 。发现