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

news2024/9/20 14:45:13

一、简介 

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.coloradmin.cn/o/1702815.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一口气看完es(上)

此系列博客分为上中下3篇:上篇是关于es的概念和对数据的增删改操作,中篇是对数据的查询、对搜索结果进行处理操作,下篇是介绍怎么在Java代码中调用和操作es。 基本概念 1、es是什么?有什么作用? es全名是elasticsea…

诚心分享!主食冻干横向对比:希喂、爱立方、K9等谁最值得入手?

主食冻干到底有必要喂吗?七年铲龄铲屎官告诉你,是真的很有必要喂! 这些年随着宠物经济的发展、科学养宠的普及,现在养猫不仅局限在让猫吃饱就行,更多人开始关注到猫的饮食健康。大量的实际喂养案例证明了,传…

【Linux】centos7下载安装Python3.10,下载安装openssl1.1.1

目录 centos7下载安装Python(版本3.10.14) (1)网页下载python压缩包,并解压缩 (2)编译安装 Python在make altinstall时,报错及解决 (3)将安装目录和可执…

Python脚本启动应用并输入账号或密码

一、简介 如果每天要启动某个软件还要输入账号密码登录的需求的话,可以参考本文章; 二、Python环境 环境:Python3.11 已经在Windows电脑中配置Python环境变量,且配置了pipd的环境变量; 三、安装模块 安装所需要的…

【Linux学习】进程间通信 (2) —— 信号

下面是有关进程通信中信号的相关介绍,希望对你有所帮助! 小海编程心语录-CSDN博客 目录 1. 信号 1.1 概念 1.2 信号的产生 1.3 信号的处理方式 2. 函数 2.1 kill() 函数 2.2 signal()函数 2.3 sigaction()函数 2.4 sigprocmask()函数 …

自定义函数python:深入解析与实操

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言:函数的命名与规范 二、函数命名:遵循规范,易于…

Python计算回归拟合各项指标

0、各项回归指标简介 Relative Root Mean Squared Error(RRMSE):The RRMSE normalizes the Root Mean Squared Error (RMSE) by the mean of observations. It goes from 0 to infinity. The lower the better the prediction performance.T…

“AI黏土人”一夜爆火,图像生成类应用应该如何长期留住用户?

文章目录 最近大火的“AI黏土人”,一股浓浓的《小羊肖恩》风。 凭借这这种搞怪的风格,“AI黏土人”等图像生成类应用凭借其创新技术和市场需求迅速崛起并获得巨大关注。然而,要保持用户黏性并确保长期发展,这些应用需要采取一系列…

Spring常用注解(超全面)

官网:核心技术SPRINGDOC.CN 提供 Spring 官方文档的翻译服务,可以方便您快速阅读中文版官方文档。https://springdoc.cn/spring/core.html#beans-standard-annotations 1,包扫描组件标注注解 Component:泛指各种组件 Controller、…

第53期|GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

Leecode热题100---46:全排列(递归)

题目: 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 思路: 元素交换函数递归: 通过交换元素来实现全排列。即对于[x, nums.size()]中的元素,for循环遍历每个元素分别成…

streamlit 学习

表情网站 https://getemoji.com/ 官网: https://streamlit.io/ 文档 https://docs.streamlit.io/develop/api-reference/chat/st.chat_message 安装: pip install streamlit启动 以下的python 文件指写streamlit 程序的脚步。 1、先切换目录到Pyth…

回溯算法之简单组合

哦吼!今天结束了二叉树,开始回溯算法 其实也需要用到迭代,哈哈哈哈,但是这个暴力穷举真的好爽。 先记一下回溯算法的基本框架吧 老规矩: 还是有结束条件 但是后面就不太一样了 这里就是for循环,循环n…

2024年中国金融行业网络安全案例集

随着科技的飞速发展,金融行业与信息技术的融合日益加深,网络安全已成为金融行业发展的生命线。金融行业作为国家经济的核心支柱,正在面临着日益复杂严峻的网络安全挑战。因此,深入研究和探讨金融行业的网络安全问题,不仅关乎金融行业的稳健运…

聚数力 以数兴 | 与“闽”同行,共话数字未来

闽江之畔,数智腾飞。5月24日,第七届数字中国建设峰会在海峡国际会展中心盛大举办。本届展会的主题是“释放数据要素价值,发展新质生产力”,由国家发展改革委、国家数据局、福建省人民政府等单位共同主办,福州市人民政府…

【电路笔记】-状态可变滤波器

状态可变滤波器 文章目录 状态可变滤波器1、概述2、**状态可变滤波器电路**3、状态可变滤波器示例4、陷波滤波器设计5、总结状态可变滤波器是一种多反馈滤波器电路,可以从同一单个有源滤波器设计中同时产生所有三种滤波器响应:低通、高通和带通。 1、概述 状态可变滤波器使用…

你也许不知道,自己可能是一个热人

今天想跟大家分享的,是一种很少有人了解的人格特质。它非常普遍,许多人都或多或少有一些倾向,但却很少有人意识到它。 不妨看一看,你有没有下面这些特征: 有着极其旺盛的求知欲,对许多奇奇怪怪的问题都有着…

工厂电子看板显示屏让生产信息推送更便捷

在当今竞争激烈的制造业领域,高效的生产管理至关重要。而工厂电子看板显示屏作为一种先进的信息展示工具,正逐渐成为工厂提升生产效率和管理水平的得力助手。 一、工厂电子看板配备了统一的管理后台 这一创新设计带来了极大的便利。通过电子看板后台&am…

GEE27:遥感数据可用数据源计算及条带号制作

1.写在前面 🌍✨今天读了一篇关于遥感数据可用数据源计算及条带号制作的文章,结合着自己的理解,添加了一些内容。 2.GEE代码 📚📚这段代码的主要作用是利用Google Earth Engine平台,通过分析Landsat 8影…

【贪心算法指针】C++ 解决子数组 / 子序列的相关问题(最大数、数组和减半的最小操作数、连续/递增序列)

文章目录 1. 前言1.1 贪心算法介绍 2. 算法题2.1_将数组和减半的最少操作次数2.2_最大数2.3_最长递增子序列2.4_递增的三元子序列2.5_最长连续递增序列2.6_数组中的最长连续子序列2.7_在字符串中找出连续最长的数字串 1. 前言 1.1 贪心算法介绍 贪心算法(Greedy A…