FTP简单搭建(一)
一、ftp服务介绍
vsftp(very security ftp file transfer protocol 非常文件传输协议)
ftp分为主动模式和被动模式。
主动模式:(不安全,传数据的端口是固定的20号,容易被截取)
1、 客向服的21号端口发送连接请求信号
2、 服使用20号端口主动和客连接,服使用20号发送的数据,客通过>1024的随机端口接收。
被动模式:(安全,传数据的端口是>1024的随机端口,不易被截取)
1、 客向服的21号端口发送连接请求信号
2、 服使用>1024随机端口主动和客连接,服使用>1024的随机端口发送的数据,客通过>1024+1的随机端口接收。
#lftp 登录服务器的这一瞬间的流程:
1、-------------tcp connection ------------->
首先,客户端向服务端发送建立连接的请求
2、<-------------220 ready ----------------
服务端反馈220的代码,表明21号端口处于正常侦听状态
3、-------------user --------------------->
客户端向服务端发送一个用户名
4、<-------------331 authentication-----------
服务端反馈331代码,要求客户端输入验证密码
5、-------------passwd------------------->
客户端向服务端发送密码
6、<-------------230 login-------------------
服务端反馈230代码,如果验证通过允许客登录
7、-------------pwd ----------------------->
客户端向服务端发送一条指令,例如pwd显示当前路径
8、<-------------257 work path --------------
服务端反馈代码,显示当前工作路径,每个指令的反馈代码都不同
二、实验环境
vmware workstation pro15
red hat enterprise linux server release 7.3 (maipo)
xshell 6(可不需要)
三、安装服务
[root@b ~]# yum install -y vsftpd lftp
四、匿名用户访问
直接重启服务即可
[root@b ~]# systemctl restart vsftpd
测试
[root@b ~]# >/var/ftp/pub/1 [root@b ~]# ll /var/ftp/pub/1 -rw-r--r--. 1 root root 0 jul 25 06:24 /var/ftp/pub/1 [root@b ~]# lftp b.kkcn.host lftp b.kkcn.host:~> ls drwxr-xr-x 2 0 0 15 jul 25 10:24 pub lftp b.kkcn.host:/> cd pub/ lftp b.kkcn.host:/pub> ls -rw-r--r-- 1 0 0 0 jul 25 10:24 1 lftp b.kkcn.host:/pub> get 1 lftp b.kkcn.host:/pub> exit [root@b ~]# ll -rw-r--r--. 1 root root 0 jul 25 06:24 1
五、配置文件简述
vim /etc/vsftpd/vsftpd.conf 主配置文件 anonymous_enable=yes 允许匿名访问 local_enable=yes 允许本地 write_enable=yes 允许写入 anon_upload_enable=yes 允许匿名上传 anon_mkdir_write_ enable=yes 允许匿名用户创建新的目录 dirmessage_enalbe=yes 开启目录提示功能 xferlog_enable=yes 激活上传下载的日志 connect_from_port_20=yes 开启20号端口的主动模式 chown_username=whoever 指定匿名上传的用户 xferlog_file=/var/log/xferlog 日志文件,这个要反注释打开 xferlog_std_format=yes 启用日志的标准格式 idle_session_timeout=600 连接上服务器10分钟内,如果什么操作都不做,就会被服务器踢掉,默认300秒 date-connection-timeout=120 会话超时时间,如果因为断线导致连接断开,2分钟后,服务端会把客户端踢下去,默认300秒 ftpd_banner=welcome to joinlabs 欢迎信息,在lftp没用 listen=no no只侦听ipv4, yes侦听ipv4和ipv6 listen_ipv6=yes 支持ipv6,但是不侦听ipv6也没用 userlist_enable=yes 启用黑名单
六、配套设置
上一篇: BearerToken之JWT的介绍
下一篇: 1.智能快递柜(开篇)
推荐阅读
-
EpiiAdmin 开源的php交互性管理后台框架, 让复杂的交互变得更简单!Phper快速搭建交互性平台的开发框架,基于Thinkphp5.1+Adminlte3.0+Require.js。
-
Android用MVP实现一个简单的类淘宝订单页面的示例
-
新手站长如果5小时搭建一个影视网站
-
自己写操作系统难吗(教你设计一个简单的系统)
-
使用vue脚手架(vue-cli)搭建一个项目详解
-
Photoshop设计制作出一条简单的轻烟般紫红色光束
-
JSP 报表打印的一种简单解决方案
-
用html5的canvas和JavaScript创建一个绘图程序的简单实例
-
用Python一键搭建Http服务器的方法
-
Python3之简单搭建自带服务器的实例讲解