FTP服务的原理
- 文件传输协议,应用层的文件共享服务,基于两个端口进行传输
- 假设有在两台主机一台主机远程连接的服务器为文件共享服务器,本地主机为客户端在两台主机正常建立连接的情况下可以通过本地主机基于ftp协议访问服务器的文件并将文件下载到本地。如果同样服务器允许客户端写入可以将本地文件上传到服务端
FTP服务的用户分类
-
ftpReal账户(本地用户)
在服务器上拥有账号,登陆服务器时,默认主目录就是账号命名的主目录,还可以变更到其他目录
-
ftpGuest用户(虚拟用户)
该用户只能访问自己的主目录,不能访问自己主目录以外的文件,保证其他文件的安全性
-
ftpAnonymous(匿名用户)
这类用户在FTP服务器中没有指定账户,但仍可以匿名访问某些公开资源
FTP的传输方式
- ASCll
- 二进制
使用模式
-
主动模式FTP
服务器数据传输–主动模式(主动将命令传给客户端)
客户端:开启高位随机端口和服务21端口建立命令连接,发送post命令
服务端:回复命令请求
服务端:开启20数据端口和客户端高位随机端口建立数据连接
客户端:回复确认信息
-
被动模式FTP
服务端数据传输–被动模式
客户端:开启高位随机端口和服务端21端口命令连接,发送post命令
服务端:回复命令请求(要想传输信息,必须再向我发送请求)
客户端:通过高位端口发送请求
服务端:通过被动方式将数据传输给客户端
客户端:回复收到
-
两种模式的缺点
主动模式对ftp服务器管理有利,是由FTP服务器主动与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞,而被动模式对客户端管理有效,它是企图与服务端的随机端口建立连接但是这个端口又有可能被服务端防火墙拒绝
例题练习
1、创建teacher虚拟用户
2、创建虚拟用户
3、加载数据库文件
4、更改认证模块
5、编辑主配置文件
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
6、对虚拟用户做禁锢
[root@localhost ~]# vim /etc/vsftpd/chroot_list
7、ie浏览器测试