Chinaunix首页 | 论坛 | 博客
  • 博客访问: 967413
  • 博文数量: 168
  • 博客积分: 3853
  • 博客等级: 中校
  • 技术积分: 1854
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-15 23:50
文章分类

全部博文(168)

文章存档

2014年(12)

2013年(46)

2012年(60)

2011年(11)

2010年(1)

2009年(17)

2008年(21)

我的朋友

分类: Windows平台

2013-12-13 12:16:07

项目上需要把文件ftp到媒体服务器。使用的FTPWebRequest,本地测试没有问题,放到服务器上有问题。
Ok,网上查找原因:
         1、发现可以使用IIS直接搭建ftp站点。

然后思路清晰了
首先,执行三个命令
cacls c:\windows\system32\inetsrv\config /G "Network Service":R /E
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 也未完全理解。希望有网友指点一二!

点击查看大图片

点击查看大图片

点击查看大图片


阅读(11000) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~