一、概述
FTP服务是linux最常见的文件服务器类别,工作于应用层,实现文件传输协议。
二、FTP类型及端口
其FTP链接类型分为 命令链接:客户端发起请求,服务器响应,默认一致保持链接
数据链接:按需打开,按需关闭,于命令链接相关联有可能同时打开多个数据链接 端口 控制链接 TCP/21 数据链接 20/随机端口
服务名:vsftpd 主配置文件:/etc/vsftpd/vsftpd.conf 用户控制文件: /etc/vsftpd/ftpusers
/etc/vsftpd/user_list
三、工作模式
工作模式分为主动模式和被动模式 主动模拟:客户端用端口n链接服务器的21号端口,建立链接并使用PORT命令告知服务器开启了n+1端口
被动模式:1.客户端使用端口n链接FTP的21号端口,告知服务器使用被动模式。2.控制连接建立后,服务器建立端口P,使用PASV命令并告知客户端3客户端端收到端口P后,使用n+1端口连接FTP的P端口,建立数据连接
分析:主动模式下,客户端会开启n、n+1两个端口,n作为客户端的命令端口,n+1作为客户端的数据端口
被动模式下,客户端同样会开启n、n+1两个端口,不同的是在建立数据连接时由客户端发起连接建立
四、实验
服务端先安装软件vsftpd,客户端安装ftp,否则无法使用ftp命令
客户端sftp加上服务端ip地址可以到服务端上
服务端上传1.txt文件,位置必须为/var/ftp/pub(默认路径)
客户端get获取服务器上的1.txt文件
下面在演示一个本地用户验证
主配置文件vsftpd.conf写下这些命令,凡是在chroot_list文件中出现的用户不会被限制登录
文件里写上lulu用户,才可以登不然会提示这个
加入后即可正常登录
本地用户访问控制
演示我把lulu用户加入到user_list文件中而lu1不加入该文件中
一共四种情况这是其一,和这个类似不做重复
在介绍一种情况,它有一票否决权就是ftpusers文件在这个文件里的用户不管怎么设置都无法登录
vim /etc/vsftpd/ftpusers
此命令将用户写入该文件夹中,用户永生不得登录除非从这里面删除