我不会写需求文档,那位可以跟我提供个模版吗?
需求分析文档
修改时间: 修改人: 改后版本: 备注:
2004-10-22 董飞 10 初版
2004-10-26 董飞、陈景乐 20 增加站内信箱功能
2004-11-3 张莫迪 30 更改立项原因及特别说明
1 引言: 2
11立项背景: 2
12立项原因概述: 2
13文档依据: 2
2 项目概述: 2
21面向的用户人群: 2
22实现目标: 2
23项目开发要求: 3
24 开发工具: 3
3 具体分析: 3
31 实现概述: 3
32 学生会及学工部老师: 3
33 需人单位或需家教家庭: 4
34 广大同学: 4
4 界面设计: 4
5 特别说明: 5
51 网站的安全性: 5
52 网站可维护性: 5
53 网站的灵活性: 5
54 硬件需求:(首先考虑学校现有硬件条件) 5
55 用户界面: 5
56 数据管理能力要求: 6
57 故障处理: 6
1 引言:
11立项背景:
(1) 项目提出者: 南开大学学生工作部;
(2) 提出原因: 目前学校勤工助学管理不合理,给同学带来多种不便;
(3) 项目创立者: Rock小组;
(4) 项目开发者: Rock小组;
(5) 项目名称: 南开大学勤工助学系统;
12立项原因概述:
目前学校的勤工助学管理存在种种弊端:
(1)大多数同学需要找中介,信誉不能得到担保并且还可能缴纳许多无谓的中介费;
(2)学生会及学工部的老师工作大多靠手工,工作量大、效率不高、信息发布零散不系统,负担过重;
(3)目前的管理系统不能有效获取单位的兼职信息及同学们的申请信息,信息发布、更新不及时,交互性差;
13文档依据:
需求分析文档根据可行性调查报告编写,为今后的系统设计及数据库设计提供依据。
2 项目概述:
21面向的用户人群:
(1) 学生会及学工部老师: 作为该系统的使用、管理者和维护者;
(2) 需人单位和需家教家庭:作为兼职工作的提供者;
(3) 广大同学们: 作为兼职工作的申请者;
22实现目标:
(1)建立一个拥有良好交互性、操作简单易用的勤工助学服务性网站。
(2)网站运行要高效,费用尽量低,注重实用性。
(3)该网站提供一种更加方便、高效的勤工助学工作方式。
(4)网站实现及时获取工作提供者的信息和工作申请者的信息,后台自动
地快速、准确地将两者进行匹配,得到最优匹配并及时反馈信息。
(5)对于一段时间未找到匹配的同学,系统自动向其发信提供建议。
(6)支持站内信箱、在线信件交流以及手动匹配。
(7)最终为更多的同学找到比较满意的兼职,解决旧方式的弊端。
本系统最终实现后各部分的关系如下图所示:
23项目开发要求:
(1)项目开发规范统一:模块划分,代码编写均遵照小组命名规范文档;
(2)程序优化、安全并要有良好的可扩展性;
(3)用户界面简洁明了、操作简单实用;
(4)与用户保持良好的沟通,及时根据用户新的需求改善系统功能;
24 开发工具:
Microsoft Visual StudioNET 2003
SQL server 2000
3 具体分析:
31 实现概述:
后台程序自动处理工作提供者和工作申请者的信息进行最优匹配并将匹配
信息及时反馈给双方。对于一段时间内未实现自动匹配的用户,系统将自动发
送站内信件提出合理性建议。与此同时向管理员发送请求帮助信息,由管理员
手动匹配或者由用户自己手动匹配。
32 学生会及学工部老师:
(1)职能:勤工助学系统的管理者和维护者
(2)具体工作:接受并处理工作提供者提供的工作;
接受并处理工作申请者的请求;
维护网站系统及硬件设施;
将工作中对系统的新要求反馈给开发小组(Rock);
(3)该用户需要的功能:
登录:用户名、密码
管理员的管理动作自动记录在该管理员的管理日志中,该日志对同级别或更高级别管理员公开但只能由最高权限管理员更改、删除;
添加管理员:由具有更高权限的管理员添加新管理员名称、密码、权限
删除管理员:由具有更高权限的人删除,彻底清除该管理员的信息
权限:1 最高权限:管理整个网站(包括手动删除信息,管理其它管理者,
手动匹配工作提供者与工作申请者,整理所有管理员的管理日志,搜索所有注册者的信息);
2 次级权限:分管理工作提供者的管理员、管理工作申请者的管理员。分别
管理各自管辖对象的信息,整理信息。
搜索注册用户的信息:包括:用户的请求信息(提供工作,申请工作)、用户的真
实姓名、年龄、性别、身份证号、地址(住址或单位)、联系电话(e-mail)、用户身份(学生或工作提供者);
察看并处理72小时内未找到匹配的学生的信息
站内实时信件交流,信件处理
注销登录,离站
33 需人单位或需家教家庭:
(1)描述:作为工作提供者
(2)该用户需要的功能:
注册:用户名、密码、真实姓名或者具体单位名、身份证号、联系地址、联系电话、
提供的工作类型(选择家教、学校兼职、校外单位等)、工作描述、对应征者的要求(可选年龄段、性别、专业等)——多选有助于更好的自动匹配;
登录:用用户名和密码登录,登陆后对外显示为在线
更改注册信息、提供工作的信息、处理信件
手动查询申请相关工作的同学的信息并选择匹配
察看并处理自动匹配者的申请者信息,选择申请者后申请者方会有特别提示符表示
已被录用,还可站内回信
可向管理员发信请求帮助
注销登录,离站
34 广大同学:
(1)描述:作为兼职工作的需求者
(2)该用户需要的功能:
注册:用户名、密码、真实姓名、年龄、身份证号、联系地址、联系电话或邮件、
院系、申请的工作类型(包括家教、校内兼职、校外兼职等)、个人描述
——填得越细越有助于自动匹配更合适工作
登录:通过用户名和密码登录,登陆后对外显示为在线
更改注册信息、想申请的工作信息、个人描述、处理信件
手动查询提供相关工作类型的用户,选择后进行匹配
察看并处理自动匹配的工作信息,选择合适者选择,选择后同样会在工作提供方的自动匹配栏里显示,还可站内回信
可向管理员发信请求帮助
注销登录,离站
4 界面设计:
主界面初步设计如下:
5 特别说明:
51 网站的安全性:
保证管理者和注册用户的密码安全,分权限管理,数据库访问控制;
管理员应具有一定网络安全及防黑知识;
52 网站可维护性:
网站管理者须懂得一定的服务器应用、SQL数据库应用、硬件维护、IIS配置等方面的技能,必要时由我们对其进行培训
53 网站的灵活性:
系统应该具有良好的功能可扩充性,以应对未来用户的更高的要求;
54 硬件需求:(首先考虑学校现有硬件条件)
管理员端:Windows 2000 server或以上(学校条件满足)
客户端: 建议IE50或以上(目前学校内的机房完全满足)
服务器: 存储各种数据,处理相应终端请求
中转器: 数据传输中转站,减小服务器压力
55 用户界面:
人性化、交互性强的网页形式,简单易用,充分合理安排用户功能
各种数据表格格式直观易操作
56 数据管理能力要求:
本系统使用SQL server ,可利用其自带的各种功能进行管理。
对不同用户信息和其它信息分类存储,使用索引查找。
目前南开大学在校生大约1万5000人,数据库需能承载至少8千人的
相关信息和其它信息(根据实际情况,暂定为8千人,以后还可拓展)
57 故障处理:
系统运行中难免出现一些故障,对此我们提出以下建议和要求:
(1)对用户提交的重要资料及时备份。(如:当用户修改注册资料时要及时更新系统资料备份,以便于系统崩溃后资料的正确恢复。)
(2)当系统数据库发生故障时,及时向用户返回相关故障原因。
(3)公开管理员电子邮箱,联系电话等,以便用户和管理员可以及时联系。
(4)做好数据库和服务器的日常维护工作,出现故障时可与我们联系由我们帮助解决。
好像有图上不来,你自己好好分析分析 吧 这东西是很不好弄 我也头疼
主要是这几个步骤:
一,数据库迁移;
二,项目移至redmine的apps目录后更改相关配置;
三, 在redmine文件夹的apache2启动目录中添加testlink项目启动路径。
前期准备
在进行本文档操作前,需要完成如下前期步骤:
1 RedMine部署完毕;
备注:RedMine部署在Ubuntu+Mysql环境下
Ubuntu Release: 1004
Mysql版本:5141-3ubuntu12
2 TestLink安装完毕。
备注:部署系统中TestLink的Release需为180后版本。
测试系统部署在Apache+Mysql集成环境,实际过程中可以根据具体需求变更。
部署概要
1 关闭Ubuntu防火墙;
2 登录RedMine服务器,设置Mysql远程连接账户;
3 登录TestLink服务器,测试第1步中的Mysql数据库远程连接;
4 登录TestLink服务器,设置配置文件;
配置文件包括:
Ø custom_configincphp(TestLink根目录下)
Ø redminecfgphp (在cfg目录下)
5 重起Apache服务器,登录TestLink测试与RedMine的连通性。
部署步骤
Ubuntu防火墙
1 由于TestLink需连接RedMine的数据库,因此登录Ubuntu系统,打开Mysql的3306端口。局域网中可以将Ubuntu防火墙关闭。关闭防火墙命令如下:
sudo ufw disable
设置Mysql远程连接账户
1 登录Ubuntu系统(RedMine与MySql均部署在Ubuntu下)。
2 登入MySql数据库。
root@redmine:~# mysql -u root –p
Enter password:
3 数据库切换(进入mysql数据库)。
mysql>use mysql;
4 创建远程账户。
mysql> GRANT ALL PRIVILEGES ON TO new_user@"%" IDENTIFIED BY
"new_user_password"
说明:其中""代表"数据库表名",new_user为远程登录用户名,new_user_password为远程登录用户密码。其中”%”说明对允许那台主机能够远程连接RedMine服务器的数据库(%是对所有主机,如为10711则是对该主机)。
例如:
mysql> GRANT ALL PRIVILEGES ON TO remote@"%" IDENTIFIED BY "remote";
以上信息在部署过程中,根据实际情况进行设置,本文档部署过程中,远程登录用户名为设为remote,所有主机均可连接至RedMine服务器的数据库。
5 mysql 的配置文件/etc/mysql/mycnf。
root@redmine sudo vi /etc/mysql/mycnf
服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
在网络环境下,根据服务器提供的服务类型不同,分为文件服务器,数据库服务器,应用程序服务器,WEB服务器等。
http://wwwchinaunixnet/
这里比较多
案例一:
用LINUX架设FTP服务器
http://wwwchinaunixnet 作者:level 发表于:2004-02-27 13:35:50
以前自己弄的东西,现在帖出来,希望对大家有点用:)
11 什么是FTP:文件传输协议原理
111 命令选择
112 命令格式
12 wu-Ftpd的安装
13 让FTP服务器运转起来
14 配置文件的设置
141 /etc/ftpaccess的设置
142 /etc/ftpusers和/etc/ftphosts的设置
143 /etc/ftpconversions设置
141 wu-ftp的相关程序
15 开设只能FTP的帐户
16 设置虚拟FTP主机
什么是FTP:文件传输协议原理
互联网文件传输协议(File Transfer Protocol ,FTP) 标准是在RFC959说明的。该协议定义了一个从远程计算机系统和本地计算机系统之间传输文件的一个标准。一般来说,传输文件的用户需要先经过认证以后才能登录网站,然后方能访问在远程服务器的文件。而大多数的FTP服务器往往提供一个GUEST的公共帐户来允许没有远程服务器的用户可以访问该FTP服务器。
一个FTP会话通常包括五个软件元素的交互。
用户接口 提供了一个用户接口并使用客户端协议解释器的服务
客户 PI 客户协议解释器,其项远程服务器协议机发送命令并且驱动客户数据传输过程
服务器PI 服务器协议解释器,响应客户协议机发出的命令并驱动服务器端数据传输过程
客户 DTP 客户数据传输过程,其负责完成和服务器数据传输过程及客户端本地文件系统的通信
服务DTP 服务器数据传输过程,其负责完成和客户数据传输过程及服务器端文件系统的通信
在RFC 959中,一般使用用户这个名词来指代客户。RFC 959定义了客户PI和服务器PI交互的方式和规范。用户接口与PI和DTP交互的机理都并不是协议标准的一部分。PI和DTP往往通常是在同一个程序模块中实现的。
在FTP会话中,一共会存在有两个独立的网络连接,一个是由两端的PI使用的,另一个是由两端的DTP使用的。PI之间的连接一般被称作控制连接(control connection),DTP之间的连接被称做数据连接(data connection)
使用TCP服务的控制和数据连接
通常情况下,FTO服务器监听端口号21来等待控制连接建立请求。而数据连接端口号的选择依赖于控制连接上命令。通常是客户发送一个控制消息来指定客户监听并等待服务器端发送数据连接建立请求的端口号。
对数据传输和控制命令传输来使用不同的独立连接有如下优点:两个连接可以选择不同的合适服务质量,如:对控制连接来说高需要更小的延迟时间,对数据连接来说需要更大的数据吞吐量;而且可以避免实现数据流中的命令的通明性及逃逸。
当传输建立时,总是由客户端首先发起。然而客户和服务器都可能是数据发送者。除了传输用户请求下载文件,数据传输过程同样在客户端请求列服务器端目录结构时建立。
111 命令选择
当一个传输建立时,一般通常需要指定四个方面的属性:
文件类型
该属性指定如何将文件的数据匹配成适于传输的格式,一共有四种可能的选择:
ASCII文件类型
在发送端,文件从本地文本文件格式转换为 NVT ASCII格式,每行结束有一个CR/LF对来标识。 在接收端,再被转换为本地的文本格式。
这说明了为什么Unix主机之间传输文本文件为何传输的数据量要大于文件的实际大小。若传输一段端或传输两端都不使用ASCII文本编码,则是应该由数据传输过程来实现本地编码和NVT ASCII 编码之间的转换。
EBCDIC文件类型
类似于ASCII,区别仅仅上使用EBCDIC字符编码
图象 (或二进制)文件类型
文件以本地传输内容传输,在远端以同本地完全相同的内容存储。
本地文件系统
用在字节大小不是8位的环境下。没字节位数由发送者指定。
在实际应用中,只有ASCII和图象格式使用的较多。
格式控制
该属性是和将文本文件最后传送到打印设备相关的,其中有多种方式来实现将垂直格式信息编码到文件中,包括指示一个新页开始的方式。有如下方式可供选择:
无须打印格式控制,这是缺省值
Telnet打印控制,在telnet协议中定义的控制字符包含在数据流中。
Fortran打印控制,
该属性在实际中很少使用。
结构
文件可以拥有内部结构,在传输中该结构被保留。由数据传输过程来负责在传输中的结构及本地结构之间相互匹配,有三种可能性:
文件结构
这实际上意味着文件被看作没有内部结构的连续的字节流。
记录结构
文件是有一系列记录组成的结构。这只适用于文本文件。
页面结构
也可以称做块结构。每一页都伴随一个页号来传输,从而以顺序的方式来完成传输。
页面结构很少在实际中遇到。记录结构也不是很常见。对于文本文件使用ASCII文件类型可以获得相同的效果。
传输模式
该属性可以取三个不同的值:
流模式
文件的以字节流的方式传输。
块模式
文件以一个块连接一个块的方式传输,每个块的开头都有一个头。
压缩模式
一个简单的运程长度压缩编码被应用,来压缩连续的相同的字节。
实际中,一般只有流模式被使用。而压缩一般通过使用各种其他的工具程序来获得。
当一次传输被建立,客户端一般指定一个或多个前面说明的属性。若服务器端不能支持某个选项,服务器将用一个错误信息来响应客户端,并不具有协商机制。
FTP提供了充足的命令来使用户和远程建立连接并访问远程文件系统。
112 命令格式
命令以NVT ASCII串的格式被传输。每个命令以三个或四个大写的NVT ASCII字符开始,后面带有选项参数和一个CR/LF对来标识命令结束
应答由三个NVT ASCII数字及一个选项消息组成。
一个长的应答也许会有多个消息组成,第一个消息的三个数字后带有一个破折号,最后的消息不带有破折号。中间的消息无须携带三个数字,但是如果带了三个数字,则也需要破折号。
下面是所有的命令的列表。带有星号的命令一般很少使用,所以往往在具体实现中不支持。
String Meaning
ABOR 放弃传输
ACCT 某些系统将帐号和用户与文件系统相关联
ALLO 为即将传送的文件分配空间。后面携带的参数来确定字节数
APPE 将文件附加到已经存在的文件后面
CDUP 在远程系统上将当前目录切换到上级父目录
CWD 改变远程系统的工作目录
DELE 删除远程系统的文件
HELP 读取服务器的帮助信息,如:支持的命令的列表
LIST 在一个新建立的数据连接上发送当前工作目录下的文件名列表
MKD 创建目录
MODE 指定传输模式,可携带的参数是:S、B或 C
NLST 在一个新建立的数据连接上发送一个当前目录下的“完全”的目录列表
NOOP 空操作,防止连接断掉
PASS 提供一个用户登录密码,必须立即跟随在USER命令后
PASV 指定服务器数据传输过程监听等待客户端的数据连接连接建立请求
PORT 指定客户端监听等待服务器端建立的连接的端口号
PWD 显示服务器端的当前工作目录名
QUIT 退出登录并终止连接
REIN 重新初始化,退出登录但是并不断开连接,后面必须随后发出一个新的USER命令
REST 从服务器的一个标识处重新开始传输
RETR 从远程系统取回一个文件
RMD 删除一个目录
RNFR 指定要被命名的文件的老的路径名,随后必须是一个RNTO命令
RNTO 指定要被命名的文件的新的路径名
SITE 站点特有的服务器提供的服务
SMNT 结构加载,提供一个文件系统结构的远程系统路径名
STAT 状态信息
STOR 上载一个文件到服务器上,若文件已经存在则覆盖
STOU 上载一个文件到服务器上,不覆盖已经存在的文件
STRU 指定文件结构,参数可以是F、R或P
SYST 报告远程系统的操作系统类型
TYPE 指定文件类型,参数可以是A、E、I、L只有TYPE A和TYPE I常用
控制连接命令应答有如下形式:
Type Description
1yz 主动初步应答,在发送另一个命令以前等待另一个应答
2yz 主动最后应答,最后一个命令成功结束
3yz 主动中间应答,必须再发送一个命令
4yz 暂时被动应答,要求的动作当时不能完成,但可以重试
5yz 永久被动应答,要求的动作不能完成,不应该重试
"y"数字编码进一步的信息
Digit Meaning
0 语法错误
1 信息
2 连接状态
3 认证和记帐
4 保留
5 File s文件系统状态
下面是一些典型的消息:
Number Meaning
125 数据连接打开,传输开始
200 命令OK
331 用户名OK 需要输入密码
425 不能打开数据连接
452 错误写文件
500 语法错误-不可识别的命
具体的详细情况可以参见RFC
wu-Ftpd的官方权威站点地址是:http://wwwwu-ftpdorg/。
12 wu-Ftpd的安装
当前,Linux环境下有许多ftp服务器软件可供选择,但是目前最常见的仍然是wu-Ftpd服务器。这里主要讨论该软件的安装和配置。
一般来说,在安装了linux时,缺省都会自动安装wu-ftpd服务器,但是有时候为了某种需要也需要自己亲自重新安装该服务器软件。安装wu-Ftpd有两方式,一种是安装rpm形式的发布包;一种是自己动手去编译生成Ftp服务器。
rpm包可以在http://rpmfindnet/linux/RPM/WByNamehtml处下载得到,以rpm包方式安装非常简单,只需要在按下面的简单的几个步骤就可以完成,假设下载得到的rpm包存放在/tmp目录下:
#cd /tmp
#rpm -ivh wu-ftpd-160-9i386rpm
压缩的源代码可以在ftp://ftpwu-ftpdorg/pub/wu-ftpd/出得到。这里我们以最新的160为例说明如何编译安装wu-ftpd。
1、解开源代码
1) 将压缩的源代码拷贝到/usr/src下
#cp wu-ftpd160targz /usr/src
2) 对压缩文档进行解压缩:
#tar xvfz wu-ftpd160targz
#cd wu-ftpd-160
2、敲入命令 "/build xxx" ,可以在这里指定一个C语言编译器:"/build CC=yyy xxx" yyy 指用来替代 "cc" 的其他的编译器。对于linux环境下的gcc编译器,命令应该为:"/build CC=gcc xxx"
#build CC=gcc lnx
xxx可以取下面的值:
gen : 通用make(当移植到心得系统时需要拷贝它)
aix : IBM AIX
aux : AU/X
bdi : BSD/OS
bsd : BSD
dec : DEC Unix 3X
du4 : DEC Unix 4X or later
dyn : Dynix
fbs : FreeBSD 10 or later
hiu : Hitachi Unix
hpx : HP-UX
lnx : Linux (tested on 1030)
nbs : NetBSD 1X
nx2 : NeXTstep 1x
nx3 : NeXTstep 3x
osf : OSF/1
osx : Mac OS X
ptx :
sco : SCO Unix 32v42/SCO OpenServer 5
sgi : SGI Irix 405a
sny : Sony NewsOS
sol : SunOS 5x / Solaris 1x
s41 : SunOS 41x
ult : Ultrix 4x
uxw : UnixWare 11 or later
clean : Clean up object files and such to reduce disk space after building
install: Install ftpd
Copying Makefiles
Linking src/configh
Making support library
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c strcasestrc
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c authuserc
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c snprintfc
rm -f libsupporta
ar cq libsupporta strcasestro authusero snprintfo
ranlib libsupporta
: : :
: : :
: : :
编译成功以后将生成如下几个可执行文件:
ftpd FTP服务器程序
ftpshut 用于关闭FTP守护进程的程序
ftpcount 记数程序,显示目前ftp登录的人数
ftpwho 查看当前FTP服务器的连线情况,类似与系统的who命令,只不过是查看ftp登录的用户
ckconfig 检查FTP的设置是否正确
ftprestart 重新启动ftp服务器
privatepw 改变wu_ftpd组访问文件信息
3、若只是升级到一个新的版本,应该首先备份系统所有的旧的配置文件。否则这些配置文件将被覆盖。为了适应自己的需求,应当编辑样本配置文件来满足自己的要求,具体配置文件的需求参见后面的内容。
4、以超级用户身份敲入命令"/build install"
#build install
installing binaries
install -c -o bin -g bin -m 110 bin/ftpd /usr/sbin/inftpd
install -c -o bin -g bin -m 111 bin/ftpshut /usr/bin/ftpshut
install -c -o bin -g bin -m 111 bin/ftprestart /usr/bin/ftprestart
install -c -o bin -g bin -m 111 bin/ftpcount /usr/bin/ftpcount
install -c -o bin -g bin -m 111 bin/ftpwho /usr/bin/ftpwho
install -c -o bin -g bin -m 111 bin/privatepw /usr/bin/privatepw
installing manpages
install -c -o bin -g bin -m 444 doc/ftpcount1 /usr/man/man1/ftpcount1
install -c -o bin -g bin -m 444 doc/ftpwho1 /usr/man/man1/ftpwho1
install -c -o bin -g bin -m 444 doc/ftpaccess5 /usr/man/man5/ftpaccess5
install -c -o bin -g bin -m 444 doc/ftpconversions5 /usr/man/man5/ftpconversio5
install -c -o bin -g bin -m 444 doc/ftphosts5 /usr/man/man5/ftphosts5
install -c -o bin -g bin -m 444 doc/xferlog5 /usr/man/man5/xferlog5
install -c -o bin -g bin -m 444 doc/ftpd8 /usr/man/man8/ftpd8
5、编辑 "/etc/inetdconf" 文件,指向新的ftpd守护进程,大多数情况下,这一步是不必的,因为在build install时,会将新的守护进程拷贝覆盖老的守护进程。若希望使用ftpd的增强的扩展功能,应该在这行最后加上"-a"选项。
ftpd守护进程一般可以携带如下参数,也可以不带任何参数:
-d debug参数,当ftpd守护进程出现错误时,会将错误信息写入到系统记录文件/usr/adm/syslog中
-l 记录每次ftp会话信息到/usr/adm/messages中
-t 设置当FTP客户端多久无操作就自动断线,这个参数后面指定等待的时间,如 -t 600 表示若客户
端若连续10分钟没有动作就自动断线,缺省值是15分钟
-a 使用ftpaccess配置文件内容对ftpd进行更详细复杂的设置
-A 不使用ftpaccess配置文件的设置,缺省值是-A
-i 当客户端有上载文件的动作时,就记录在文件xferlog中
-L 使用户连接ftp服务器期间使用的所有命令都被记录到/usr/adm/messages中
6、拷贝tar、gzip、gunzip、compress、uncompress等文件到 "~ftp/bin"中,拷贝"ls"为"~ftp/bin/ls"。
7、若是第一次安装,使用"ckconfig"程序查找ftpd的各种配置文件存放目录:ftpconversions、ftpusers、 和ftpgroups。在"doc/examples"目录下有样本文件。"ckconfig"是一个可执行程序,确保修复该程序检测到的任何问题。
13 让FTP服务器运转起来
一般来说,只要正确地编译安装了wu-ftpd,该服务器就可以正常运行。用户可以通过FTP命令从各种系统上连接该服务器。
14 配置文件的设置
141 /etc/ftpaccess的设置
这个配置文件是FTP服务器最重要的配置文件,这个文件的设置决定了FTP是否可以正常工作及许多访问权限的设置。如下面的例子所示:
class all real,guest,anonymous
limit all 10 Any /etc/msgs/msgdead
readme README login
readme README cwd=
message /welcomemsg login
message message cwd=
compress yes all
tar yes all
log commands real
log transfers anonymous,real inbound,outbound
shutdown /etc/shutmsg
email user@hostname
下面是设置文件各个指示(directive)的详细说明:
指示: loginfails n
密码输入n次就自动断开连接
指示:autogroup 组名 类别 [ ]
若一个匿名用户属于任何一个参数类别的类,则FTP服务器将实施setegid()调用使其属于这个组名定义的组,这样做是为了实现某些特定类别的匿名用户可以访问一些只允许本组及拥有者可以访问的文件。组名必须是/etc/group内定义的有效组。
指示: class 类名 类别(real、guest、anonumous) IP地址
这个指示是设定FTP服务器用户的类别。
FTP服务器的用户可以分为以下三种类别:
real 在该FTP服务器上拥有合法帐户的用户;
guest 另外定义某些特定组的用户;
anonymous 匿名用户;
举例说明:
class outworld real,guest,anonymous
定义一个名为outworld的类,该类包含三种类型的用户:real,guest,anonymous。该类在后面的指示中使用。其中""是类定义中的IP地址部分,表示网络上的所用主机。也就是说明允许任何主机连接FTP服务器。若希望对访问FTP的主机进行一定的权限设置,可以这样做:
class friend real,guest,anonymous linuxaidcomcn 20110113
指定义一个friend类,该类从linuxaidcomcn 及20110113访问FTP服务器时有特定的权限设定。
指示: limit 类别 人数 时间 文件名
该指示设定在某个类在某个时间内允许连接FTP服务器的人数的限制,并指定当连接人数超过限制,后面的用户连接时显示给用户的消息信息。
举例说明:
limit local 20 Any /tmp/message/msgtoomany
上面的例子限定local这个类中的拥护同一时间只能有20人同时上网连接这台FTP服务器,若超过20人则显示/tmp/message/msgtoomany的文件的内容
limit outworld 100 MoTu|Any 2200-0800 /tmp/message/msglimit
这个例子限制outworld这个类的用户只能在周一周二或每天的晚上10点到第二天早上的8点之间访问该FTP服务器,而且同时连线的人数不可以超过100人,若超过100人,则显示/tmp/message/msglimit的文件的内容
/tmp/message/msglimit的内容为:
对不起!本服务器只允许匿名用户在周一周二全天及其他每天晚上10点到第二天早上的8点之间访问,当前时间为%T;而且只允许同时有%M个匿名用户访问,当前有%N个用户在访问该服务器。请在合适的时间访问本FTP服务器,谢谢!
这里的%M是一个变量,代表同时允许连接的人数的上限,FTP服务器可以用前面设置的值自动替代该变量,其他允许的变量包括:
%T 本地当前时间;
%F CWD所在分区剩余空间,以KB为单位。但该变量不是所有系统都支持。
%C 当前工作目录;
%E 定义在/etc/ftpaccess文件中的系统管理员的E-mail地址;
%R 远端主机名;
%L 本地主机名;
%U 登录时所给的用户名;
%N 这个类别当前连接的用户数目;
利用这些参数,可以编辑一个详细的说明文件,这样可以让用户清楚当前服务器资源使用情况。
指示: readme 说明文件 指令
当用户执行指定的"指令"时,系统就会自动显示所设置的说明文件;
举例说明:
readme README login
当用户执行登录动作时,只要以README开头的文件内容就会显示给用户。
readme README cwd=
表示用户切换目录时(cwd),只要以README开头的文件内容就会显示给用户。
通常README应该是该目录下文件的说明,让登录的用户可以清楚地知道目录中存放了那些文件;
指示: message 文件名 指令
使当用户执行特定的"指令"时,系统就将指定的文件内容显示给用户;
举例说明:
message /msgwelcome login
指定当用户登录时,将自动显示/tmp/message/msgwelcome的内容给用户,注意这里的/msgwelcome指ftp根目录下的msgwelcome文件,即/home/ftp/msgwelcome。
message /welcome cwd=
指定当用户切换另一个目录时,只要目录中有msgwelcome文件,就显示给用户
指示: compress (yes/no) 类别
设置哪个类别的用户可以使用压缩功能;
举例: compress yes local outworld
允许local 和outworld两个类别的 用户使用压缩功能
指示: tar (yes/no) 类别
指定哪个类别的用户可以使用tar功能;
指示: passwd-check (none/trivial/rfc822) (enforce/warn)
设定当用户以匿名方式登录服务器时密码的方式:
none 表示不对密码进行验证,任何密码都可以登录;
trival 表示只要密码中包含@就可以登录;
rfc822 表示密码一定要符合rfc822中规定的E-mail格式才能登录。如:webmaster@linuxaidcomcn
enforce 表示输入的密码不符合指定格式就不允许登录;
warn 表示输入的密码不符合指定格式显示警告信息,但仍然允许登录;
指示: log commands 类别(read/guest/anonumous)
设定那些用户登录时,所使用的操作会被记录在文件/usr/adm/xferlog中。
指示: log transfer 类别(read/guest/anonumous) (inbound/outbound)
设定指定的用户类别在上载还是下载时的相关信息被记录到/usr/adm/xferlog中。
举例说明:
log transfer anonymous,real inbound,outbound
当anonymous或real用户登录后,上载和下载的操作会被记录在文件/usr/adm/xferlog中。
指示: shutdown 文件名
FTP服务器关闭的时间可以后面的文件名中指定的文件中指定,设定的时间一到,便无法登录FTP服务器了,只有将这个文件删除才能恢复FTP服务器。文件的格式可以由命令ftpshut来建立。
指示: delete (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用delete命令。
举例说明:
delete no guest,anonymous
设定大概内登录的用户为guest或anonymous上不允许执行delete命令。
指示: overwrite (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用overwrite指令。
指示: reame (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用readme指令。
指示: chmod (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用chmod指令。
指示: umask (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用umask指令。
指示: upload [absolute|relative] [class=] [-]
["dirs"|"nodirs"] []
定义允许用来上载的目录。若允许上载,所有新上载的文件的所有者及组由和定义 ,访问权限将为。对于覆盖老文件的上载文件将保持原来的所有者及访问权限信息。文件上载的权限信息由最大匹配目录项定义,如:
upload /var/ftp no
upload /var/ftp /incoming yes ftp daemon 0666
upload /var/ftp /incoming/gifs yes jlc guest 0600 nodirs
would only allow uploads into /incoming and /incom-
:
将只允许/incoming和/incom-ing/gifs目录上载。上载到/incoming目录下的文件将属于ftp/daemon,访问权限为0666;而上载到/incoming/gifs下的文件将属于jlc/guest,访问权限为0600。应该注意的是 必须匹配"ftp"用户的passwd文件中的主目录。
"dirs"和"nodirs"选项用来设定是否允许在该目录下创建新的子目录。但是缺省是允许创建子目录的。
设定新创建的目录的访问权限,缺省为0777。
上载指示只能施用于用户主目录(chroot()的参数)等同于的用户,可以为来表示匹配任何主目录。
和也可能指定为,在这种情况下,任何上载的文件或创建的目录的所有者都等于起父目录的所有者。
选项[absolute|relative]指定是是绝对路径还是相对于chroot()参数指定的目录的相对路径。缺省是绝对路径。也可以指定任意多个class='来进行进一步限定。若指定了任何目录,则该上载指示只影响这些组的用户。
指示: alias 目录别名 目录路径
给指定目录设置一个别名,当切换目录时可以使用别名。
举例说明:
alias xwin /pub/linux/xwindows
为/pub/linux/xwindows设置别名xwin,登录以后只要输入命令cd xwin就可以进入该目录。
指示: cdpath 目录
该功能和系统的PATH环境变量设置类似,当cd /etc时,FTP首先查看当前目录下是否有etc子目录,无则看是否有别名,若没有则根据该指示设定的路径查询。
举例说明:
cdpath /pub/linux
cdpath /pub
cdpath /
搜索顺序为:/pub/linux /pub /
指示: path-filter 类别(real/anonymous/guest) 目录
设定上载文件名限制。
举例说明:
path-filter anonymous /etc/pathmsg^[-A-Za-z0-9_\]$^\^-
path-filter guest /etc/pathmsg^[-A-Za-z0-9_\]$^\^-
设置限制anonymous和guest用户上载的文件名只能包含A-Z、a-z、0-9和_-,名字以""和"-"开头的文件不能上载到服务器上。
指示: guestgroup [ ]
guestuser [ ]
realgroup [ ]
realuser [ ]
对于guestgroup指示,若一个真实(real)用户属于任何一个所指定的组,则其FTP会话都被FTP服务器以匿名的方式进行处理。也就是说,chroot()被调用,用户不再允许发出USER和 PASS 命令。必须是有效的组。
这里用户的home目录必须被争取的设置,要确实和匿名用户一致,/etc/passwd中的相关项的home目录被分割为两个部分,第一部分是chroot()调用的根目录参数,第二个是用户相对于根目录的主目录,两部分之间以"//分隔",如:
guest1::100:92:Guest Account:/ftp//incoming:/etc/ftponly
当guest1成功登录进入,FTP服务器将调用chroot("/ftp")然后调用chdir("/incoming")。则guest1就如同匿名用
1 实验目的与要求
(1) 学会安装和配置文件服务器。
(2) 学会服务器端共享文件夹的配置和管理。
(3) 学会客户端访问共享文件夹的方法。
(4) 学会分布式文件系统的设置方法。
(5) 实验学时:2
2 实验相关理论与知识
计算机网络的基本功能是在计算机间共享信息,文件共享可以说是最基本、最普遍的一种网络服务。虽然越来越多的用户购置专用文件服务器(如NAS),但是通用操作系统提供的文件服务器功能也非常实用,完全能满足一般的文件共享需求,下面主要介绍Windows Server 2003文件服务器的配置、管理和应用。
文件服务器负责共享资源的管理和传送接收,管理存储设备(硬盘、光盘、磁带)中的文件,为网络用户提供文件共享服务,也称文件共享服务器。除了文件管理功能之外,文件服务器还要提供配套的磁盘缓存、访问控制、容错等功能。部署文件服务器,主要要考虑以下3个因素。
·存取速度:快速存取服务器上的文件,例如可提供磁盘缓存加速文件读取。
·存储容量:要有足够的存储空间以容纳众多网络用户的文件,可使用磁盘阵列。
·安全措施:实现网络用户访问控制,确保文件共享安全。
文件服务器主要有两类解决方案,一类是专用文件服务器,另一类是使用PC服务器或PC计算机组建的通用文件服务器。
专用文件服务器是专门设计成文件服务器的专用计算机,以前主要是运行操作系统、提供网络文件系统的大型机、小型机,现在的专用文件服务器则主要指具有文件服务器的网络存储系统,如NAS和 SAN。NAS独立于操作系统平台,可支持多种操作系统和网络文件系统,提供集中化的网络文件服务器和存储环境,比一般的文件服务器的功能更强大,可看作是专用存储服务器,可为那些访问和共享大量文件系统数据的用户提供高效、性能价格比优异的解决方案。SAN全称存储区域网络,是一种用户存储服务的特殊网络,通常由磁盘阵列、光盘库、磁带库和光纤交换机组成。NAS可作为独立的文件服务器,提供文件级的数据访问功能,更适合文件共享。而SAN提供数据块级的数据访问功能,更适合数据库和海量数据。
目前一般用户使用PC服务器或PC计算机,通过网络操作系统来提供文件服务,UNIX、Linux、Novell、 Windows等操作系统都可提供文件共享服务。Windows网络操作系统,如Windows NT Server、Windows2000 Server和最新的Windows Server 2003由于操作管理简单、功能强大,在中小用户群中的普及率非常高,许多文件服务器都运行Windows网络操作系统。下面将重点以Windows Server 2003为例介绍文件服务器的配置、管理和应用。
3 实验环境与设备
C/S模式的网络环境,包括一台Windows XP客户机和一台Windows Server 2003服务器。
两种可选的物理拓扑(交叉线连接或通过集线器/交换机用直连线连接)。
4 实验内容与步骤
40 服务器的基本网络配置,包括IP地址为“192168105XX”、网关为“192168105254”等。(注:“XX”代表你配置机器的主机编号,“nXX”代表你的服务器主机名,例如你坐在5号机上则“XX”代表“05”,“1XX”代表“105”,配置此机的IP地址为“1921681055”、主机名为“n05”,下同)。
41 安装和配置文件服务器
文件服务器提供网络上的中心位置,可供存储文件并通过网络与用户共享文件。当用户需要重要文件时,可以访问文件服务器上的文件,而不必在各自独立的计算机之间传送文件。如果网络用户需要对相同文件和可通过网络访问的应用程序的访问权限,就要将该计算机配置为文件服务器。默认情况下,在安装Windows Server 2003系统时,将自动安装“Microsoft网络的文件和打印共享”网络组件。如果没有该组件,可通过网络连接属性对话框安装。
1.准备工作
在部署文件服务器之前,应当做好以下准备工作。
·划出专门的硬盘分区(卷)用于提供文件共享服务,而且要保证足够的存储空间,必要时使用磁盘阵列。
·磁盘分区(卷)使用NTFS文件系统,因为FAT32缺乏安全性,而且不支持文件和文件夹压缩、磁盘配额、文件加密或单个文件权限等重要特性。
提示:使用Windows Server 2003自带的工具即可将FAT32转换成NTFS格式。该工具名为Convertexe,位于Windows安装目录下的System32目录中。在命令行状态运行该工具即可,如Convert E:/FS:NTFS。
·确定是否要启用磁盘配额,以限制用户使用的磁盘存储空间。
·确定是否要使用索引服务,以提供更快速、更便捷的搜索服务。
2.配置文件服务器
只要将Windows Server 2003计算机上的某个文件夹共享出来,就会自动安装文件服务器,也可通过“配置您的服务器向导”工具来安装文件服务器角色。这两种方法的差别是,第二种方法提供更多的选项,并在程序菜单中提供文件服务器管理台工具。这里介绍采用第二种方法的基本步骤。
(1) 启动“配置您的服务器向导”工具。默认情况下,登录Windows Server 2003时将自动启动“管理您的服务器”(也可从控制面板中选择管理工具→管理您的服务器),单击添加或删除角色。另一种方法是直接从控制面板中选择管理工具→管理您的服务器→配置您的服务器向导。单击下一步按钮。
(2) 在配置选项界面中选择自定义配置,单击下一步按钮。
(3) 在服务器角色界面中,如果文件服务器的已配置状态为“否”,就单击文件服务器,然后单击下一步。
注意:如果文件服务器的已配置状态为“是”,就单击文件服务器,再单击下一步按钮打开角色删除确认界面,并选择删除文件服务器角色复选框,即可删除文件服务器角色,这样该服务器上的文件和文件夹就不再共享,依赖于这些共享资源的网络用户、程序或宿主都将无法与它们连接。
(4) 出现文件服务器磁盘配额对话框中,为服务器上所有NTFS分区设置默认的磁盘配额。勾选为此服务器的新用户设置默认磁盘空间配额和拒绝将磁盘空间给超过配额限制的用户。单击下一步按钮。默认情况下是没有启用磁盘配额。
(5) 出现文件服务器索引服务对话框,确定是否要使用索引服务。单击下一步按钮。一般情况下不需索引服务,只有在用户要经常搜索该服务器上的文件内容时才启用它。
(6) 出现选择总结对话框,查看和确认已经选择的选项,单击下一步按钮。
本例中有“设置默认磁盘配额”、“安装文件服务器管理”和“运行共享文件夹向导来添加一个新的共享文件夹或共享已有文件夹”等选项。
(7) 自动完成相关配置后,出现共享文件夹向导,根据提示配置共享文件夹以供其他用户共享。只有配置了共享文件夹之后,文件服务器才能建立。
(8) 单击下一步按钮,出现文件夹路径对话框,指定要共享的文件夹路径。可通过浏览在C盘目录下新建一个FileShare作为共享目录,此时文件夹路径输入框中将出现C:\FileShare(如果C盘中已经建立过此文件夹,才可以在此输入框中直接输入)。
(9)单击下一步按钮,出现名称、描述和设置对话框,指定共享名。
(10) 单击下一步按钮,出现权限对话框,指定共享权限为管理员有完全访
问权限;其他用户有只读访问权限,单击完成按钮。这里提供了几种预置的权限,也可以自定义权限。
(11)共享成功对话框中显示共享成功,给出新建共享文件夹的信息。如果要继续设置其他共享文件夹,则选中下面的复选框。单击关闭按钮,完成。
至此文件服务器配置就完成了。接下来可执行各项文件管理任务。
3.文件服务器管理工具(以下方法至少掌握一种)
Windows Server 2003提供了用于文件服务器配置管理的多种工具。
·文件服务器管理控制台:打开“管理您的服务器”工具,在文件服务器区域单击管理此文件服务器,打开该控制台。要使用“配置您的服务器向导”工具安装文件服务器,可从程序菜单中选择管理工具→文件服务器管理命令打开该控制台。
·“共享文件夹”管理工具:也可通过“计算机管理”工具中的“共享文件夹”管理工具来执行共享文件夹的配置管理,从程序菜单中选择管理工具→计算机管理,展开共享文件夹节点即可。
·Windows资源管理器:可直接将文件夹配置为共享文件夹。
·命令行工具:如net share可显示有关本地计算机上全部共享资源的信息。
0条评论