Windows下 创建 FTP 服务器及相关设置

Windows 创建 FTP 服务器

1. 示例功能说明

FTP 服务器根路径下的目录:
C:\USERS\SQQIAN\DESKTOP\FTP
└─localuser
    ├─FTP1                   # 只有用户名为FTP1可以访问,读写均可
    │      FTP11.txt
    │
    ├─FTP2                   # 只有用户名为FTP2可以访问,读写均可
    │      FTP22.txt
    │
    ├─FTP_admin1             # 只有用户名为FTP_admin1可以访问,读写均可
    │      FTP_admin1.txt
    │
    └─public                 # 只有匿名用户可以访问,只能读
            public.txt

虚拟目录路径: # 虚拟目录作为共享目录,FTP1、FTP2只能读,FTP_admin1可读可写
C:\USERS\SQQIAN\DESKTOP\FTP_ALL 
    公共文件.txt

​ 本次测试有三个用户,对应三个用户文件夹,分别为FTP1、FTP2、FTP_admin1,每个用户只能访问自己的文件夹和共享文件夹(FTP_ALL ),匿名用户只能访问 publish 文件夹,不能访问共享文件夹。

功能实现:

  1. 每个用户只能访问自己的文件夹,可读可写;
    • 使用 FTP 用户隔离功能(隔离用户),在 FTP 站点下的根目录名必须为 localuser,用户对应的文件夹放到localuser下,用户名要和文件夹名字相同即可对应访问,匿名用户访问的目录名必须为 public,也要在localuser下;
    • 可读可写通过设置文件夹的 FTP 授权规则实现;
  2. 每个用户都可以访问共享文件夹,只有FTP_admin1用户可读可写,FTP1、FTP2均只能读,匿名用户不能访问;
    • 共享文件通过设置虚拟目录实现;
    • 只有FTP_admin1用户可读可写,FTP1、FTP2均只能读,匿名用户不能访问,设置虚拟目录的 FTP 授权规;

2. Windows 安装 FTP 服务器

以 Win10 为例:控制面板--程序和功能--启用或关闭 Windows 功能,安装 FTP 服务和 IIS 管理控制台

在Windows 管理工具中打开 Internet Information Services(IIS)管理器,即可打开 FTP 服务器的配置界面。

3. 添加用户

在计算机管理--本地用户和组--用户下添加用户,本次测试中添加了三个用户,分别为FTP1、FTP2、FTP_admin1

4. 配置 FTP 服务器

添加 FTP 站点

添加虚拟目录

设置 FTP 用户隔离

设置 FTP 授权规则

授权规则详细设置如下

5. Windows防火墙设置

将 FTP 服务器设置为允许通过

6. 登录测试

匿名登录测试

匿名登录时访问的是 public 文件夹

访问 all 虚拟目录时会提示没有访问权限

用户名登录测试

访问 all 虚拟目录,并向服务器写入 测试文件.txt

查看文件是否写入成功

用户 FTP1 访问虚拟目录无法拷贝文件到服务器,因为没有写入权限

7. 注意事项

  • 如果配置服务器的内容没有生效可以重启服务
  • 创建登录快捷方式登录 FTP 服务器

    C:\Windows\explorer.exe ftp://用户名:密码@192.168.250.101:21

相关推荐
九鼎科技-Leo15 分钟前
什么是 WPF 中的依赖属性?有什么作用?
windows·c#·.net·wpf
sinat_3842410930 分钟前
使用 npm 安装 Electron 作为开发依赖
服务器
朝九晚五ฺ1 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
Kkooe2 小时前
GitLab|数据迁移
运维·服务器·git
久醉不在酒2 小时前
MySQL数据库运维及集群搭建
运维·数据库·mysql
Yang.992 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3
我不瘦但很逗3 小时前
Windows下使用DBeaver连接云数据库(MySQL)
数据库·windows
虚拟网络工程师4 小时前
【网络系统管理】Centos7——配置主从mariadb服务器案例(下半部分)
运维·服务器·网络·数据库·mariadb
BLEACH-heiqiyihu4 小时前
RedHat7—Linux中kickstart自动安装脚本制作
linux·运维·服务器
ashane13144 小时前
Java list
java·windows·list