ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

IIS 5.0搭建FTP与WWW站点:配置避坑与Ethereal抓包验证

IIS 5.0搭建FTP与WWW站点:配置避坑与Ethereal抓包验证 简介这是一份面向网络工程初学者及备考学生的实验文档完整记录在Windows 2000环境下配置文件传输服务器与网页服务器的方法。文档以集成信息服务为基础系统讲解从安装组件、创建站点、设置网络地址与端口、规划主目录、分配访问权限到添加虚拟目录、设定默认文档、发布个人网站等完整流程并附有实验报告思考题既适合课堂实验参考也适合自学实践。资源仅包含一个PDF文档压缩包体积约一点三四兆字节方便下载与打印。目前已有九十一人学习浏览适合需要快速掌握传统网络服务搭建方法的读者。文档不仅列出操作步骤还包含“信息服务管理器”中的界面细节与常见参数说明可帮助理解文件传输与网页服务的工作过程。通过动手配置自己的文件传输站点和网站读者能完整经历服务安装、站点构建、上传下载的全过程为后续网络服务管理打下扎实基础。1. 把 FTP 与 WWW 服务器配明白一份老实验的新读法看到“Windows 2000 IIS 5.0”这个组合很多人第一反应是“古董”。但如果你现在还在维护学校的实验机房、企业内部的老旧服务器或者刚接触网络工程课程就会发现 FTP 和 WWW 服务器配置这件事的内核——站点创建、端口规划、主目录映射、权限隔离——二十年基本没变过。这份实验四材料讲的就是在 Windows 2000 对等网环境下用 IIS 5.0 同时搭建 FTP 站点和 Web 站点并完成文件上传下载与网页发布的全流程。它解决的是“服务器装好了但不知道怎么出网”的尴尬IIS 组件装哪几个、新建站点该填什么、端口怎么避免冲突、匿名账号怎么控制。适合刚接触 IIS 管理的初学者也适合想快速回顾 IIS 5.0 操作路径的老手按着步骤走一遍两台机器互相访问就能通。2. IIS 5.0 的安装组件选择决定后面少折腾2.1 为什么先选组件而不是直接装IIS 5.0 不是一个独立安装包它挂在 Windows 2000 Server 的“添加/删除 Windows 组件”里。很多初学者容易走弯路——直接跑光盘里的安装程序结果找不到 IIS 入口。实际上 IIS 属于系统组件必须通过控制面板的 Windows 组件向导来装这是 Windows 2000 时代的固定套路。组件选择这一步最容易翻车。实验里明确要求勾选“World Wide Web 服务器”和“文件传输协议FTP服务器”如果你只勾了 IIS 根节点默认只会装上 Web 服务组件FTP 服务不会跟着出现。这会导致后面在“Internet 服务管理器”里只看到默认 Web 站点找不到 FTP 站点还以为安装失败。实操路径是控制面板 → 添加/删除程序 → 添加/删除 Windows 组件 → 勾选“Internet 信息服务 (IIS)” → 点击“详细信息” → 在子组件里勾选“World Wide Web 服务器”和“文件传输协议FTP服务器” → 确定后按提示插入系统光盘。# 检查组件的另一种方式命令行确认 IIS 服务是否已注册 # 在命令提示符下执行能看到 W3SVCWeb和 MSFTPSVCFTP即安装成功 net start | findstr /i IIS FTP W3SVC这段命令的作用是列出当前系统已启动的服务用 findstr 过滤出与 IIS、FTP、W3SVC 相关的服务名。如果你刚安装完但服务没启动net start里不会显示如果显示“服务名无效”说明组件根本没装上。安装完成后建议在服务管理器里确认 World Wide Web Publishing Service 和 FTP Publishing Service 的启动类型是否为“自动”否则机器重启后服务不会自动拉起。2.2 对等网环境下的安装注意点实验环境是“与因特网连接的计算机网络系统”但这不意味着你必须有公网 IP。对等网环境下IIS 同样能提供服务只是访问范围局限于局域网。安装时注意两点第一Windows 2000 的版本必须是 Server 版Professional 版默认没有 IIS 组件可选第二安装过程中如果提示缺少文件多半是因为系统光盘没有放入光驱或者光盘里的安装文件与系统版本不一致。安装完成后“Internet 服务管理器”会自动创建默认 Web 站点。这个默认站点占用了 80 端口主目录指向C:\Inetpub\wwwroot。后续实验创建 MYWEBSITE 时端口设为 82就是为了避开 80 端口冲突——这是整个实验里最关键的选型理由同一台机器上可以有多个 Web 站点但每个站点必须有不同的 IP 或端口或主机头。3. WWW 服务器配置从向导参数到默认文档背后的逻辑3.1 Web 站点创建向导的四个必填项打开“Internet 服务管理器”开始 → 程序 → 管理工具 → Internet 服务管理器选中主机名节点右键 → 新建 → Web 站点就会进入站点创建向导。这个向导有四个必填部分每项都对应着后续站点能否正常访问。第一项是站点说明随意起名就行比如 MYWEBSITE。它只在 IIS 管理界面里显示不影响实际访问。第二项是 IP 地址和端口号这里需要手动指定本机 IP端口改成 82。第三项是主目录路径要指向你存放网页文件的实际文件夹。第四项是访问权限默认勾选“读取”和“运行脚本”要发布静态网页勾这两项就够。# 创建主目录并放入测试页在命令行下执行 mkdir C:\MYWEBSITE echo htmlbodyh1Hello IIS/h1/body/html C:\MYWEBSITE\index.htm ipconfig这段命令做了三件事新建站点主目录、生成一个最简单的 HTML 测试页、查看本机 IP。ipconfig输出的 IP 地址要记下来后面配置向导里要填的就是这个地址。如果不提前确认 IP很容易在向导里填错导致站点启动后无法访问。测试页命名为 index.htm 而非 index.html是为了跟后续默认文档配置保持一致。3.2 默认文档配置为什么访问 IP 看不到页面站点创建完成后在“Internet 信息服务”窗口里能看到 MYWEBSITE 节点。右键 → 启动后再用浏览器访问http://本机IP:82如果地址栏直接输入 IP 不加文件名能不能出页面取决于默认文档设置。IIS 5.0 默认文档列表里包含 Default.htm 和 Index.htm但实验要求把 index.htm 添加进去这是很多学生踩坑的地方——文件放在主目录里了IP 也输对了页面就是不出来。右键 MYWEBSITE → 属性 → “文档”选项卡 → 勾选“启用默认文档” → 点击“添加”按钮把 index.htm 加进列表。注意列表顺序是有优先级的排在最上面的先被匹配。点击“上移”把 index.htm 移动到最顶部这样访问http://IP:82会优先加载 index.htm。默认文档的核心逻辑是浏览器请求站点根路径时IIS 会在主目录里按列表顺序查找同名文件找到第一个就返回给浏览器。如果列表里没有这个文件名IIS 会返回目录列表页面前提是开启了目录浏览或 403 错误。这也是为什么你手动输入http://IP:82/index.htm能打开页面、但只输 IP 打不开的原因。3.3 主目录与虚拟目录的边界实验文档里提到主目录是“发布文件的中心位置”这句话值得细看。主目录决定站点的根路径你放在主目录里的所有文件和子文件夹都会通过 HTTP 暴露出来。但如果你要发布的网页文件分布在磁盘的其他位置不想移动文件就可以用虚拟目录——右键站点 → 新建 → 虚拟目录给它起个别名映射到实际文件夹。虚拟目录的别名会成为 URL 的一部分。比如主目录是C:\MYWEBSITE你给D:\shared起了个别名docs访问路径就是http://IP:82/docs/。这个机制对 FTP 站点同样适用实验文档里明确提到了“新建”菜单下的“虚拟目录”命令。核心区别在于主目录就是站点根虚拟目录是映射出来的子路径两者在权限管理上是独立的。4. FTP 站点配置匿名权限与虚拟目录的实操组合4.1 新建 FTP 站点和 Web 站点的异同FTP 站点的创建路径与 Web 站点几乎一样右键主机名 → 新建 → FTP 站点然后跟着向导填说明、IP 地址、端口号、主目录。注意 FTP 默认端口是 21如果机器上已经有一个 FTP 站点占用 21 端口新建的站点就要换端口否则启动会报错。实际区别在第“安全账号”选项卡。右键 FTP 站点 → 属性 → “安全账号”选项卡里面有“允许匿名连接”的勾选项。默认情况下 IIS 会创建一个名为 IUSR_机器名 的匿名账号所有匿名登录 FTP 的用户都会以这个账号身份访问文件。如果取消匿名连接客户端登录时必须输入有效的 Windows 用户名和密码这对局域网内实验来说会增加操作成本。# 命令行方式验证 FTP 端口是否正常监听 netstat -an | findstr :21这条命令用于确认 FTP 服务有没有在 21 端口上监听。netstat -an输出所有 TCP 连接和监听端口findstr :21过滤出包含 21 端口的内容。看到LISTENING状态说明 FTP 服务正常。如果没看到检查服务有没有启动或者端口是否被改成其他值。这条命令在排错时比反复看界面要快得多。4.2 匿名登录与账号权限的边界实验要求“以匿名用户或站点操作员身份登录 FTP 站点”。匿名登录下用户不需要输入用户名和密码或用户名输 anonymous、密码留空即可。但匿名账号的权限受“主目录”选项卡里的三个勾控制读取、写入、记录访问。默认勾选读取允许用户下载文件要允许上传必须勾选“写入”否则客户端执行put命令时会收到 550 权限错误。站点操作员则是另一个概念。回到“安全账号”选项卡下半部分有一个“FTP 站点操作员”列表可以添加 Windows 用户账号。操作员拥有管理 FTP 站点的权限但不等于能读写文件——文件读写权限由 NTFS 权限和 FTP 目录权限共同决定。这个双重权限模型很容易被忽略你在 FTP 属性里勾了写入但主目录所在分区的 NTFS 权限没给 IUSR 账号写权限上传照样失败。4.3 虚拟目录在 FTP 里的真实用途FTP 虚拟目录的创建方法是右键 FTP 站点 → 新建 → 虚拟目录输入别名和实际路径。虚拟目录在 FTP 客户端里显示为站点根目录下的一个“文件夹”但实际内容来自磁盘上的其他位置。这在实验场景里非常实用——比如学生的个人主页文件放在各自机器上老师用一台 FTP 服务器通过虚拟目录把每台机器的目录暴露出来。虚拟目录的“属性”对话框里有读取、写入的权限勾选只对虚拟目录生效。这里要注意FTP 的虚拟目录权限和 Web 站点虚拟目录权限是独立配置的修改一处不会影响另一处。实验文档里提到了“右击虚拟目录选属性可修改虚拟目录属性”实操中建议把写入权限只给特定虚拟目录不要全站开放减少误删风险。5. FTP 与 WWW 配置避坑指南三条最常见的翻车现场5.1 站点启动失败检查端口占用和 IP 绑定现象新建站点后右键“启动”系统弹窗提示“另一个站点正在使用该端口”或直接启动失败。原因最常见的两个原因。一是端口确实被占用比如默认 Web 站点还在监听 80你的新站点也填了 80二是 IP 地址绑定不匹配站点绑定的 IP 和本地网卡实际配置的 IP 不一致。解决先改端口。Web 站点改成 82FTP 站点确认 21 没有被占用。如果是 IP 问题在站点属性 → “Web 站点”选项卡里IP 地址下拉框直接选“全部未分配”让 IIS 接管所有网卡请求。这个方法适合单网卡实验环境能绕开大部分 IP 绑定报错。5.2 浏览器能访问 FTP 但命令行无法上传现象IE 浏览器地址栏输ftp://IP能打开目录列表但用命令行ftp登录后执行put上传文件提示550 Access is denied。原因浏览器的 FTP 访问走的是只读路径它默认用被动模式且只发 LIST 命令命令行上传需要写入权限。检查点有两个——FTP 站点属性里“主目录”选项卡的“写入”勾没勾“安全账号”里匿名访问用的 IUSR 账号有没有主目录对应 NTFS 文件夹的写权限。解决先勾上“写入”如果还报 550去资源管理器里右键主目录文件夹 → 属性 → 安全把 IUSR_机器名 账号添加到列表并勾选“修改”权限。注意 IIS 5.0 里的 FTP 权限是粗粒度控制和 NTFS 权限是叠加关系必须两层都放行。5.3 首页在服务器本机能看别的机器打不开现象在服务器本机浏览器输http://localhost:82能正常出页面换局域网内另一台机器输http://服务器IP:82就超时或拒绝连接。原因优先排查 Windows 防火墙或第三方安全软件拦截了入站端口。Windows 2000 默认没有系统防火墙但很多实验机房机器装了天网、瑞星之类的第三方防火墙默认规则禁止外部访问 80/82、21 端口。解决在防火墙规则里放行 TCP 82 和 TCP 21 端口。临时验证方法在另一台机器上执行telnet 服务器IP 82看到黑窗口不关闭即端口通如果提示无法连接基本就是防火墙拦截先去关防火墙再查服务状态。6. 用 Ethereal 验证配置手把手抓包确认服务真的在干活FTP 和 WWW 站点配置到最后最容易出现“界面全绿但业务不通”的情况。这实验里推荐了 Ethereal 做封包分析这个工具能直接看到 TCP 三次握手和 HTTP/FTP 协议的交互过程用来验证服务是否真的在工作。我的习惯是配置完成后必定走一遍抓包流程比反复刷新浏览器靠谱得多。启动 Ethereal后续版本改名 Wireshark操作逻辑一致选择连接局域网的那块网卡设置过滤条件port 82 or port 21然后在浏览器输http://IP:82抓到的包里应该依次出现 TCP SYN、SYN-ACK、ACK 三次握手包紧接着是GET /index.htm HTTP/1.1请求和200 OK响应。看到这几条就能确定 Web 服务正常。如果只有三次握手但后续没有 HTTP 请求说明浏览器发出的请求没有到达 IIS多半是默认文档没配好或主目录里没文件。FTP 的抓包更讲究。命令行登录 FTP执行dir和put各一次Ethereal 里会看到典型的控制连接21 端口和数据连接。注意看数据连接是被动模式还是主动模式客户端发起 PASV 命令服务器返回一个端口数据连接走那个端口如果是主动模式服务器发起连接到客户端指定端口。局域网实验里被动模式更容易通因为不涉及客户端入站防火墙问题。看到226 Transfer complete响应就说明上传成功。有个细节值得专门说FTP 上传中文文件名乱码是老问题。IIS 5.0 的 FTP 服务默认按 ANSI 编码处理文件名Windows 2000 中文版环境下客户端用 UTF-8 编码上传的中文文件名会在服务器端变成乱码。实验场景下建议文件命名一律用英文或拼音避免后续排查时混淆。从那以后我每配完一台 IIS 服务器不管是 Web 还是 FTP都强制自己走一遍完整验证链先用netstat确认端口在监听再在浏览器里实测访问最后抓包确认协议交互正常。这套流程花不了五分钟但能省掉百分之八十的“我配好了为什么别人连不上”之后希望这份整理对你在实验或工作中配通 FTP 与 WWW 服务器有帮助。本文还有配套的精品资源点击获取
返回列表