在Server 2008下架设FTP服务器

纯体力活,记录过程而已,以防忘记。

IIS中的FTP服务器可能是最不为人知的组件了,它太弱小,以至于很多黑客都不懈攻击它。看着大家宁肯用诸如ServerU等收费FTP服务程序也不愿用免费的自家的FTP,什么都喜欢插一腿的微软终于坐不住了。于是伴随着Server 2008和IIS7.0,一个名为FTP 7的东西出现了。这个据说重写了全部代码的东西看上去功能强大了不少。

安装FTP 7.0

首先需要下载,由于我的Server 2008是64为版本,所以我选择x64的:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=584cacf6-78f1-47df-90d7-9cd87b358712

然后下载更新文件:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=1d4264c7-783a-4381-a65c-39eb148820de

这是一个msi程序,直接双击安装:

image装完后,打开IIS,可以看到FTP分类:

image

 

新建FTP站点 

在服务器上点击鼠标右键,选择 Add FTP Site:

image

输入站点名和目录:

image选择服务器IP,输入端口:

image

选择认证和授权模式,由于本FTP只允许具有特定角色的用户访问,因此我选择Basic认证:

image 

点击完成,该FTP就建好了:

image

隔离用户

接下来设置该FTP,每个用户用自己的用户名密码登陆后,只能访问自己的目录,不能访问其他用户的目录。

首先建立一个名为FTPUsers的组:

image

在该组中添加用户:

image

进入到FTP文件夹,为每个用户建立个人目录 ,目录具体格式如下:

用户类型

目录

匿名用户

%FtpRoot%\LocalUser\Public

本地用户(需要基本身份认证)

%FtpRoot%\LocalUser\%UserName%

域用户(需要基本身份认证)

%FtpRoot%\%UserDomain%\%UserName%

IIS 管理器或 ASP.NET认证用户

%FtpRoot%\LocalUser\%UserName%

在IIS里,选择隔离用户:

imageimage

设置防火墙

在Windows防火墙开放21端口:

netsh advfirewall firewall add rule name="FTP (non-SSL)" action=allow protocol=TCP dir=in localport=21

开放数据传输端口:

netsh advfirewall set global StatefulFtp enable
原文地址:https://www.cnblogs.com/iteakey/p/3082711.html