WEB服务器的架设
深 圳 大 学 实 验 报 告课程名称: 计算机网络技术实验名称:学院: 物理科学与技术学院 专业:
深 圳 大 学 实 验 报 告
课程名称: 计算机网络技术
实验名称:
学院: 物理科学与技术学院 专业: 班级:
组号: 指导教师: 万浪辉
报告人: 学号:
实验地点: 科技楼302 实验时间: 实验报告提交时间:
教务处制

1
,1. 实验目的
1. 掌握用IIS 架设WEB 服务器的方法。
2. 掌握用Apache 架设WEB 服务器的方法。
2. 实验内容/实验原理
1. 使用IIS 架设WEB 服务器。
2. 使用Apache 架设WEB 服务器
3. 实验步骤/实验截图
(一) IIS 服务器的安装与测试。
Windows Server 2003默认并不安装IIS 组件,需要用户手动安装。具体步骤如下:
1) 选择“开始”→“控制面板”→“添加或删除程序” →“添加/删除Windows 组件”(XP系统) 或“开始”→“管理工具”→“管理您的服务器” →“管理工具”,选择“下一步”后,选择“IIS应用服务器”(2003Server ,某些旧版的2003Server 也在“开始”→“控制面板”→“添加或删除程序” →“添加/删除Windows 组件”中按装IIS )。
2) 选择“应用程序服务器”,然后单击“详细信息”按钮。
3) 在新出现的对话框中选中“Internet信息服务(IIS)”(如果需要安装支持动态页面的组件,单击“详细信息”按钮,选择万维网服务,然后选择Active Server Page后,按确定),然后单击确定。如果没有选择Active Server Page,则只会安装支持静态页面的组件。建议同学们安装Active Server Page组件,后面我们安装论坛时需要使用该组件的功能。
安装完成后,可以通过“IIS管理器”来管理网站,启动方法为“开始”→“管理工具”→“Internet 信息服务(IIS )管理管理器”,或通过“开始”→“运行”,输入“inetmgr”打开IIS 管理器,检查其中的网站的状态是否为服务正在运行。
下面用另外一台主机台连接与测试网站,打开IE 浏览器,在地址栏输入“http://安装IIS 主机的IP 地址/”,如“http://192.168.145.142/”来测试。如果看到 “建设中”字样的网页,表明网站安装正确。否则请通过IIS 管理器查看网站下默认网站的状态是否为”正在运行“,若是处于“停止”状态,请右键选择默认网站,然后选择“启动”来激活网站。如果IIS 主机服务器有域名,且测试主机中在TCP/IP属性中设置的域名解析服务器能够解析IIS 服务器的域名,则也可以通过http://域名”来访问(如果IIS 安装在上次安装的活动目录的主机中,大家可以将测试主机的TCP/IP属性的域名解析DNS 设为IIS 主机的IP, 然后通过域名
(二) 网站的基本设置
1. 修改主目录与默认文件。
IIS 安装完成后,系统会自动建立一个“默认网站”。当用户利用“http://IP地址/”或“http://域名/”来请求网页时,网站会自动将其“默认网站”中“主目录”中的默认网页传给用户的浏览器。
主目录的设置可以通过右击“默认网站”,选择“属性”→“主目录”来修改网站的主目录,如图1所示。主目录可以是此计算机上的目录”,即本地目录,也可以是另一台计算机上的共享目录,还可以将主目录重定向到其他网站。本次使用我们选择“此计算机上的目录”。
2
,

3
,4

选择“目录安全性”标签,点击“身份验证和访问控制”中的“编辑”可以看到网站的验证方式。
图3 身份验证方式
1. 匿名访问
选择匿名访问,表示任何用户都可以访问网站,不需要输入用户名和密码。所有的浏览器都支持匿名验证的方法。
在安装IIS 时,系统会自动建立一个用来代表匿名账户的用户账户,该账户的名称为“IUSER_计算机名称”。当用户利用匿名的方式来访问网站时,该用户的权限和这个匿名账户的权限相同。你也可以自行选择代表匿名账户的用户账户(一般情况下不用更改),要求该账户属于活动目录数据库或安全性数据库。
2. 基本身份验证
基本身份验证会要求输入账户名称与密码。该用户名称和密码会以明文的方式传送给网站,以便网站确认是否允许用户该用户访问。设置方法为先停用“匿名访问”,因为IIS 会首先利用匿名的方法来验证身份。然后选择“基本身份验证”,出现警告对话框,告诉你用户名和密码是以明文传输,选择“是”按钮。然后输入“默认域”和领域。其中
n 默认域 用来设置账户所属的域,即用户所输入的用户名和密码将被送入此域的域控制器,利用活动目录数据库来检查。如果输入的是IIS 计算机名称,此时将利用本机安全数据库(SAM)来检查用户名称和密码是否正确。如果在默认域中没有输入信息:
Ø 若IIS 计算机是成员服务器或独立服务器,则以本地安全性数据库来检查用户的账户名称与密码。 Ø 若用户是域控制器,则以活动目录数据库来验证。
n 领域 此处输入的信息会出现客户端浏览器的登录画面上。
3. Windows 域服务器的摘要式身份验证
“Windows域服务器的摘要式身份验证”也会要求用户输入账户名称与密码,不过它比基本身份验证更安全,因为此时账户名称和密码会经过MD5算法处理。设置方法为在前面的“身份验证方法”对话框中,选择该项,然后在领域处选取一个领域。要使用“Windows域服务器的摘要式身份验证”,必须具备以下条件:
1) 浏览器必须支持HTTP 1.1(Internet Explorer 5.0(含)以上的版本) 。
2) 运行IIS 的主机必须是活动目录域的成员服务器或域控制器。
3) 用户登录的账户必须是活动目录内域账户,且该账户必须域IIS 计算机位于同一个域或是信任的域。
4) 账户必须选取“使用可逆的加密保存密码” (在活动目录账户的“属性”对话框的“用户”标签页,而且选取 5

“使用可逆的加密保存密码后”,必须重新设定该用户的密码,以便将其转储为“可逆的密码”)。
4. 集成Windows 身份验证
用户利用“集成Windows 身份验证”来连接网站时,并不会直接要求用户输入账户和密码,而是先利用用户登录系统时所用的用户和密码来连接网站。当此用户没有权限时,才会要求输入用户名和密码。
二、Apache 服务器的架设
Apache 是最流行的开源HTTP 服务器软件之一,能提供快速、可靠、稳定的WEB 服务。并可通过简单的API 扩展,将PHP ,Perl/Python解释器编译到服务器中。
(一)安装
先到http://www.apache.org下载最新版本的Apache, 目前最新版本为2.2。课件服务器上有2.0的版本下载(单击这里下载)。
安装Apache 前,请先停用IIS ,因为默认IIS 和Apache 都是通过80端口提供WEB 服务,以免两者冲突。运行Apache 的安装程序,经过Licence 页面和Readme 页面后进入下图所示的设置页面,在此输入域名信息和网站信息及管理员的Email 后,点击“Next”。以后可用安装程序的默认值来完成安装。
安装完成后,可打开IE 浏览器,在地址栏输入http://IP地址/来测试Apache 是否正确安装。正确的话应该看到如下的页面:
(二)配置
与IIS 的配置不同,Apache 的配置不是基于图形化界面程序的,而是基于配置文件的。其中Apache 安装目录下conf/httpd.conf是主要的配置文件,在Apache 运行的时候,它先调用调用该文件。Apache 的配置选项很多,这里仅列出常用的选项的含义,详细的配置说明请参考Apache 的文档,httpd.conf 文件本身对每一项的设置都有丰富的注释(以#开头的语句为注释),另外
主目录:DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs"
默认文件:DirectoryIndex index.html index.html.var
6

虚拟主机的配置:
1. 找到conf/httpd.conf文件中的"# Virtual hosts",删除"#Include conf/extra/httpd-vhosts.conf"前面的#。
2. conf/extra/httpd-vhosts.conf文件中配置虚拟主机,虚拟主机的主要配置如下:
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /www/docs/dummy-host.example.com
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
其中ServerAdmin 为虚拟主机管理员的电子邮件, DocumentRoot为主目录,ServerName 为服务的名称,后面两个为错误的日志文件。
另外,也可以通过虚拟主机将Apache 与IIS 集成。Appache 作为所有网站的接入端,apache 在80端口接收请求,通过虚拟主机代理将IIS 的网站转给IIS 。假设www.abc.com 是在IIS 下的网站(可以是通过主机头区分),网站的端口在8081端口,则虚拟主机及代理的配置如下:
ProxyPreserveHost On
ServerAdmin wanlh@szu.edu.cn
ServerName www.abc.com
DefaultLanguage zh-CN
AddDefaultCharset GB2312
ProxyPass / http://www.abc.com:8081/
ProxyPassReverse / http://www.abc.com:8081/
目录安全设置:
如果要设置某个目录下的文件需要指定用户才能访问可以采用如下设置:
首先添加用户:
下面以将用户的密码存放在C:passwd目录下user.pwd 文件为例进行说明。首先在C:盘的建立passwd 文件夹。然后运行命令行程序cmd ,进入Apache 下的bin 目录(或将Apache 下的bin 目录加入path 环境变量),
C:> htpasswd -c C:passwduser.pwd usernam1
上述命令添加一个用户username1,并将密码文件放在C:passwduser.pwd,然后输入两次密码。创建第二个用户不需要-c 选项:
C:> htpasswd C:passwduser.pwd usernam2
假设主目录下的myfile 目录只有系统用户才能访问,则可以在配置文件httpd.conf 中增加以下几行,
7
,AuthType Basic
AuthName "会员专区"
AuthUserFile "C:/passwd/user.pwd"
Require valid-user
其中各个指令的说明如下:
n AuthType 指令选择对用户实施认证的方法,最常用的是由mod_auth_basic提供的Basic 。必须认识到的很重要的一点是,Basic 认证方法并不加密来自用户浏览器的密码,因此,不应该用于高度敏感的数据。Apache 中还有另一种更安全的认证方法" AuthType Digest" ,即由mod_auth_digest供的摘要认证。目前,只有最新的浏览器版本才支持摘要认证。
n AuthName 指令设置了使用认证的域(Realm),它起两个作用,首先,此域会出现在显示给用户的密码提问对话框中,其次,也帮助客户端程序确定应该发送哪个密码。
所以,如果一个用户已经在"Restricted Files" 域通过了认证,则客户端就可以尝试使用同样的密码来访问同一个服务器上任何名为"Restricted Files" 域的其他部分,从而使多个受限区域使用同一个密码,以避免用户重复输入。当然,出于安全考虑,如果服务器变了,客户端始终会要求重新输入密码。 n AuthUserFile 指令设置了密码文件的位置,也就是刚才我们用htpasswd 建立的文件。如果用户很多则认证速度会很慢,因为对每个请求都必须搜索这个纯文本文件,对此,Apache 还支持把用户信息存入快速的数据库文件,mod_authn_dbm模块提供了AuthDBMUserFile 指令,并可以用dbmmanage 程序建立和操作这些数据库。Apache 模块数据库中还提供了许多其他第三方模块提供的认证选项。 n Required 指令用设置那些用户可以访问,如果只允许某几个用户访问,可以采用:
Required user wanlh, tom
实例中的valid-user 表示系统密码文件中的所有用户。另外也可以设置用户组,详细请参考说明文档。
修改httpd.conf 后,重新启动Apache 的服务,然后用浏览器访问
浏览会要求你输入登录的用户名和密码。
8


2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。

9