网络协议——FTP(简介、搭建FTP服务端)

一、简介 

1、什么是FTP?

  • FTP(File Transfer Protocol,文件传输协议)
    • TCP/IP 协议组的协议之一。
    • 常用20(数据)、21(命令)端口作为通讯端口。(22为SSH端口)
    • FTP分为服务端和客户端。
    • 以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。
    • 用户不能成为服务端计算机中的正常用户。
  • 工作机制
    • 使用了两条 TCP 连接,一条是数据连接,用于数据传送;另一条是控制连接,用于传送控制信息(命令和响应)。
    • 整个交互的 FTP 会话中,控制连接始终是处于连接状态的,数据连接则在每一次文件传送时先打开后关闭。

2、作用

  • 服务端的文件上传与下载。
  • 两台计算机间的文件共享。
  • 家庭照片远程存储。

3、缺点

  • 无法自动检测传输
    • FTP拥有ASCII和BINARY两种传输模式,图片和执行文件必须用BINARY模式,CGI脚本和普通HTML文件用ASCII模式上传。
  • 报文明文传输
    • FTP报文在传输过程中是不进行加密的,通过抓包软件能够直接查看报文内容,甚至FTP的用户名/密码。
  • 大文件传输不可靠
    • FTP在传输超过2G文件时,可能出现提示传输成功,但实际文件未完全传输的情况,所以在传输大文件时需要人为的分解文件,分别传输。

4、服务端与客户端

  • FTP服务端
    • 存储相应文档、图片及文件,并将存储目录分享给客户端进行访问的计算机或者服务器。
  • FTP客户端
    • 从FTP服务端上传或下载相应文档、图片及文件的计算机。

二、主动模式和被动模式

  • 这两种模式的主要区别在于如何建立数据连接。(服务器主动或被动)
  • 主动模式
    • 在主动模式下,FTP客户端会向服务器发起连接并建立控制通道(通常是通过端口21)。当客户端需要传输数据时,它会通过控制通道告诉服务器客户端正在监听的IP地址和端口号。服务器随后会从其数据端口(通常是20)主动连接到客户端提供的数据端口。
    • 服务端 连接到 客户端 的端口。
    • 问题:主动模式在某些情况下可能会被防火墙阻挡,因为服务器主动连接客户端的端口,可能会被防火墙认为是未经请求的连接。并且大多数的客户端没有独立的公网IP。
  • 被动模式
    • 在被动模式下,客户端和服务器仍然会首先建立控制通道。不同的是,当需要传输数据时,客户端请求服务器进入被动模式(通过发送PASV命令)。服务器在接收到该命令后,会打开一个随机的非特权端口并通知客户端(1024以上)。随后,客户端会主动连接到服务器的该端口来建立数据通道。
    • 客户端 连接到 服务端 的端口。
    • 优点:被动模式通常能更好地穿透防火墙和NAT(网络地址转换)设备,因为所有连接都是由客户端发起的,这样防火墙和NAT设备更容易处理。
  • 选择何种模式
    • 主动模式:适用于客户端能够直接接受外部连接的情况,且没有严格的防火墙限制。
    • 被动模式:适用于客户端在防火墙后面,或无法接受外部连接的情况。

三、搭建FTP服务端

  • 在Win7虚拟机上搭建FTP服务端,并通过本机进行访问。
  • 虚拟机:控制面板 -> 程序和功能 -> 打开或关闭Windows功能
  • 勾选下面的功能。
  • 打开计算机管理。
  • 添加FTP站点,物理路径是在虚拟机中要共享的文件夹。
  • 设置虚拟机的ip,端口保持为21不变,启用虚拟主机名项可以不必勾选,自动启动FTP站点可以勾选,SSL可以选择无SSL。
  • 身份验证勾选匿名和基本,允许访问项设置为所有用户,勾选读取和写入权限。
  • 这时可以看到,FTP站点已经创建成功并正常运行。
  • 设置允许FTP服务器通过防火墙。找到防火墙,点击进入允许程序通过Windows防火墙。勾选列表中FTP服务器,确定。
  • 右键浏览FTP服务器,可以看到之前设置的物理文件夹。
  • 放入需要传输的文件。
  • 本机:先查询虚拟机的ip地址,以供本机访问。
  • 打开文件资源管理器中输入FTP服务器的地址,ftp:// [虚拟机的IP地址],回车即可访问。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/333178.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BookStack VS HelpLook两款知识库软件的区别

现在很多企业都会进行知识管理,在这个过程中,选择一个合适的知识库软件是一个不可避免的问题。在众多知识库软件中,HelpLook和BookStack这两款软件备受企业瞩目。不知如何选择,今天LookLook同学就简单介绍一下这两款知识库的区别&…

微信公众号完成自动回复,自定义菜单

微信公众号完成自动回复,自定义菜单 首先要获取到微信公众号的开发者权限,这一步省略,可以自行百度 微信公众号对接自己的服务器 首先第一步需要有自己的服务器和固定的ip, 其中,80/443端口需要有其中一个&#xff0…

唯众云课堂:领航智慧教育,赋能职教未来,打造高效人才培养新平台

随着《中国智慧教育发展报告 2023》的发布,智慧教育被正式定义为数字教育发展的高级阶段。然而,各职院在智慧教育的发展道路上,往往面临着诸多挑战,如缺乏一体化教学平台、优质教学资源不足等。唯众凭借深厚的产业洞察与教育实践经…

【云原生】K8s管理工具--Kubectl详解(一)

一、陈述式管理 1.1、陈述式资源管理方法 kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口kubectl 是官方的 CLI 命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为apiserver 能识…

一文搞透常见的Python编码陷阱(上)(分析+案例)

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 一、别忘了冒号 1. if 语句 2. while 语句 3. for 语句 4. 函数定义 5. 类定义 6. try/except 语句 …

太速科技-基于FPGA Spartan6 的双路光纤PCIe采集卡(2路光纤卡)

基于FPGA Spartan6 的双路光纤PCIe采集卡(2路光纤卡) 1、板卡概述   板卡采用xilinx Spartan6系列芯片,支持 PCI Express Base Specification 1.1 x1。内含丰富的逻辑资源和存储单元,板卡FPGA外接双片32M*16bit DDR2缓存器,支持乒乓操作。…

Ubuntu执行命令出现乱码,菱形符号

1、问题描述 如题,Ubuntu执行命令出现乱码,菱形符号(见下图): 2、解决办法 export LC_ALLC 再运行就好了

fpga系列 HDL 00 : 可编程逻辑器件原理

一次性可编程器件(融保险丝实现) 一次性可编程器件(One-Time Programmable Device,简称 OTP)是一种在制造后仅能编程一次的存储设备。OTP器件在编程后数据不可更改。这些器件在很多应用场景中具有独特的优势和用途。 …

Web组态可视化编辑器 快速绘制组态图

演示地址:by组态[web组态插件] 随着工业智能制造的发展,工业企业对设备可视化、远程运维的需求日趋强烈,传统的单机版组态软件已经不能满足越来越复杂的控制需求,那么实现Web组态可视化界面成为了主要的技术路径。 行业痛点 对于…

nvm安装教程及使用nvm管理多个node版本

文章目录 前言一、nvm 安装教程温馨提示macOS/LinuxWindows 二、安装 node 前言 工作中,你可能会遇到以下场景: 我想使用 pnpm 命令安装依赖,但是在使用 pnpm 命令时提示如下 $ pnpm -v ERROR: This version of pnpm requires at least No…

移动云主机ECS搭建Kubernetes集群:详细步骤与指南

目录 云主机 ECS:云计算的强大引擎什么是云主机ECS?为何选择云主机ECS? 使用移动云ECS进行Kubernetes集群搭建1. 环境准备2. 安装步骤2.1 在每一个节点上执行的操作2.1.1 系统准备2.1.2 安装Docker2.1.3 安装Kubernetes的安装组件 2.2 在Mast…

chrome浏览器驱动下载

跑自动化的时候,需要打开谷歌浏览器,这个时候提示浏览器驱动找不到咋办呢? 1、网上搜索找到了这篇文章:https://www.cnblogs.com/laoluoits/p/17710501.html;按照文章介绍, 首先找到:CNPM Bin…

捷报!恒瑞医药ADC创新药SHR-A1921卵巢癌适应症拟纳入突破性治疗品种公示

近日,恒瑞医药自主研发的TROP-2抗体偶联药物(antibody-drug-conjugate, ADC)注射用SHR-A1921用于治疗铂耐药复发上皮性卵巢癌、输卵管癌或原发性腹膜癌适应症被国家药品监督管理局药品审评中心拟纳入突破性治疗品种公示名单。今年3月&#xf…

内网安全--域渗透准备知识

目录 知识点: 0x01 0x02 0x03 系列点: Linux主机信息收集 windows主机信息收集 知识点: 0、域产生原因 1、内网域的区别 2、如何判断在域内 3、域内常见信息收集 4、域内自动化工具收集 -局域网&工作组&域环境区别 -域…

Linux如何在目录下灵活创建、浏览、删除百万个文件

文章目录 一、创建百万级小文件1、单核CPU情况2、多核CPU情况3、执行效率对比3.1、单核的顺序执行3.2、多核的并发执行 二、如何列出/浏览这些文件1、查看目录下文件的数量2、列出?3、ls -f(关闭排序功能)3.1、执行效率对比 4、通过重定向导入…

HiWoo Box边缘计算网关

​在数字化浪潮汹涌的今天,边缘计算网关成为了连接物理世界与数字世界的桥梁,其重要性日益凸显。HiWoo Box,作为一款功能强大的边缘计算网关,不仅具备了传统网关的基本功能,更在数据采集、处理、传输等方面展现出了卓越…

“二叉堆:不是,啊?”

目录 前言一、堆的概念及结构堆的性质:堆的结构:最大堆最小堆堆顶注意 二、堆的实现1.初始化堆2. 堆的插入什么是堆的向上调整算法? 3.堆的删除什么是堆的向下调整算法? 4.获取堆顶的数据5.获取堆的数据个数6.堆的判空7.堆的销毁 三、建堆的时…

一文了解安卓内存抖动

目录 目录一、什么是内存抖动?1.1 Android里的内存抖动1.2 如何直观查看这种现象1.3 内存抖动带来的风险 二、如何避免内存抖动 目录 一、什么是内存抖动? 在程序里,每创建一个对象,就会有一块内存分配给它,每分配一…

超详细的前后端实战项目(Spring系列加上vue3)前后端篇(四)(一步步实现+源码)

兄弟们,继昨天的代码之后,继续完成最后的用户模块开发, 昨天已经完成了关于用户的信息编辑页面这些,今天再完善一下, 从后端这边开始吧,做一个拦截器,对用户做身份校验, 拦截器 这…

燃数科技前端25-40K*14薪一面超简单,下周二面啦

​​​​​​​ 文章末尾扫描二维码领取地址 一面 1、自我介绍 2、低代码如何设计的 3、react路由原理 4、react生命周期 5、什么是回调地狱,如何解决 6、jwt和session有什么区别 7、js文件相互引用有什么问题?如何解决 8、一个很大的json文件…