今天心血来潮,研究了下ftp协议,在linux搭建了一个ftp服务器,主要是研究下ftp的主动和被动模式。
简单的说下ftp安装配置吧
ftp服务器:192.168.3.14 linux vsftpd
ftp客户端:windows 7
检查是否有安装ftp
没有安装直接运行yum install vsftpd -y
修改ftp配置文件
vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES——是否将所有用户限制在主目录,YES为启用
anonymous_enable=NO ——不允许匿名进行访问
chroot_list_enable=YES——是否启动限制用户的名单 YES为启用
chroot_list_file=/etc/vsftpd/chroot_list——是否限制在主目录下的用户名单
做了以上修改保存
在/etc/vsftpd目录下创建用户认证文件chroot_list并添加本地系统用户进行ftp认证
[root@jw vsftpd]# cat chroot_list ——添加本地操作系统用户进行认证一行一个帐号
ftpuser
ftptest
修改密码:passwd ftptest
密码为:niceman
重启服务并查看21端口是否侦听
使用lsof查看端口是否侦听
现在开始访问ftp;注意,访问前请关闭selinux或暂时关闭防火墙,具体深入的ftp服务器配置,请自行百度查看文档,不再赘述。
安装wireshark
yum install wireshark -y
抓包命令:tshark -ni eth0 -R "ftp"
可以发现ftp是明文传输的。
tshark -ni eth0 -R "tcp.dstport eq 21"——抓包控制端口
接下来说说FTP的两种模式
FTP的主动模式
主动FTP:
命令连接:客户端大于1023端口 ——>服务器 21端口
数据连接:客户端 大于1023端口 <——服务器 20端口
客户端使用大于1023的端口建立链接服务器侦听的FTP21命令端口,服务器使用FTP20的数据端口主动链接客户端开放一个大于1023的端口
被动FTP:
命令连接:客户端 大于1023端口 ——> 服务器 21端口
数据连接:客户端 大于1023端口 ——> 服务器 >1023端口
客户端仍然使用大于1023的端口链接服务器侦听的FTP21命令控制端口,服务器再开启大于1023的随机端口给客户端进行数据传输,被动模式服务器不再使用20数据端口进行传输。
注意:windows使用IE或者资源管理器打开输入地址ftp://ip访问,是否主动或被动模式取决于这里的配置,看截图;IE——Internet选项——高级
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。