在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估。IIS 是重点测试和评估之一!而今天与大家分享的是如何在  IIS7 上配置 FTP7 使用 IIS管理凭据 方式进行身份验证。提到 MSFTP 服务,恐怕知道的人多,但是真正使用的人少!特别是 IDC 环境下多数会选择 Serv-U FTP Server,gOxiA 从 Windows Server 2008 开始就不再使用 Serv-U,原因很简单!Serv-U 不是免费的,此次 Serv-U 默认存在安全隐患。况且开放 FTP 也是为了方便自己维护网站,下载上传资料用!所以用系统自身的软件不是更好!维护也相对容易很多!但是,使用过 MSFTP 的朋友知道从  FTP7 开始,微软才为 MSFTP 设计提供了对非 Windows 身份验证功能的支持,也就是说如果我们要访问 MSFTP 则不必再在系统里添加用户帐号,而可以使用 IIS 来统一管理单独的凭据!现在我们再也不用担心,使用 MSFTP 会存在用户帐号安全隐患的问题。

这是一篇 Step by Step,所以其中涉及到的相关原理及知识内容不作过多介绍!我们将通过 IIS7 提供的 IisManagerAuth 身份验证模块来实现 IIS管理凭据的 FTP 帐号。具体步骤如下:

在 开始配置之前,我们需要修改相关目录的目录安全权限,这一步骤是必须的,否则在登录 FTP 的时候会出现错误。如下图所示,我们会看到由于权限不足导致无法读取配置文件的错误提示。而无权限读取的文件是位于 inetsrv\config 下的 redirection.config 文件。经过 gOxiA 的测试发现即使为该文件添加了相应的权限但仍提示登录失败,最终要配置 config 目录权限,赋予 Network Service(FTP7 进程的默认帐户)有读取权限后才能正常登录。

为了简单的演示目录权限的设置过程,gOxiA 参考了 IIS.net 中相关文章的命令行,其中涉及到的 cacls 可以直接运行就可以得到参数帮助。要执行的命令行如下:

cacls c:\windows\system32\inetsrv\config /G "Network Service":R /E

配置了 config 目录权限后,请确保 “Network Service”对该目录下的 administration.config 和 redirection.config 文件有读取权限,否则请执行如下命令行:

cacls c:\windows\system32\inetsrv\config\administration.config /G "Network Service":R /E
cacls c:\windows\system32\inetsrv\config\redirection.config /G "Network Service":R /E

之后创建一个 FTP 的默认目录,注意请添加“Network Service”有完全控制的权限。

下面,我们开始配置 IIS7,创建一个 FTP 站点,为其启用 IisManagerAuth,并创建一个 IIS管理凭据的帐户,使其具备 FTP 相应的访问权限。

在开始之前请确认已经安装了 IIS7 的 管理服务组件,否则请进入服务器管理,单击添加角色服务,选中 IIS7 的管理服务组件,进行安装。

默认可以使用 C:\Inetpub\Ftproot 作为 FTP 主目录,当然也可以根据自己的需要创建或选择一个目录,但是需要注意,请赋予“Network Service”有完全控制权限。

下来我们配置 IIS7 启用 IIS管理器凭据,在启用之后才能使用 IisManagerAuth。为此,打开 IIS管理器,双击“管理服务”,选中“Windows 凭据或 IIS 管理器凭据”,最后单击右边操作列表下的“应用”。

之后使用“IIS管理器用户”创建一个 IIS 所管理的用户帐号。为此,双击“IIS 管理器用户”,单击“添加用户”,在弹出的窗体中输入用户名和密码。

上述操作一旦完成,就可以开始创建一个 FTP 站点,首先选中 IIS 管理器左边的导航窗体中的“网站”,之后单击鼠标右键,左键单击“添加 FTP 站点…”。

“站点信息”中输入 FTP 站点名称,如:Default FTP Site。并选择默认的内容目录,本例中 gOxiA 使用的是 C:\inetpub\ftproot,单击“下一步”。

在“绑定和 SSL 设置”中,根据需要启用虚拟主机名,注意:FTP“虚拟主机名”可能不被一些客户端所支持。此外请将 SSL 默认的配置“需要”更改为“允许”,否则如果不配置 SSL 证书并使用 SSL FTP 登录方式将导致客户端连接失败。

在 “身份验证和授权信息”配置中,更具需要选择身份验证方式,并指定一个用户和权限。如果你只允许 IIS管理器用户能够访问该 FTP 站点,那么这一步可以不配置,直接单击“完成”。方便大家的学习,本例中允许系统用户中的 Administrator 对该 FTP 有读取和写入的权限。

现在以 Windows 身份验证方式的 FTP 站点已经创建好了,下面我们可以使用 Administrator 来登录 FTP。

经过测试,创建的 FTP 站点已经正常运行,下面我们将要为该 FTP 站点添加之前创建的 IIS管理器用户 — goxia 有相应的访问权限。

首先,选中“Default FTP Site”,在内容窗体中双击“FTP 身份验证”,进入“FTP 身份验证”设置后单击右边操作中的“自定义提供程序…”,在弹出窗体中勾选“IisManagerAuth”。

启用了 IisMangerAuth 后,打开“FTP 授权规则”,添加指定的用户 — goxia,并赋予有相应的访问权限。

最后我们来使用 goxia 这个 IIS 管理器用户登录 FTP 进行测试。

如 果首次登录失败,提示无法验证用户和密码,则需要打开该 FTP 站点的“IIS 管理器权限”设置,添加 goxia 这个帐号。之后测试登录成功后再将其帐号从中删除即可。查找 IIS.net 的相关指引文档,发现默认是要执行这步配置的,但是 gOxiA 认为这一步是配置用户是否具有该 FTP 的远程管理权限的,一旦配置并启用 IIS 的远程管理服务,那么该帐号具备的权限可能会造成安全隐患。目前 gOxiA 也未完全理解。希望有网友指点一二!

如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证的更多相关文章

  1. 如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证?

    如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证? 在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估.IIS 是重点测试和评估之一!而今 ...

  2. 如何在IIS7下配置ASP+ACCESS环境

    如何在IIS7下配置ASP+ACCESS环境 | 浏览:901 | 更新:2013-01-16 17:46 1 2 3 4 5 6 7 分步阅读 默认装完IIS7之后,使用ASP程序会发现提示数据库连 ...

  3. 如何在linux 上配置NTP 时间同步?

    故障现象: 有些应用场景,对时间同步的要求严格,需要用到NTP同步,如何在linux上配置NTP时间同步? 解决方案: 在linux 上配置NTP 时间同步,具休操作步骤,整理如下: 1.安装软件包( ...

  4. 如何在Jenkins上配置一个可以从其它Job取回Artifact的Job

    今天因为工作上的需求,需要在Jenskin上配置一个job, 它应该可以从其它所选择的Job中取回Artifact. 首先,在"构建"步骤中添加 "Copy Artifa ...

  5. 如何在IDEA上配置Maven

    IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的Java开发工具之一, IDEA是JetBrains公司的产品,现在有逐步取代老牌Java ...

  6. MongoDb进阶实践之二 如何在Windows上配置MongoDB

    一.引言            上一篇文章,我介绍了如何在Linux系统上安装和配置MongoDB,其实都不是很难,不需要安装和编译,省去了Make && Make Install 命 ...

  7. 如何在Ubuntu上配置scala教程

    Scala是一门多范式的编程语言,一种类似java的编程语言,设计初衷是实现可伸缩的语言 .并集成面向对象和函数式变成的各种特性.这里为了学习spark特地配置了scala. 1.下载scala安装包 ...

  8. 如何在Windows上配置EBS R12.1.3的OAF开发环境

    1.找到想要开发的EBS OAF扩展对应的PATCH,可以参照下面的Note,因为我要做的是R12.1.3的开发,所以要下载p9879989_R12_GENERIC OA Framework - Ho ...

  9. 图解如何在Linux上配置git自动登录验证

    记录一下配置git操作远程仓库时的自动验证,效果如下图: 本文介绍的是Linux下的配置.Windows上默认已经启用凭证存储和自动验证(依靠wincred实现,以后会使用GCM-Core). 准备工 ...

随机推荐

  1. linux环境搭建系列之maven

    前提: jdk1.7 Linux centOS 64位 安装包从官网获取地址:http://maven.apache.org/download.cgi Jdk1.7对应apache-maven-3.3 ...

  2. Eclipse启动错误:A Java Runtime Environment(JRE) or Java Development Kit(JDK) must be available……

    确保Jdk,Jre都安装完成并且环境变量配置无误的情况下,自动Ecplise报错如下: A Java Runtime Environment (JRE) or Java Development Kit ...

  3. TOJ 3974: Region n条直线m个圆最多将圆分为几个区域

    3974: Region  Time Limit(Common/Java):1000MS/3000MS     Memory Limit:65536KByteTotal Submit: 33     ...

  4. 体验devstack安装openstack

    由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack. 因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度 ...

  5. selenium webdriver——元素定位

    元素定位: >>WebDriver提供了八种元素定位方法,在Python语言中,所对应的方法如下: >>id属性定位:有唯一性 find_element_by_id(" ...

  6. Spring aop报错:com.sun.proxy.$Proxyxxx cannot be cast to yyy

    在使用Spring AOP时,遇到如下的错误: Exception in thread "main" java.lang.ClassCastException: com.sun.p ...

  7. cf 843 B Interactive LowerBound [随机化]

    题面: 传送门 思路: 这是一道交互题 比赛的时候我看到了直接跳过了...... 后来后面的题目卡住了就回来看这道题,发现其实比较水 实际上,从整个序列里面随机选1000个数出来询问,然后从里面找出比 ...

  8. webpack编译vue出现dev警告

    alias配置 vue < 2.1.0 module.exports = { ... resolve: { alias: { 'vue$': 'vue/dist/vue.js' } }, ... ...

  9. 安装淘宝内核LVS

    具体安装方法按照淘宝twiki来:http://kernel.taobao.org/index.php?title=Documents/Kernel_build. 但是有些问题是要注意的: 1. 修改 ...

  10. [暑假集训--数论]hdu1019 Least Common Multiple

    The least common multiple (LCM) of a set of positive integers is the smallest positive integer which ...