当前位置: 首页 > news >正文

阿里云服务器手动搭建FTP教程(Windows操作系统)

阿里云百科介绍使用阿里云服务器搭建FTP教程,云服务器为Windows操作系统,当需要远程连接Windows实例进行文件传输时,可以通过搭建FTP站点实现。本文将介绍如何在Windows实例中搭建FTP站点。

目录

准备工作

步骤一:添加IIS以及FTP服务角色

(可选)步骤二:创建用于访问FTP站点的Windows用户

步骤三:设置共享文件的权限

步骤四:添加并设置FTP站点

步骤五:设置安全组及防火墙

步骤六:客户端测试访问FTP站点

后续步骤


准备工作

手动搭建FTP站点,ECS实例必须满足以下条件:

  • 操作系统:Windows Server 2008及以上系统。

  • ECS云服务器:aliyunbaike.com/go/ecs

步骤一:添加IIS以及FTP服务角色

在创建FTP站点前,需确保实例内已添加IIS及FTP服务。如果还没有添加,请参见以下操作步骤,添加IIS及FTP服务。

  1. 远程连接Windows实例。

    具体操作,请参见通过密码认证登录Windows实例。

  2. 在Windows桌面的左下角单击

    win图标

    图标,然后找到并单击服务器管理器

  3. 在顶部导航栏,单击管理(M) > 添加角色和功能

    IIS win2016

  4. 在弹出的对话框中,保持默认配置并单击下一步(N)选择服务器角色页面。

  5. 选中Web 服务器(IIS),在弹出的对话框中单击添加功能,然后单击下一步(N)

    ftp2

  6. 保持默认配置并单击下一步选择角色服务页面。

  7. 选中IIS管理控制台以及FTP 服务器,单击下一步(N)

    ftp3

  8. 单击安装(I),然后等待安装完成后,单击关闭

(可选)步骤二:创建用于访问FTP站点的Windows用户

创建Windows用户,用于访问FTP站点时的身份验证。如果您只需要匿名用户(即仅提供用户名anonymousftp的用户)访问FTP站点,可以跳过本步骤。

  1. 在Windows桌面的左下角单击

    image.png

    图标,然后Windows 管理工具 > 计算机管理

  2. 在左侧导航栏,选择系统工具 > 本地用户和组 > 用户

    ftp4

  3. 在页面右侧的操作列,单击更多操作,然后单击新用户(N)...

    ftp5

    具体配置说明如下:

    • 用户名:本示例中创建一个用户名为ftptest的Windows用户。

    • 密码以及确认密码:输入您自定义的密码信息。

      说明 

      密码必须包括大写字母、小写字母和数字,否则将提示无法通过密码策略。同时,请您妥善保管密码信息,防止密码泄露产生的数据安全风险。

    • 密码相关设置:选中密码永不过期(W)

  4. 单击创建(E),然后关闭新用户对话框。

 

步骤三:设置共享文件的权限

您需要创建一个文件夹作为FTP站点共享文件的入口,该文件夹需要开放访问、修改等权限。后续各客户端访问该FTP站点时,文件传输均基于该文件夹完成。具体操作说明如下:

  1. 在Windows实例的磁盘中,创建一个供FTP站点使用的文件夹。

    本示例中,在C盘下创建一个名为ftp的文件夹。

  2. 右键单击ftp文件夹,然后单击属性(R)

  3. 单击安全页签,然后单击编辑(E)...

  4. 单击添加(D)...

  5. 在弹出的对话框中,输入对象名称ftptest,然后单击检查名称(C)

  6. 检查名称无误后,单击确定

  7. 组或用户名区域,单击新添加的用户名ftptest,然后在ftptest 的权限区域设置权限后,单击确定

    本示例中允许所有权限。您可以根据实际业务对权限的要求,自行设置权限为允许或拒绝。

    username

     

步骤四:添加并设置FTP站点

  1. 在Windows桌面的左下角单击

    win图标

    图标,然后找到并单击服务器管理器

  2. 在顶部导航栏,单击工具(T) > Internet Information Services(IIS)管理器

    ftp8

  3. 在左侧导航栏,选择Windows实例主机名 > 网站,然后在右侧操作列,单击添加 FTP 站点

    ftp9

  4. 在弹出的对话框中,设置站点信息,然后单击下一步(N)

    10

    具体配置说明如下:

    • FTP站点名称:自定义名称。例如ftptest

    • 内容目录:FTP所需的共享文件夹。本文对应的是C盘中的ftp文件夹。

  5. 设置IP地址以及SSL证书,然后单击下一步(N)

    绑定IP和SSL

    具体配置说明如下:

    • IP地址:保持默认配置。

    • SSL:不同配置项对应的说明如下。本示例中选择无 SSL(L),即不需要SSL加密。如果您需要保证数据传输安全且已拥有SSL证书,请根据实际的数据传输安全要求,设置为允许 SSL(W)需要 SSL(R)

      • 无 SSL(L):不需要SSL加密。

      • 允许 SSL(W):允许FTP服务器支持与客户端的非SSL和SSL连接。

      • 需要 SSL(R):需要对FTP服务器和客户端之间的通信进行SSL加密。

    • 其他配置项保持默认设置。

  6. 设置身份验证和授权信息,然后单击完成(P)

    身份和授权

    具体配置项说明如下:

    • 身份验证:不同选项的说明如下所示。本示例中仅选择基本(B),后续将通过已创建的ftptest用户访问FTP站点。如果您对数据传输安全没有要求,可以设置为匿名(A),使匿名用户支持直接访问FTP站点。

      • 匿名(A):允许任何仅提供用户名anonymousftp的用户访问内容。

      • 基本(B):需要用户提供有效用户名和密码才能访问内容。由于基本身份验证通过网络传输未加密的密码,因此请仅在清楚客户端和FTP服务器之间的连接是安全的情况下(例如,使用安全套接字层SSL时)使用此身份验证方法。

    • 授权:允许访问的范围说明如下所示。本示例中选择指定用户,并在对应的文本框中输入ftptest。

      • 所有用户:所有用户(不论是匿名用户还是已标识的用户)均可访问FTP站点对应的共享文件夹。

      • 匿名用户:匿名用户可访问FTP站点对应的共享文件夹。

      • 指定角色或用户组:仅特定角色或用户组的成员才能访问FTP站点对应的共享文件夹。需要在对应的文本框中输入角色或用户组。

      • 指定用户:仅指定用户才能访问FTP站点对应的共享文件夹。需要在对应的文本框中输入用户名。可以使用阿里云测速工具 aliyunping.com 测试一下本地到阿里云服务器各个地域节点的Ping值网络延迟。

    • 权限:选中读取写入权限。

    完成后可以在IIS管理器查看到成功搭建的FTP站点。

    13

  7. 配置FTP站点的防火墙。

    1. 在IIS管理器中,双击FTP站点名称ftptest,进入FTP站点的主页。

    2. 双击FTP 防火墙支持

      FTP防火墙支持

    3. 防火墙的外部 IP 地址(E)下的文本框中,输入Windows实例的公网IP地址

    4. 在页面右侧操作列,单击应用,然后在弹出的对话框中单击确定

 

步骤五:设置安全组及防火墙

当您在Windows实例中搭建好FTP站点后,需要在实例所属的安全组中,添加入方向规则,放行FTP服务器所需的21端口以及FTP服务器被动模式可能占用的端口范围1024~65535。

说明 

端口范围请根据实际需求进行设置,建议您设置高位端口,本示例中设置端口范围为29000~30000。

  1. 在Windows实例所属的安全组中,添加入方向规则,放行21端口以及29000~30000端口。

    具体操作,请参见添加安全组规则。

    说明 

    关于安全组的更多配置信息,请参见安全组应用案例和常用端口。

  2. 可选:配置Windows实例内部的防火墙。

    Windows实例内部的防火墙默认为关闭状态。如果您的防火墙为开启状态,则需要放行TCP 21端口与29000~30000端口用于FTP服务。

步骤六:客户端测试访问FTP站点

Windows的文件夹目录、命令行工具、浏览器或者是第三方FTP连接工具均可用来测试FTP服务器。本示例以本地Windows主机作为客户端,通过文件夹目录测试访问FTP站点。

  1. 在本地Windows客户端中,打开文件夹目录,在文件夹路径中,输入ftp://FTP站点的公网IP地址:21进行访问。

    以Windows 10系统为例,如下图所示:

    Windows文件目录

  2. 在弹出的登录身份对话框,完成登录信息设置,然后单击登录

    本示例中,使用ftptest用户名及对应的密码信息,登录FTP站点。

    登录FTP站点

    当您通过Windows文件夹目录访问FTP站点时,如果Windows自带的IE浏览器没有开启使用被动FTP,将无法正常访问FTP站点并返回错误码200及501。您可以参考以下步骤,先开启IE浏览器的使用被动FTP,然后再次尝试访问FTP站点。

    1. 在本地Windows客户端中,打开IE浏览器。

    2. 在页面右上角,单击

      IE工具图标

      图标,然后单击Internet 选项

    3. 单击高级页签,然后在设置区域,选中使用被动 FTP (用于防火墙和 DSL 调制解调器的兼容)

      使用被动FTP

    4. 单击应用,然后单击确定

    成功访问FTP站点对应的共享文件夹ftp后,您可以新建一个测试文件夹test。

    新建测试文件夹

    之后您可以重新登录Windows实例,查看C盘的ftp文件夹中新增了test文件夹,表示FTP站点搭建成功且可以进行文件数据传输。

    实例ftp文件夹

 

后续步骤

如果您想基于FTP协议来管理存储在OSS上的文件,您可以安装OSS FTP。具体操作,请参见安装OSS FTP。

OSS FTP接收普通FTP请求后,将对文件、文件夹的操作映射为对OSS的操作。

本文转自阿里云官方文档。

相关文章:

阿里云服务器手动搭建FTP教程(Windows操作系统)

阿里云百科介绍使用阿里云服务器搭建FTP教程,云服务器为Windows操作系统,当需要远程连接Windows实例进行文件传输时,可以通过搭建FTP站点实现。本文将介绍如何在Windows实例中搭建FTP站点。 目录 准备工作 步骤一:添加IIS以及F…...

idea+gradle阅读spring5.2.9源码之源码构建报错解决方案

注意 1、先确保gradle版本和spring、jdk版本对应 本文:gradle:5.6.4/spring 5.2.9/jdk1.8(gradle和jdk都要先安装好,gradle还要配置好本地资源文件路径) 2、原来项目乱了的话,先重新导入下载的源码项目 3、进入源码所在根目录&…...

一文详解Git

一. Git 概述 1.1 什么是 Git Git 是一个免费的、开源的分布式版本控制工具, 主要用于管理开发过程中的源代码文件,在软件开发过程中被广泛使用。通过Git仓库来存储和管理这些文件,Git仓库分为二种: 本地仓库:开发人…...

【单片机】DS2431英文手册,中文手册,翻译

DS2431是一款1024位的1-Wire EEPROM芯片,以每个256位的四个内存页面组织。数据被写入8字节的暂存区,经过验证,然后复制到EEPROM存储器中。作为一个特殊功能,四个内存页面可以单独地被写保护,或者被置于EPROM仿真模式&a…...

centos7部署openldap开启memberof并接入jumpserver

文章目录 前言1.yum安装openldap2.配置密码3.导入配置4.定义域5.配置memberof6.配置base dn7.安装phpldapadmin管理8.调整httpd的配置9.调整php的配置10.登陆php管理页面11.同步旧ldapsever用户数据(可省略)12.客户端配置13.对接jumpserver 前言 介绍如何在centos7上部署openl…...

Unity游戏源码分享-仿开心消消乐Match3Jewel

Unity游戏源码分享-仿开心消消乐Match3Jewel 工程地址: https://download.csdn.net/download/Highning0007/88198762...

知识图谱基本工具Neo4j使用笔记 四 :使用csv文件批量导入图谱数据

文章目录 一、系统说明二、说明三、简单介绍1. 相关代码以及参数2. 简单示例 四、实际数据实践1. 前期准备(1) 创建一个用于测试的neo4j数据库(2)启动neo4j 查看数据库 2. 实践(1) OK 上面完成后&#xff0…...

[bug修复]状态数据在useEffect初始化时更新无效

&#xff08;bug修复类型的博客还是用汉语写捏&#xff09; 前两天在做一个管理页面前端的时候&#xff0c;出现了这样的问题 function Son(props){const [a,seta]useState(0)useEffect(()>{seta(props.name)},[])return(<div>{a}</div>) } 这是当时情况的一…...

使用 API Gateway Integrator 在 Quarkus 中实施适用于 AWS Lambda 的 OpenAPI

AWS API Gateway 集成使得使用符合 OpenAPI 标准的 Lambda Function 轻松实现 REST API。 关于开放API 它是一个 允许以标准方式描述 REST API 的规范。 OpenAPI规范 (OAS) 为 REST API 定义了与编程语言无关的标准接口描述。这使得人类和计算机都可以发现和理解服务的功能&am…...

【JVM】JVM中的分代回收

文章目录 分代收集算法什么是分代分代收集算法-工作机制MinorGC、 Mixed GC 、 FullGC的区别是什么 分代收集算法 什么是分代 在java8时&#xff0c;堆被分为了两份&#xff1a; 新生代和老年代【1&#xff1a;2】 其中&#xff1a; 对于新生代&#xff0c;内部又被分为了三…...

C# Linq源码分析之Take方法

概要 Take方法作为IEnumerable的扩展方法&#xff0c;具体对应两个重载方法。本文主要分析第一个接收整数参数的重载方法。 源码解析 Take方法的基本定义 public static System.Collections.Generic.IEnumerable Take (this System.Collections.Generic.IEnumerable source…...

从后往前读取列表的方法

从后往前读取列表的方法 方法1&#xff1a;使用for循环遍历列表时&#xff0c;可以使用reverse()函数将列表反转&#xff0c;然后再遍历。 # 列表 num [0, 1, 2, 3]# 反向遍历 for i in reversed(num):print(i)输出结果&#xff1a; 3 2 1 0方法2&#xff1a;先计算列表长度…...

数据库--数据类型

数据库相关链接&#xff1a; 数据库基础操作--增删改查&#xff1a;http://t.csdn.cn/189CF 数据库--三大范式、多表查询、函数sql&#xff1a;http://t.csdn.cn/udJSG 数据类型 创建表的时候&#xff0c;我们在类型这里给出了不同的选项&#xff0c;比如有int &#xff0c;…...

小型双轮差速底盘机器人实现红外跟随功能

1. 功能说明 本文示例将实现R023样机小型双轮差速底盘跟随人移动的功能。在小型双轮差速底盘前方按下图所示安装3个 近红外传感器&#xff0c;制作一个红外线发射源&#xff0c;实现当红外发射源在机器人的检测范围内任意放置或移动时&#xff0c;机器人能追踪该发射源。 2. 电…...

TCP协议网络编程 回显服务器,客户端实现

回显服务器表示客户端传来的请求是什么&#xff0c;服务器就回应什么&#xff0c;客户端不用对传来的数据进行处理&#xff0c;主要是为了熟悉TCP协议提供的API的使用 对于代码的解释全作为注释写在了代码上&#xff0c;推荐复制到编程软件中查看 UDP协议实现回显服务器可以看…...

3.4 Spring MVC注解

注解名称 注解说明 RequestMapping 用来处理请求地址映射的注解&#xff0c;可以在接口、类和方法上使用 value属性 表示请求地址&#xff0c;与path属性一致 method属性 表示接收HTTP请求方法&#xff0c;默认接收所有请求方法&#xff0c;请求包括GET、POST、PUT、DEL…...

OpenCV实例(八)车牌字符识别技术(三)汉字识别

车牌字符识别技术&#xff08;三&#xff09;汉字识别 1.代码实例2.遇到问题3.汉字识别代码实例 相较于数字和英文字符的识别&#xff0c;汽车牌照中的汉字字符识别的难度更大&#xff0c;主要原因有以下4个方面&#xff1a; (1)字符笔画因切分误差导致非笔画或笔画流失。 (2…...

运维监控学习笔记2

硬件监控&#xff1a; 1&#xff09;使用IPMI 2&#xff09;机房巡检 路由器和交换机&#xff1a; 使用SNMP&#xff08;简单网络管理协议&#xff09;进行监控。 Linux 安装snmp&#xff1a; yum install -y net-snmp net-snmp-utils 说明&#xff1a;net-snmp是安装在snm…...

【深度学习】遗传算法[选择、交叉、变异、初始化种群、迭代优化、几何规划排序选择、线性交叉、非均匀变异]

目录 一、遗传算法二、遗传算法概述2.1 选择2.2 交叉2.3 变异 三、遗传算法的基本步骤3.1 编码3.2 初始群体的生成3.3 适应度评估3.4 选择3.5 交叉3.6 变异3.7 总结 四、遗传算法工具箱4.1 initializega4.2 ga4.3 normGeomSelect4.4 arithXover4.5 nonUnifMutation 五、遗传算法…...

【小吉带你学Git】讲解GitHub操作,码云操作,GitLab操作

&#x1f38a;专栏【Git】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【如愿】 &#x1f33a;欢迎并且感谢大家指出小吉的问题&#x1f970; 文章目录 &#x1f354;GitHub操作⭐安装GitHub插件⭐在idea中设置GitHub账号&…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

React Native 导航系统实战(React Navigation)

导航系统实战&#xff08;React Navigation&#xff09; React Navigation 是 React Native 应用中最常用的导航库之一&#xff0c;它提供了多种导航模式&#xff0c;如堆栈导航&#xff08;Stack Navigator&#xff09;、标签导航&#xff08;Tab Navigator&#xff09;和抽屉…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上&#xff0c;所以报错&#xff0c;到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本&#xff0c;cu、torch、cp 的版本一定要对…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

&#x1f4cc; LRU 缓存机制详解与实现&#xff08;Java版&#xff09; 一、&#x1f4d6; 问题背景 在日常开发中&#xff0c;我们经常会使用 缓存&#xff08;Cache&#xff09; 来提升性能。但由于内存有限&#xff0c;缓存不可能无限增长&#xff0c;于是需要策略决定&am…...