第十三章:vsftp文件传输服务
一、了解ftp协议及原理;
二、vsftpd的配置文件;
三、配置匿名ftp、本地用户ftp、虚拟用户ftp;
四、常用ftp客户端;
一、了解ftp协议及原理:
1.ftp文件传输协议:是c/s结构应用,监听的控制端口是tcp协议21号端口。
2. ftp的连接模式(传输模式):ftp连接的过程:先建立控制连接--传输连接--传输数据
主动模式:服务端21号端口主动发起数据连接,客户端使用大于1023号端口响应,建立连接后,使用20号端口传输数据,适用于客户端未开启防火墙的环境。
被动模式:服务端21号端口被动等待数据连接,客户端使用大于1023号端口进行请求,建立连接后,使用服务器提供被动模式的非20号端口大于1023号端口进行传输数据,适用于客户端开启防火墙的环境。比较常用的模式
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e1d8a1f39d18b9a5843d3aa785cc9921.png)
3.ftp的传输方式:ftp客户端自动选择的,无需设置
文本模式:ASCII,美国信息交换标准码,用于纯文本传输。
二进制模式:binary,传输效率高,常用来传输非文本文件。比较常用
4.ftp的用户类型:
匿名用户:(anonymous/密码空、ftp/ftp);
本地用户:本机的系统用户账号,除匿名用户外;
虚拟用户:位于独立数据库文件中的FTP用户账号,用过这种虚拟用户,为提供更安全的服务,将ftp服务与linux系 统的关联降至最低;
5.ftp服务端软件:IIS/Ser-U/vsftpd;
二、vsftpd的配置文件:
1.用户列表文件:
/etc/vsftpd/ftpusers(禁止登陆ftp的用户、黑名单);
/etc/vsftpd/user_list(如果主配置文件中设置了userlist_enable=YES,那么此文件方可生效,若userlist_deny=YES,,则仅 禁止此列表中用户登录;若userlist_deny=NO,那么表示仅允许文件中的用户登陆ftp);
2.主配置文件:/etc/vsftpd/vsftpd.conf
配置项:使用命令man 5 vsftpd.conf查看配置项帮助。
三、配置匿名ftp、本地用户ftp、虚拟用户ftp
1.配置匿名ftp:
安装软件
备份配置文件,复制配置文件的样例文件(rpm -ql vsftpd查看路径)
启动服务并测试
2.配置本地ftp:
创建本地账号;
修改配置文件,实现功能,开启本地访问,并且配置权限以及用户上传文件的反掩码值;
启动测试;
3.配置虚拟用户的ftp:
建立虚拟ftp用户账号相关文件
创建ftp虚拟用户
建立支持虚拟用户的RAM认证文件
修改vsftpd.conf支持虚拟用户
为个别虚拟用户建立独立的配置文件
启动访问测试
四、ftp客户端:
lftp ftp://用户@ip 指定用户名密码登录
wget -p 下载目录 ftp://ip/目录名 直接下载文件