Windows Server 2019 搭建FTP站点

news2024/11/18 16:31:38

目录

1.添加IIS及FTP服务角色

2.创建FTP账户(用户名和密码)和组

3.设置共享文件夹的权限

4.添加及设置FTP站点

5.配置FTP防火墙支持

6.配置安全组策略

7.客户端测试

踩过的坑说明:


1.添加IIS及FTP服务角色

a.选择【开始】→【服务器管理器】

b.点击【添加角色和功能】

c.在弹出的“开始之前”对话框中,单击“下一步”

d.选择“基于角色或基于功能的安装”,单击“下一步”

e.从服务器池中选择服务器,单击“下一步”

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

g.连续单击“下一步”,到“角色服务”页面

h.选择“FTP服务器”以及 “IIS管理控制台”,单击“下一步”

i.单击“安装”,开始部署服务角色

j.安装完成后,单击“关闭”

2.创建FTP账户(用户名和密码)和组

创建Windows账户(用户名和密码)和组,用于FTP使用。如果您希望匿名用户可以访问,可以不创建FTP用户和密码。

a.在“服务器管理器”中,选择“仪表板> 工具 > 计算机管理”

b.选择“系统工具 > 本地用户和组 > 组”,在右侧空白处右击,并选择“新建组”

c.选择“系统工具 > 本地用户和组 > 用户”,在右侧空白处右击,并选择“新用户”设置“用户名”和“密码”,此处用户名以“ftpadmin”为例

为ftpadmin用户添加【隶属于】组,添加设置ftp组

3.设置共享文件夹的权限

需要在FTP站点为共享给用户的文件夹设置访问及修改等权限

a.在服务器上创建一个供FTP使用的文件夹,选择文件夹,并单击右键选择“属性”。

此处以“work01”文件夹为例

b.在“安全”页签,选择“ftpadmin”用户和“ftp”组,单击“编辑”

4.添加及设置FTP站点

a.在“服务器管理器”中,选择“仪表板 > 工具 > Internet Information Services (IIS)管理器 ”

b.选择“网站”并单击右键,然后选择“添加FTP站点”

c.在弹出的窗口中,填写FTP站点名称及共享文件夹的物理路径,然后单击“下一步” 此处站点名称以“FtpServer”为例

d.输入该弹性云服务器的公网IP地址以及端口号,并设置SSL,单击“下一步”

· 端口号 默认为21,也可自行设置。

·  SSL根据需求进行设置。制作服务器证书

e.设置身份认证和授权信息,并单击“完成”

身份认证

匿名:允许任何仅提供用户名 “anonymous” 或 “ftp” 的用户访问内容

基本:需要用户提供有效用户名和密码才能访问内容。但是基本身份验证通过网络传输密码时不加密,因此建议在确认客户端和FTP服务器之间的网络连接安全时使用此身份验证方法。

授权

允许访问

所有用户:所有用户均可访问相应内容。

匿名用户:匿名用户可访问相应内容。

指定角色或用户组:仅指定的角色或用户组的成员才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的角色或用户组。

指定用户:仅指定的用户才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的用户。

5.配置FTP防火墙支持

如果需要使用FTP服务器的被动模式,则需要配置FTP防火墙支持。

a.双击“FTP防火墙支持”,打开FTP防火墙支持的配置界面

b.配置相关参数,并单击“应用”

数据通道端口范围:指定用于被动连接的端口范围。可指定的有效端口范围为1025-65535。请根据实际需求进行设置

防火墙的外部IP地址:输入该弹性云服务器的公网IP地址

c.重启云服务器使防火墙配置生效

6.配置安全组策略

搭建好FTP站点后,需要在安全组的入方向添加两条放行FTP端口的规则,一条端口为21,一条端口为5000-6000区间。

如果配置了“FTP防火墙支持”,需要在安全组中同时放行FTP站点使用的端口和FTP防火墙使用的数据通道端口。

服务器防火墙默认放行TCP的21端口用于FTP服务。如果选用其他端口,需要在防火墙中添加一条放行此端口的入站规则。

7.客户端测试

打开客户端的计算机,在路径栏输入 “ftp://FTP服务器IP地址:FTP端口”(如果不填端口则默认访问21端口)。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。

踩过的坑说明:

1.因端口号没有在安全组入方向设置放行端口,导致无法访问

2.因设置FTP授权规则中设置用户导致访问FTP文件夹失败,目前FTP授权规则用户设为所有用户可正常访问FTP文件夹。

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

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

相关文章

【刷题篇】反转链表

文章目录 一、206.反转链表二、92.反转链表 ||三、25. K 个一组翻转链表 一、206.反转链表 class Solution { public://使用头插//三个指针也可以ListNode* reverseList(ListNode* head) {if(headnullptr)return nullptr;ListNode* curhead;ListNode* newheadnew ListNode(0);L…

推荐一款简单好用的Bug管理软件

软件开发的速度和质量是企业成功的关键因素,然而随着软件项目的复杂性增加,Bug的管理变得越来越困难。为了解决这个问题,Zoho公司推出了一款强大的Bug管理软件,帮助企业在一个地方记录和跟踪Bug,提高修复效率。 这款名…

spring tx:advice事务配置—— tx:advice中不允许出现属性 ‘transaction-manager‘

今天在配置java事务管理时出现了一些问题。 提示:只有这几个属性 经过查询资料发现是bean的配置少了一些。 可以在xml文件顶部添加: xmlns:tx"http://www.springframework.org/schema/tx" 下面也提供一份bean文件配置的模板: &a…

MongoDB URL链接 如何设置账号密码

个人博客,求关注。。 MongoDB URL链接 如何设置账号密码 假设你的账号是root,你的密码也是root,则 mongodb://username:passwordlocalhost:27017完美,再见。

《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网

目录 一.TCP/UDP协议探测出网 1.NC工具探测TCP协议出网 2.Telnet命令探测TCP协议出网 3.UDP协议探测出网 当红队人员在进行内网渗透时,经常会遇到目标主机不出网的场景,而主机不出网的原因有很多,常见的原因例如目标主机未设置网关&#…

Linux环境部署应用必知必会

修改环境变量 Linux环境变量配置的6种方法,建议收藏! - 知乎 修改java环境变量 软件安装 安装redis redis是一个非关系型数据库,是一个存储键值对的数据库,通常被称为数据结构服务器。 值(value)可以是…

00TD时尚女童睡衣,蕾丝边+蝴蝶结太好看了

甜美又可爱的蕾丝花边加蝴蝶结 真的一下子戳中了我的心巴, 满满的少女风真的很好看, 妥妥的可爱小公主一枚 柔软又亲肤,厚厚的很保暖 睡觉真的很舒服 还有袖口和裤脚都做了松紧设计哟!

【iOS】UITableView总结(Cell的复用原理、自定义Cell、UITableViewCell协议方法)

UITableView 列表的特点: 数据量大样式较为统一通常需要分组垂直滚动通常可视区只有一个 -> 视图的复用 UITableViewDataSource UITableView作为视图,只负责展示,协助管理,不管理数据 需要开发者为UITableView提供展示所需…

“一键合并剪辑,轻松添加片头——全新的视频编辑工具让你成为视频制作达人“

在日常生活中,我们时常会遇到需要制作视频的情况。但面对繁琐的视频剪辑和合并,你是否感到无从下手?今天,我们为你带来一款全新的视频编辑工具,让你轻松成为视频制作达人! 首先我们要进入好简单批量智剪主页…

【扩散模型】【文本到音频论文系列翻译二】使用指令微调LLM和潜在扩散模型的文本到音频生成

🔥 🔥🔥 github: https://github.com/declare-lab/tango 效果:https://tango-web.github.io/ 论文地址:https://arxiv.org/pdf/2304.13731.pdf 数据集audiocaps下载: https://blog.csdn.net/weixin_4350969…

进程(1)——什么是进程?【linux】

进程(1)——什么是进程?【linux】 一. 什么是进程?二. 管理进程:2.1 怎么管理:2.2 PCB2.3.1 task_struct2.3.2 组织task_struct: 三.查看进程3.1 ps ajx3.2 ls /proc 四. 父子进程4.1 什么是父子…

02-2、PyCharm中文乱码的三处解决方法

PyCharm中文乱码 修改处1: 修改处2:这个也没用 在Pycharm中可以创建一个模版,每次新建python文件时Pycharm会默认在前两行生成utf-8 #!/user/bin/env python3 # -- coding: utf-8 -- 还是乱码 再在这里设置以下 添加 : -Dfi…

【LeetCode 算法专题突破】滑动窗口(⭐)

文章目录 前言1. 长度最小的子数组题目描述代码 2. 无重复字符的最长子串题目描述代码 3. 最大连续1的个数 III题目描述代码 4. 将 x 减到 0 的最小操作数题目描述代码 5. 水果成篮题目描述代码 6. 找到字符串中所有字母异位词题目描述代码 7. 串联所有单词的子串题目描述代码 …

rust学习——引用与借用(references-and-borrowing)

引用与借用(references-and-borrowing) 先看一个返回参数的所有权的代码 fn main() {let s1 String::from("hello");let (s2, len) calculate_length(s1);println!("The length of {} is {}.", s2, len); }fn calculate_length(…

day01_matplotlib_demo

文章目录 折线图plot多个绘图区绘制数学函数图像散点图scatter柱状图bar直方图histogram饼图pie总结 折线图plot import matplotlib.pyplot as pltplt.figure(figsize(15, 6), dpi80) plt.plot([1, 0, 9], [4, 5, 6]) plt.show()### 展现一周天气温度情况 # 创建画布 plt.figu…

mysql高级查询

score student courses inner join 内连接:查询的结果为两个表匹配到的数据 1.条件:查询学生信息及课程对应的分数 解析:此时信息存储在三张表通过外键标识,可以先将学生和分数表根据条件连接在一起,然后在连接课…

升级你的照片编辑体验:Nik Collection by DxO,让你的照片更出色

如果你是一个摄影爱好者或者专业摄影师,你一定需要一款功能强大、易于使用的照片编辑插件套件来提升你的作品质量。今天,我们要向大家介绍一款备受赞誉的产品——Nik Collection by DxO。 Nik Collection by DxO是一款集合了多种照片编辑功能的插件套件…

Leetcode刷题笔记--Hot71--80

1--会议室II(253) 2--完全平方数(279) 主要思路: 完全背包问题,每一个平方数可以选取多次。 本题的物品组合与顺序无关,对应于组合问题,因此先遍历物品,再遍历背包。 定…

51单片机中断操作详解(03)

eg1:数码管如何显示出字符 51单片机40个引脚的功能需要记住** RXD:表示的是串行输入口INT0:外部中断0INT1:外部中断1TO : 外部中断0T1 :外部中断1WR: 外部输入存储器写RD: 外部输出存储器读XTK2/XTL1 单片机晶振的输…

分享5个解决msvcp140.dll丢失的方法,全面解析msvcp140.dll丢失的原因

一、MSVCP140.dll是什么? 首先,我们需要了解什么是MSVCP140.dll。MSVCP140.dll是一个动态链接库文件,它是Microsoft Visual C 2015 Redistributable的一部分。这个文件包含了运行使用C编写的应用程序所需的一些函数和类。因此,当…