在IIS上搭建FTP服务
FTP服务
FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载)。在网络上有很多服务器提供FTP服务,用来存放大量的文件供他人下载。FTP服务的主要作用是让远程用户可以连接上来,查看服务器上有哪些文件,然后下载,当然用户也可以将本地文件上传到服务器,共享给其他人以便下载。FTP服务提供上传下载服务的同时,管理员也可以设置不同用户对不同文件夹的访问权限(读、写)。
在Win7的IIS上搭建FTP服务
初学Web开发的人,一般的情况下都认为IIS只能提供Web服务。其实IIS不仅可以提供Web服务,还可以提供其他服务,如网络新闻服务(NNTP)、简单邮件传输服务(SMTP),当然还有文件传输服务(FTP)。只是在IIS上,用得最多的是Web服务。默认安装的情况下,IIS也只会安装Web服务,FTP服务只在特定选择的情况下才会被安装到IIS环境中。下面,我们来看看在Win7的IIS上安装FTP服务的步骤:
1、打开“控制面板”的“程序和功能”:
2、进入到“程序和功能”的界面,选择左侧的“打开或关闭Windows功能”,打开“Windows”功能对话框:
3、展开“Internet信息服务”节点,发现默认情况下“FTP服务器”子节点并没有被选中,选中该子节点,点击“确定”按钮,Windows开始安装FTP服务(由于Win7的所有组件安装文件其实已经在Win7的安装过程中被拷贝到系统中,故不想WinXP下安装组件需要系统盘):
4、安装完成后,你会在“服务”管理工具中看到“MIcrosoft FTP Service”服务:
在IIS中添加FTP站点
1、在“管理工具”的“Internet信息服务(IIS)管理器”中,选中服务器,点击右键菜单中的“添加FTP站点…”子菜单项:
2、在“添加FTP站点”对话框的“FTP站点名称”中输入你所期望的站点名称,并选择你期望用来存放文件的“内容目录”:
3、点击“下一步”按钮,进入IP地址绑定和SSL设置,由于我们这里不使用SSL,所以SSL选项选择“无”,至于什么是“SSL”,本人将在后续的文章中讲解:
4、继续点击“下一步”,进入到“身份验证和授权信息”环节,“身份验证”选择“匿名”和“基本”,
“授权”的“允许访问”选择“所有用户”,“权限”选择“读取”:
5、点击“完成”按钮,完成FTP站点的添加过程。这时会发现IIS管理器“网站”节点下多了一项刚才添加的FTP站点。
FTP站点的配置及授权
1、不想让所有用户都可访问,需要设置FTP站点的权限(FTP身份验证、授权规则)。我们在Windows系统中添加一个名为“FTPUser”的用户,在“开始菜单”中选择“计算机”,点击右键菜单中的“管理”子菜单:
打开“本地用户和组”的“用户”节点,
添加用户名为“ftpuser”的新用户:
点击“创建”按钮为Windows系统创建新的用户。
可能的错误:
需要配置本地策略。步骤:控制面板->系统和安全->管理工具->本地安全策略->
主要是修改以下两个策略
1、密码必须符合复杂性要求——禁用
2、密码长度最小值——设置为0
3、在IIS管理器的FTP站点中,选中你要授权的文件夹,并切换到“功能视图”,选中“FTP授权规则”,
双击“FTP授权规则”,进入“授权规则”管理界面,点击右键菜单的“添加允许规则”,弹出对话框,选择“指定的用户”并输入“ftpuser”,设置其权限为“读取”和“写入”:
点击“确定”完成“授权规则”的添加。
FTP被动模式访问
FTP服务器一般都支持主动和被动模式,连接采用何种模式是有FTP客户端软件决定。
主动 FTP :
命令连接:客户端 >1024 端口 → 服务器 21 端口
数据连接:客户端 >1024 端口 ← 服务器 20 端口
被动 FTP :
命令连接:客户端 >1024 端口 → 服务器 21 端口
数据连接:客户端 >1024 端口 ← 服务器 >1024 端口
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。 当需要传送数据时, 客户端在命令链路上用PORT命令告诉服务器:“我打开了***X端口,你过来连接我”。于是服务器从20端口向客户端的***X端口发送连接请求,建立 一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。 当需要传送数据时, 服务器在命令链路上用PASV命令告诉客户端:“我打开了***X端口,你过来连接我”。于是客户端向服务器的***X端口发送连接请求,建立一条数据链 路来传送数据。
早先所有客户端都使用主动模式,而且工作的很好,而现在因为客户端防火墙的存在,将会关闭一些端口,这样主动模式将会失败。在这种情况下就要使用被动模式,但是一些端口也可能被服务器的防火墙封掉。不过因为ftp服务器需要它的ftp服务连接到一定数量的客户端,所以他们总是支持被动模式的。这就是我们为什么要使用被动模式的原意,为了确保数据可以正确的传输,使用 被动模式要明显优于主动模式。
IIS下搭建的ftp被动模式设置:
服务器上ftp用被动模式,服务器只开50000-60000的端口用于客户端访问,而看了下用1025-1034这样的端口并不行,用抓包也看到被动时,服务器端指定的端口是50492,大多是在5万-6万之间(这个是为什么,暂时没搞清)。
而这个端口是变动的,故如果只设置一个端口是不行的(50000-50000这样不行)
相应的服务器也得在“安全组规则”里开这些端口。
在IIS上搭建FTP服务的更多相关文章
- 在Win7的IIS上搭建FTP服务及用户授权
FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载).在网络上有 ...
- 在Win7的IIS上搭建FTP服务及用户授权——转载!!
原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...
- 【转】在Win7的IIS上搭建FTP服务及用户授权
[转]在Win7的IIS上搭建FTP服务及用户授权 [转]在Win7的IIS上搭建FTP服务及用户授权 FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属 ...
- 在IIS上搭建FTP站点
操作环境 系统:win7 IIS版本:7.5 FTP传输工具:FlashXP 概述 本文介绍了如何在win7下利用IIS(默认已安装IIS和FTP功能)搭建FTP站点,FTP站点的常用配置. 快速搭建 ...
- 在IIS上创建FTP服务
1 在IIS上创建 ftp站点, 然后设定端口号. 2 设定权限: 追加Everyone,IIS_IUSRS,并设定可读可写. 3 设定FTP授权规则:
- 关于linux服务器上搭建ftp服务的流程
小龙最近折腾了一个阿里云的服务器,买完了就要开始做那么多那么多的功课,小龙对ssh也是一知半解的状态,做个小笔记,发布下整个ftp服务的搭建过程,大神勿喷:) 一.aliyun Linux(Redha ...
- 在windows上搭建ftp服务
在控制面板->程序和功能->打开或关闭Windows功能中开启ftp和IIS信息服务管理器 在控制面板->管理工具中打开Internet信息服务管理器->添加ftp站点 建好之 ...
- Linux(Centos7) 实例搭建 FTP 服务
本文以 CentOS 7.2 64位系统为例,使用 vsftpd 作为 FTP 服务端,FileZilla 作为客户端.指导您如何在 Linux 云服务器上搭建 FTP 服务. 操作步骤 安装 vsf ...
- 如何在Windows Server 2008 R2下搭建FTP服务
在Windows Server 2008 R2下搭建FTP服务,供客户端读取和上传文件 百度经验:jingyan.baidu.com 工具/原料 Windows Server 2008 R2 百度经验 ...
随机推荐
- no crontab for root 解决方案
root用户下 输入 crontab -l 显示 no crontab for root 例如: [root@localhost ~]# crontab -l no crontab for root ...
- activity之间通过全局变量传递数据
activity之间通过全局变量传递数据 一.简介 Application域中的onCreate方法是Android程序的入口,Android程序运行的时候就自动加载Application的对象,感觉 ...
- linux加域退域
realm list realm leave od.com realm join -U Administrator od.com
- poj1113凸包
就是求凸包的周长加以l为半径的圆周长,证明略 由于之前写过叉积,所以graham扫描算法不是很难理解 #include<map> #include<set> #include& ...
- Java编码方式再学
一直以来对编码方式对了解不是很深入.建议读下这几篇博文 学点编码知识又不会死:Unicode的流言终结者和编码大揭秘 编码研究笔记 这几篇博文上回答了内心存在的一些问题,这些问题可能也是大家经常遇到的 ...
- Hibernate[延迟加载] [三种状态] [脏检查] [缓存机制]
一.持久化对象的唯一标识 java中按内存地址不同区分同一个类的不同对象,关系数据库用主键区分同一条记录,Hibernate使用OID来建立内存中的对象和数据库中记录的对应关系 什么是OID? 解析: ...
- hdu 6097 Mindis(数学几何,圆心的反演点)
Mindis Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- hdu 6038 Function
Function Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total ...
- PHP trim()函数的作用和使用方法
PHP trim()函数一般是用来去除字符串首尾处的空白字符(或者其他字符),一般在用在服务端对接收的用户数据进行处理,以免把用户误输入的空格存储到数据库,下次对比数据时候出错. 该函数有两个参数,第 ...
- 如何让PPT播放时仅电脑显示备注页,而投影仪不显示
完全可以!第一步:在电脑上右键点击桌面选择属性,进入显示属性选着设置,点击2号屏(前提已连接投影仪或第2显示器),并且在“将WINDOS桌面扩展到改监视器上”(这个关键)前面打钩,且自主选择分辨率,应 ...