物理与光电信息科技学院-电子信息工程-2004级-张丽婷-MiniFTP服务器v1.0
PAGE
4 -
MiniFTP服务器
系统概述
MiniFTP服务器采用Visual C++编写,提供中文菜单,交互界面良好,实现功能较完善。
实现功能
服务器的运行管理:启动和终止FTP服务
用户账户管理:添加和删除账户,设置用户上传、下载及添加删除等权限
服务器配置管理:设置服务器的开放端口,最大连接数等
状态统计:统计当前服务器运行期间上传和下载的流量等
日志管理:包含服务器的启动和推出时间管理,以及用户的登陆信息日志
安全设置:设置允许连接的当前FTP服务器的IP列表,以及禁止连接的IP列表
MiniFTP服务器运行界面
图1 MiniFTP运行时界面
MiniFTP服务器界面演示
主菜单栏
共分3个主菜单选项,完成MiniFTP的使用信息,功能管理及设置。
“服务器”菜单
设置服务器的启动,暂停,推出,以及用户账户的创建信息。
图2 “服务器”菜单界面
“查看”菜单栏
可选择性查看服务器日志,在线用户数量及其信息,服务器相关设置,安全设置以及历史的状态统计。
图3 “查看”菜单界面
“帮助”菜单栏
可查看作者及版本信息。
图4 作者及版本信息
工具栏
横向工具栏
包括设置服务器的启动,暂停,推出,以及用户账户的创建信息,是“服务器”菜单的快捷方式。当鼠标停留在按钮的上方,可出现该按钮的功能提示。
图5 工具栏界面
纵向工具栏
采用“快捷图标+英文说明”方式,提供查看菜单功能的快捷方式,界面良好。
图6 工具栏界面
MiniFTP服务器功能演示
用户管理
服务器通过“用户向导”和“用户管理”两个界面提供用户的管理信息,用户必须注册到MiniFTP服务器后方可登陆。MinFTP可以通过开启“anonymous”用户来提供匿名访问。
可通过主菜单“服务器”-“创建用户向导”,或者通过工具栏上的快捷键创建用户。
图7 用户向导方法一 图8 用户向导方法二
具体过程如下:
(1)在“用户名称”中输入想提供访问的用户名称。该演示输入用户名:LiTing。
图9 用户向导之用户名输入
(2) 输入并确认密码
密码可以保持为空,此时连接MiniFTP服务器时,密码可任意输入。在此,假定密码设定为123456。
图10 用户向导之密码输入
(3) 为该用户选择FTP服务器根目录,该演示设置根目录为“C:\Downloads”。
图11 用户向导之根目录设置
(4) 设置该用户的权限,具体如下:
图12 用户向导之权限设置
(5) 单击“下一步”,完成用户向导。
图13 用户向导之完成
至此,用户“LiTing”已成功创建,用户可以通过21端口,使用用户名“LiTing”和密码“123456”来访问。可以通过主菜单“服务器”-“用户帐号”,或者
通过工具栏上的快捷按钮来查看并管理用户。
图14 用户管理方法一 图15 用户管理方法一
用户管理界面如下:
包括用户的添加删除,各种权限的管理等。
图16 用户管理界面
服务器日志管理
通过主菜单“查看”-“服务器日志”,或者工具栏“Server Log”或者下拉框“Server Log”来查看。服务器日志包括系统的启动、停止,以及用户的活动信息。
图17 查看日志方法一 图18 查看日志方法二
图19 查看日志方法三
在线用户查看
显示当前在线用户的信息,包括用户名,IP地址,登陆时间。
图20 在线查看功能界面
服务器配置管理
包括服务器的基本管理信息,包括FTP端口,最大连接数,连接超时,欢迎、退出时信息、日志级别、启动选项及该应用程序的名称等。
图21 服务器设置功能界面
历史记录查看
可查看服务器的使用情况,包括上传、下载、连接情况等。
图22 服务器历史记录功能界面
安全选项设置
包括黑名单IP的设置,本机的IP信息。
图23 服务器安全管理功能界面
MiniFTP服务器程序说明
MiniFTP服务器主要由三大模块实现:服务器运行模块,用户管理模块,安全设置模块。
各模块的具体实现参见程序及其注释。
3.1服务器运行模块
该模块负责FTP服务器的运行。主要用到的类如下:
CFTPServer类
是CWnd的子类,作为程序的顶层类,负责实现或者调用成员函数。其中最重要的成员函数Start()和Stop()负责服务器的开始和结束运行。