数据来源
1、介绍
文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议。
2、端口号:
TCP 20/21
3、FTP工作模式
主动模式和被动模式的控制权都在客户机手上
1)主动模式
21端口:客户端连接FTP服务器就是通过服务器的21端口实现连接。
20端口: 20端口是用于FTP数据传输的默认端口号。(只有客户端下载数据时才会临时开放)
2)被动模式
21端口
随机开启一个端口N用于传输数据:
3)查看端口:netstat -an
注意:
- 主被动模式,阐述的是数据传输过程
- 主被动模式,选择权在客户机上
- 主被动模式,所谓主或被是站在服务器的角度
详细的主被动模式介绍可以看下这篇文章:FTP的主动模式和被动模式
主动和被动模式连接演示:
8UFTP下载
在FTP服务器上开启防火墙,并开放20和21的TCP端口 (因为只有20和21端口开放,客户机就只能通过主动模式连接FTP服务器)防火墙开启后,没有被允许开放的端口都会关闭,其他软件也开启不了。
客户机通过被动模式连接 -- 连接失败
切换主动模式 -- 连接成功
4、部署FTP服务器:(以虚拟机win2003为例)
1)配置静态iP
2)安装IIS-FTP插件
3)使用默认站点或创建新的站点
4)IIS-FTP去掉站点去掉匿名访问对勾
注意:用户的最终权限为FTP权限与NTFS权限取交集。
建议:FTP权限全部勾选然后具体权限的在NTFS里做。
安装IIS-FTP插件:
1)配置静态IP地址(手动配置或连接wifi成功之后也能得到一个静态地址,不过重新连接之后,IP地址可能就不一样了)
2)开始安装IIS-WEB插件,开始 -- 打开控制台
3)选择添加或删除程序
4)添加/删除组件 -- 应用程序服务器
5)信息服务
6)选择文件传输协议(FTP服务)-- 确定 -- 确定
7)下一步
8)安装成功,选择完成
9)打开
利用默认站点测试一下:
这是一个默认的文件路径
然后去到同一个局域网下的客户机,在我的电脑地址栏输入:ftp://win2003的IP地址(安装FTP电脑的IP)
更改默认站点的文件路径 :
五、FTP站点
新建FTP站点:
1)FTP右键 -- 新建 -- FTPz站点
2) 输入站点名称
3)选择站点的IP地址
4)是否要做隔离
5)选择站点的文件路径
6)配置权限
7)完成
六、配合文件系统NTFS做文件的权限管理:NTFS安全权限
1)在站点下准备了两个文件,一个机密文件管理员账户才能查看、修改,一个普通文件管理员账户和普通用户都能查看,但是只有管理员才能修改。
2)创建管理员、普通用户账户命令:net user 用户名 密码 /add # 新建用户,验证 net user 查看用户列表,我这里创建一个amd当做管理员,user当做普通用户,实际上在windows系统内这两个的权限都是普通用户。
3)取消站点的允许匿名链接 ,取消后别人想访问就需要,输入账号了
4)开始给文件夹设置权限
(1)取消继承
(2)给amd用户完全控制权限(让这个用户充当FTP的管理员,毕竟我们不可能把系统的管理员账户给别人登录)
机密文件夹和普通用户文件夹都加上(管理员拥有全部文件的所有权限)
(3)给普通用户读取普通文件夹的权限
5 )测试
管理员账户增删改查都可以没啥好测试的 (设置权限时选择了完全控制就自动把所有权限勾上了)
测试普通用户
上传和删除都不行
如果需要给普通用户上传权限,勾选写入(这个权限只能上传不能删除)
七、推荐几个绿色的FTP小软件
1、Slyar FTPserver
优点:大小84k,操作及其简单,用户权限就是软件的权限,不关NTFS 的事。
缺点:访问的人太多会崩溃三四十个人还是没问题。
链接:/s/1GyOf5uhnWEPdwQQYSM-9lA?pwd=ax12
提取码:ax12
总结:适合平时使用,不适合生产环境,使用时建议把电脑的FTP站点关闭,避免冲突。
2、Serv-U
这是一个强大的第三方FTP软件,支持正版,不要汉化,建议使用英文正版,更加稳定。
软件首页:
使用示例:
1)新建域
之后一路下一步使用默认的,直到完成创建
2)新建用户 (一个用户对应一个主目录)
主目录也可以选择整个磁盘空间,D盘、E盘这些
3)给用户设置权限
4)客户机连接:ftp:// ip地址
5)虚拟路径的使用
使用场景:比如我电脑内有个文件夹IOS,需要共享给A用户和B用户分别对应的文件夹是A和B和IOS文件夹同级(或在其他盘也行),但是我又不想把文件复制两份到A用户的主目录和B用户的主目录,这时就可以使用虚拟路径。
创建映射路径成功
使用映射路径,把刚才创建了映射路径的文件添加到需要的用户目录路径内