以前习惯于用filezilla作为windows的ftp服务器,但是现在新版本的filezilla已经不支持windows2003了,所以趁机试一下iis配置ftp服务器。
前面都是很常规的配置
参考这里:http://jingyan.baidu.com/article/5bbb5a1b36951f13eaa17956.html
-
确认是否已经安装FTP服务,有些操作系统是默认安装了,我们这里还是确认一下!
开始--控制面板--添加或删除程序--添加/删除 windows组件
-
2
双击 应用程序服务器--internet信息服务--文件传输协议ftp服务
END
FTP站点设置
-
1
确认完已经安装FTP服务后,要对FTP站点进行设置!
开始--管理工具--internet信息服务管理器
-
2
internet信息服务--本地计算机--ftp站点--默认站点--属性(修改配置)
-
3
设置相关信息
FTP站点标识:添加该FTP的描述,IP地址(一般是内网地址),TCP端口(默认为21端口,也可以设置为其他端口)
FTP站点连接:根据具体情况设置
-
4
安全账户
保险的做法是 不允许匿名登录,吧钩去掉
后面我们会添加一个用户,并且赋予权限
-
5
主目录
可以设置时当前计算机目录或者是另一台计算机目录(映射)
FTP站点目录:浏览定位FTP文件所在站点,给予是否可以进行的操作(读,写,查)
END
添加用户
-
1
开始--控制工具--计算机管理
-
2
系统工具---本地用户和组--用户--右键 新用户
-
3
创建一个新用户
按照要求设置即可,记住用户名和密码,下面要用
点击创建后,关闭对话框
END
给新添加的用户设置权限
-
打开FTP站点--右键权限
-
吧刚刚添加的用户,写到下面的对话框,点击确定
-
3
设置权限
-
4
为了保险起见,吧FTP站点重启一下!
好!到这里就完成了,可以在浏览器或者文件目录下通过:
ftp://ip地址:端口 eg:ftp://191.0.0.52:9998
来访问啦!
那么,问题来了,按照上面的步骤,选择中间的隔离用户方式配置完成后,并不能正常访问,此时心中冒出一个疑问,ftp到底哪家强?
经过度娘,找到了解决问题的关键:http://blog.sina.com.cn/s/blog_5fdcf5c901012mma.html
在server 2003新建ftp用户并开启IIS的Ftp功能之后,有时在连接这个ftp的时候会出现530 User 用户名 cannot log in home directory inaccessible的错误,网上一般的解决方法是ftp目录是否存在,用户权限是否设置正确等等。但是经常是这些都是设置正确的,却还是出现这样的 错误提示。
其实原因是在新建IIS-FTP的时候选择了隔离用户,而在你选择的FTP文件夹却和这个用户相关的文件夹不同,所以自然就会出现这个提示,而找不到解决方法了。
这个就涉及到server 2003的FTP文件夹的设定和命名有相当严格的规范。
举个例子,如果你想为用户abc在server 2003下开通一个IIS-FTP服务 目录设定为E:\\FTP里。除了安装IIS和FTP组件及相关配置正确之外,你还应该在FTP文件夹中建立一个子文件夹。命名为LocalUser,然 后在LocalUser文件夹中再建立一个子文件夹,命名为abc,即你要开通FTP服务的用户名。
这样当用户abc运行FTP服务登录到server 2003时,会自动进入到E:\\FTP\\LocalUser\\abc文件夹目录下,这也就很好解释为什么最初会报出530 User 用户名 cannot log in home directory inaccessible的错误了。因为不这样设定的话 E:\\FTP\\LocalUser\\abc的目录根本就不存在。
另外如果我们打算允许FTP站点提供匿名登录的话,还应在LocalUser目录下另建一个public的子目录。同理,匿名登录的用户将自动进入到D:\\FTP\\LocalUser\\public目录中。
这样设置对一个服务器多个人使用的情况下非常有用,除此之外,你还可以在IIS中设置每个FTP对应的网站的流量,连接数等等限制来合理分配服务器资源。总结:
在ftp属性里面主目录的文件夹下,建立
LocalUser/ftp用户名来命名的文件夹
这就可以了。
另外别忘了修改ftp端口号。以及取消匿名访问。