在开始试验之前要确保你的硬件工程师从零开始开

我想问问笔记本能不能当无线路由器?
输入手机号码,报价结果将发送到您手机
装修顾问-馨馨
4年行业经验,24h可咨询
10秒闪电通过好友
报价短信已发送到您的手机
因材料品牌及工程量不同,具体报价以量房实测为准
稍候装修管家将回电您,免费提供装修咨询服务
您的装修预算约
*装修管家将回电您,免费提供装修咨询服务
*装修管家将回电您,免费提供装修咨询服务
*因材料品牌及工程量不同,具体报价以量房实测为准
装修顾问 -馨馨
(四年装修行业经验)
微信扫一扫
3.&您家小区名称 :&&
请选择您家的装修时间
我想问问笔记本能不能当无线路由器?
提问者:纪梦泽| 地点:
| 浏览次数:
106| 时间:
我来帮他解答
还可以输入1500字
已有3条回答
回答数:5404
| 被采纳数:11
路由器设置网页---在DHCP服务器里 把DHCP服务器 启用,再保存就行了,别的一个不要改!!!! 在开启DHCP服务后,在电脑的TCP/IP协议里,把IP 获取改为 自动获取 网络参数里面, -选正常模式拨号 --再下面一排 --选按需要连接模式 --无数据请求自动短线时间改为 0 默认是15 有本本无线上网,在无线参数这页里呢--开启无线路由功能. 哦,设置的和我们说的一样咯在,WAN进猫线LAN出电脑线没错吧?那还有一个可能就是你在路由器设置里面乱设置了一翻,把防火墙总开关关了,如还不能上网的的话,就绝一点的reset键(按5秒以上) 恢复出厂默认值在说!!!!在开线旁边的洞。。重新设置 . 看看这样无线可能上网,能上网的话在设置其他的. 如果是在家玩,建议你不要开启防火墙,只给无线信号加密. 试试. 在不行,找买你的人换一个吧.你是怎么搜AP的信号的?可以先用下面手工设置的方式试一下:不知你用的是什么操作系统,在我的Win2000上是这样的:在桌面上看到“网上邻居”的图标,点鼠标右键,在弹出的窗口中你应该看到两个网卡(可能还有拨号连接)。从网卡的设备名应该可以看到一个是&Intel PRO/Wireles.... &,这个就是你内置的无线网卡;另一个就是你的有线网卡。如果你的无线网卡的状态显示“禁用”,那就是说无线网卡被关闭了。在这块网卡上点鼠标右键,然后选“启用”,这样你的无线网卡就打开了。还要注意的是,一般的笔记本都有硬件的无线开关,根据型号不同,可能是机器边上的一个小开关,也可能是一个组合键(Fn F1/F3/F5之类的,相应的键上应该有“天线”的标志)。在开始试验之前要确保你的硬件开关是打开的,你的笔记本上应该会亮起一个指示灯。“启用”无线网卡并打开无线开关以后,在无线网卡上点鼠标右键,然后选属性-&配置-&无线网络,你会看到一个小的弹出窗口,里面有一些内容需要填写。既然你是连接到自己的无线AP上网,你一定知道在AP里面设置的网络的名称(SSID)。如果你没有设置过,通常是“default”。然后在“操作模式”一项里面选择“基础结构(连接到接入点)”。另外一点,你的笔记本要上网还需要你的网卡有IP地址。最简单、常用的方法是在你的AP(带路由的吧?)里面设置“动态分配IP地址(DHCP服务)”,然后把你的无线网卡设置成“自动获取IP地址和DNS服务器地址”。完成了上面这一系列设置,你的无线网络应该就可以用了。如果不行,可以把无线网卡“禁用”一下,然后再“启用”,就一定可以了。在无线网卡的“属性-常规”中选择“连接后在任务栏显示图标”,这样如果顺利找到AP就会显示一个联网的图标,还有提示信息“10Mbps”或者“100Mbps”等等。如果上述过程之后还有问题,那还可能是你的AP设置了保密功能(比如WEP)。但是你说你同学的可以直接连接,应该也不是这种情况..
回答数:1782
| 被采纳数:2
一般的都可以的。
网络连接-&无线网络连接-&属性-&高级-&Internet连接共享
在“允许其他网络用户通过此计算机的Internet连接...”选项打钩,然后其他设备就可以通过它来连接Internet了。
要么就是下载个“闪联任意通”,每台电脑都安装一下,根据提示简单设置下,就OK了!
一个无线局域网。然后再通过一台联网的本本上网。
或买个无线路由器就搞定,大概百十来块。按照说明术设置一下就可以让多台有无线网卡电脑连成一个局域网
最终都通过网上邻居上网。
回答数:3241
| 被采纳数:0
首先可以使用不过软件connectify,
另外利用电脑自带的无线网卡释放wifi,方法也比较简单:在运行中输入cmd
netsh wlan set hostednetwork mode=allow ssid=*** key=***
是你自己可以设置的,分别是用户名和密码
然后打开共享和网络---更改适配器设置---本地连接(或者宽带连接
看你用哪个上网)--属性---点击共享
把沟全打上
其中网络选择无线网络2
然后回到命令窗口
netsh wlan start hostednetwork
关闭wifi只需要把start改为 stop就可以了君,已阅读到文档的结尾了呢~~
电脑知识大全88914,电脑维修学习网站,怎么学习电脑知识,电脑技术学习网站,电脑常识大全,电脑知识,电脑知识与技术,电脑知识入门,电脑知识学习网,电脑学习
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
电脑知识大全88914
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口分散控制系统有哪些基本性能试验_百度知道
分散控制系统有哪些基本性能试验
我有更好的答案
检查进入菜单的方法。  2. 使用点菜单(Point Information)检查下列处理过程点的功能:  a. 操作员站中点信息(Information)。  1.2.3 网络状态监测与分析  1. 监视网络误码和网络各节点状态。  2. 利用系统状态图检查整个网络的状态:  A. 各节点的正常状态;  B. 模拟网络故障,检查系统状态图反映是否正确。  1.3 控制器设置检查  1. 控制器组态:利用ADMINTOOL检查各控制器的设置. 选择确认(OK)按钮,注意是否切换延时时间和对系统的影响,检查备用交换机是否切换至在线,注意切换时间,确认各项指示灯显示正常。  4. 检查点右键菜单中有无超出操作员站工作范围的功能被设定。  8. 检查工作站软驱功能,拷贝某一个文件到一张新软盘中。  2. 交换机接线:检查各交换机的接线方式以及接线电缆的类型是否与设计图纸一致。  3. 整个网络结构与组成,检查相应的配置是否正确、控制器与交换机的连接是否与设计图纸一致:检查整个网络中各工作站,确认没有超出范围的功能,检查所有流程图都可以迅速调出。  1.7.3 图形信息  1. 在 Poke 菜单内用显示按钮显示图形中所有的Poke区。  2. 在 Poke 菜单内用数据显示按钮显示图形的有关数据。  3. 检查流程图中的点能否被拖动  一、系统硬件功能测试验收  1.1概貌  在开始测试之前。  3:拔下在线控制器上的网线。  b. 选择至少一个质量类型、各控制器的切换情况.1 出错信息  1. 选择一个不存在点的图形显示、下载至该站某一文件、启动或停止某一设备(例如工作站、控制器等)。  2. 观察一般信息显示 (General Message Display) 图标变红, 然后打开这个图标。  3. 可以观察到标有星号的信息、那是在窗口关闭的情况下收到的,确认可以收到的信息。  4. 模拟一个控制器活工作站故障,确认报警信息。  1.9 高速公路信息  1.9.1系统状态  1. 打开系统状态窗口选择某一个控制器或者工作站,然后点击 Drop Details 键, 观察不同类型的站所显示的信息。  2. 选择有报警的站,察看站详细状态,并对报警进行确认清除报警。  1.9.2 系统出错  1. 从 Highway Utilities 菜单进入系统状态画面。  2. 然后点击 Drop Details 键, 观察不同类型的站所显示的信息。  3. 用鼠标选择不同类型的站,然后点击 Drop Details 键, 观察不同类型的站所显示的信息。  4. 切换某一控制器,观察在一般信息显示窗口、报警窗口中不同类型的站所显示的信息。  5. 停止某一工作站,观察在一般信息显示窗口、报警窗口中不同类型的站所显示的信息。  1.10 趋势  1.10.1 趋势显示  1. 从图标打开窗口, 在显示窗口1生成一个趋势,并按下Modify按钮, 添加趋势参数,包括可达8个趋势点,按下Apply按钮予以确认。  2. 在趋势显示窗口中选择新建按钮,在显示窗口2中创建一个趋势。  1.10.2 趋势组  1. 在趋势显示窗口选择组按钮,选择一个空趋势组,用Modify 按钮创 建一个新趋势组。  2. 添加趋势参数,并按 Apply 键确认。选择刚建好的趋势组,按显示实时趋势按钮。  1.10.3 趋势一览  在显示趋势时,点击画面上任一时间段,可以看到该时间段内的所选数据。  1.10.4 表格趋势  时间在趋势显示窗口,选择 Tabular 按钮。使用 print to a file 按钮把制表趋势输出到一个文件中。(工程师站)  1.10.5趋势缺省值  在趋势显示窗口选择缺省值选项,根据要求改变高限值和低限值。按Apply按钮确认并观察相应键,显示中的新的高低限。  二、采样、报警和系统I/O测试验收  本章测试目的是确认采样和报警的操作功能, 被测试的软件安装在控制器 和 Westation操作员内, 控制器对过程输入点连续采样,经转换后把数据广播到 OVATION数据高速公路上。Westation操作员站(还有其它一些站)接受到这些数据,并把这些数据显示在该站的CRT上。  2.1 I/O采样  根据下列步骤,检验所选择的输入点能正确显示.  2.1.1 模拟量点  1. 用点信息 (Point Information) 功能显示一个点。  2. 改变所选点的数值。  3. 把所选点添加到一个趋势中, 并确认点值是否正确。  2.1.2数字量点  1. 用点信息窗口显示一个数字量点。  2. 改变所选点的条件。  3. 观察点值改变情况。  2.2 报警报告  这一节测试将检验报警功能是否将系统报警以正确的方式报告给控制器和 Westation操作员站内,控制器对过程 Westation操作员站。  2.2.1 报警列表  1. 在点信息窗口中改变某一个数字量点状态,使之成为坏点。  2. 改变某一组不同报警级别的模拟量点的报警限值使它们报警。  3. 通过仿真器产生几个不同级别的报警点。  2.2.2 报警确认  1. 选择报警列表显示,用确认按钮确认一个报警点。  2. 用确认按钮确认一批标记星号的需确认的报警点。  3. 观察经确认的报警点颜色和背景色发生反转。  4. 选择未被确认的报警列表,确认其中一个报警点,并观察它从列表中消失。  确认:  三、 工程师站功能  这一部分测试 Westation 工程师站上的编程工具功能。  3.1 组态功能  1. 选择 Menu 图标, 并选中工具菜单 ( tool ) 选项中的Powertools。  2. 选择 Westation Config Tools 选项。  3. 选择init tool功能。检查控制器、软件服务器、历史记录站、NT服务器、操作员站的组态参数是否正确,(包括站类型、站IP地址、以太网地址、网络类型、HostID、硬盘分区类型、所选择的软件包等信息)。  4. 确认不同站类型所选取的软件包。  5. 选择Admin Tool选项, 该工具用于定义、维护和下装系统组态文件。  6. 从功能菜单中选择Maintain Project Data 栏。  7. 检查不同站的相关原文件的设置是否正确。  8. 确认那些能够被改变的文件。  9. 从功能菜单中选择 Download Configure Data 栏。  10. 选择所有的过滤条件和所有的站。  11. 按下 Download 按钮。  12. 如果有的话, 观察文件版本的差异。  3.2 设备维护  打印机管理器  1. 查打印机状态。  2. 印某一个报表或文件,检查打印机状态。  3.3 Shelltool调用常用的工具  1. 文件管理器、文件转换器、文本编辑器(dtpad)等。  3.4 控制器功能  3.4.1 Control Builder (CB) 工具  1. 在菜单选择 Control Builder 选项。  2. 调出一幅图形.  3. 检验CB组态的各项功能。  3.4.2 控制器功能  启动控制器诊断功能.察看控制器中控制器信息、处理任务信息、点信息、I/O信息、版本信息、图页信息等是否正确。  3.5 图形功能  3.5.1 图形生成器 (GB)  1. 在Tools 菜单选择 Graphices Builder 项。  2. 调出一幅图形。  3. 确认 GB 的各项功能。  3.6 系统点生成器 (PB)  分别调出一个数字量输入点、数字量输出点、模拟量输入点、模拟量输出点、历史记录点、SOE点,检查点的设定参数。  四、历史数据存储及检索 (HSR)  这一部分测试HSR/LOG站,以及操作员,工程师站。  4.1 历史站的功能检测  4.1.1点的收集、存贮和检索  1. 点回顾:演示下列各种不同类型的回顾,并确认回顾数据能够被显示在报警窗口中, 并且能够滚动。  a. 过程点的上下限  b. 点的输入值  c. 采样关闭的点  d. 超时 (time-out) 点  e. 过限报警检查关闭的点  f. 传感器报警的点  g. 正在报警的点  h. 点的质量  2. 事件回顾:利用事件回顾窗口测试事件回顾窗口。  3. 组点回顾:检查组点的定义是否满足运行要求;利用组点回顾窗口检测组点回顾功能。  4. 历史趋势:按以下步骤演示:  a.在趋势窗口1内显示一个可达4个点的水平趋势。  b.在趋势窗口2内显示一个垂直的组合趋势。  c.使用趋势修改窗口修改上述中的一个趋势。  d.用光标演示时间滚动功能。  4.1.2信息和文件的收集、存贮和检索  1. 演示下列各种不同类形的历史回顾  a. 所有的点  b. 单个点  c. 站状态  d. 模拟量点  e. 数字量点  f. 状态变化  2. 确认回顾数据能够被显示在报警窗口中, 并且能够滚动显示.  3. 操作员事件信息:利用操作员事件回顾窗口以下列的方式测试功能(信息显示、打印信息、保存信息):  a. all subtype  b. grouped  c. single point  4. ASCII信息:利用ASCII信息回顾窗口以下列的方式测试功能(信息显示、打印信息、保存信息):  a. all drop  b. single drop.。  ? 控制器和I&#47.2 图形翻页  1. 在图形顶部的Poke 区进行多幅图形间的翻页操作。  1.2.2 冗余切换功能检测  1. 控制器端检测,更改不同时间段设置,恢复到改变前的值。  5. 检查点的安全级别设置是否正确。  1.6.2 点的查询  1. 按以上步骤:检查点信息中有无超出范围的功能被启用(点值一栏中的扫描功能一设置为不可操作)。  b. 点时实趋势(Mini Trend),检查三键鼠标的各键功能完好,检查备用控制器是否切换至在线,注意切换时间。  9. 工程师站,对多个点进行采样停止,关闭越限检查。  c. 强制手动输入一个值。  d. 改变多个参数后用Reset按钮。  d. 修改该点的高低限值,然后察看该点是否报警或变坏点;O模件  :拔下工作站一个端口的网线,检查工作站工作是否正常。  3. 交换机端检测:关掉在线交换机的电源:利用组态终端检查交换机的各端口设置是否符合设计要求,改变时间段,风扇工作无异音。  b. 关闭越限检查。  3. 检查显示器各项调节功能,检查键盘是否工作正常,检查趋势显示是否正确。  1.6 点的相关功能  下列的测试步骤、测试在不同情况下的点的一些功能。  1.6.1 点的信息  1. 打开 Point Information 图标。(如确认控制逻辑图不能被调出或者能能够调出但不能对相应的算法点进行参数设定)  1:  1. 控制器侧  2. 工程师站侧  3. 交换机侧  1.5 工作站  1.5.1 Westation功能  1. 重新启动工作站检查开机信息中有无错误信息出现? 工程师站及其外设  ? 系统电源及连接  1.2 网络测试  1.2.1 组态与布线  1. 交换机设置.7。  3. 打开 Point Information 图标、并输入一个数字量点名、并输入一个模拟量点名。  2. 模拟量点强制改变数据:(工程师站)  a. 停止数据采样(Scan Off)。  b. 关闭越限检查。  c. 强制手动输入一个值,检查趋势显示是否正常。  c. 点的历史趋势,建立多个历史点的历史趋势.8。  2. 用鼠标点击有效 POKE 区显示其他图形? 历史记录站及其外设  ? 操作员站及其外设  ? 网络交换机  、确认,包括对下列系统部件进行外观检查和说明。(工程师站还要确认Admin的登陆密码。  7. 检查操作员站桌面右键快捷菜单功能是否设置正确。从以下几点测试电源切换。  4. 检查工作站显示器各项调节功能,是否符合实际要求(硬件地址。  6. 打开操作员站面板上的不同图标检查操作员站上图标的各种功能是否完备、网络地址、空间分配。  a. 选择至少一个查询类型:利用CONTROLLER DIAGNOSTICS 记录各控制器的空间、内存的消耗(平均值、峰值)。  1.4 控制设备电源检查及切换测试  关掉一侧电源,观察另一测的电源切换是否顺利。)  2. 在启动过程中检查主机电源、风扇工作是否正常、控制区)。  2. 制器冗余切换检测:模拟在线控制器的处理器故障,观察备用处理器的切换时间和状态。  3. 控制器性能检测。  1.7 图形显示功能  下面步骤测试图形窗口的功能  1.7.1 图形窗口  1. 从图标中打开一幅过程图窗口。  2. 工作站端检测.8 一般信息显示  1,在点查询窗口上显示所选内容。  3. 检查该窗口的所有操作按钮功能:检查工程师站光驱、磁带机是否正常。  1.5.2 菜单系统  1. 打开 Data Analysis and Maintenance 。  4. 数字量点强制改变数据:建立多点的实时趋势。  2. 通过TOP图进入不同系统的流程图:(工程师站)  a. 停止采样。  1。在操作员站上,从主菜单系统进入点查询窗口。  2. 用 properties 窗口选择查询的特征值。  5. 启动结束后察看一般信息显示窗口中有无不正常的错误或者注意,对系统的硬件和外围设备进行检查
采纳率:87%
来自团队:
为您推荐:
其他类似问题
您可能关注的内容
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。RHCE253实验报告(服务管理)_甜梦文库
RHCE253实验报告(服务管理)
实验(服务管理) RHCE253 实验(服务管理)试验 2 域名系统 估计时间: 2 个小时 目标: 安装和配置一个 DNS 服务器 试验的起点: 标准的 Red Hat Linux 安装介绍 本次实验指导您通过使用 Berkeley Internet Name 守护进程来配置域名服务。使用模板文件作为指导,您将 实现一个仅有缓存的域名服务器 配置 named 作为 example.com 的从域名服务器 配置 named 作为主域名服务器用于转发和 IP 反查询在整个试验中,您使用的机器名称和域名将基于您使用的机器的 IP 地址。如果下面的试验出现了 X 字样的名称,您应该把 X 字样的名称替换成您的工作站的号码 (您的 IP 地址的最后一个部分) 例如, 。 如果您的工作站的 IP 的地址是 192.168.0.3, 您应该将 stationX.domainX.example.com 转换成 station3.domain3.example.com。将数据包过滤设定为无效状态。在本次试验开始之前,请您确保您的主机上的所有包过滤已被关闭(显然,在实际使用中 您可以利用 Linux 内核的防火墙机制,然而我们在这里关掉它是为了减少潜在的问题)。 本次试验中以 root 身份来使用下面命令达成上面的要求: service iptables stop chkconfig iptables off初始化安装A. 获得必要的文件 需要 bind,bind-utils 和 caching-nameserver 软件包。使用`rpm Cq`来决定这些软件包是否被安装。如果没有被安装, 通过输入如下命令来安装(以 root 身份): mkdir /mnt/server1; mount server1:/var/ftp/pub /mnt/server1 rpm CUvh /mnt/server1/RedHat/RPMS/bind-9* rpm CUvh /mnt/server1/RedHat/RPMS/bind-utils* rpm CUvh /mnt/server1/RedHat/RPMS/caching-nameserver* RPM 软件包 bind 包括 DNS 守护进程和支持脚本,但是没有配置和区域文件。caching-nameserver 提供了一个通用的配置和 区域文件。 B. 配置本地的解析器配置您的主机使得它能够被用来作为域名服务,而不是 192.168.0.254。注意:直到您的域名服务器被正确安装和配置,您的机器的 DNS 服务不会奏效。您也应该注意到当您的系统重新启动的时 候或者重新设定您的网络的时候您的/etc/resolve.conf 将会被改写(除非您对您的网络界面设定了在本讲座中提及的 PEERDNS)按照如下编辑您的解析器配置文件 /etc/resolv.conf search domainX.example.comnameserver 192.168.0.X(记住将 X 替换成您的工作站的号码)第一行定义了如果出现简单的不符合完整域名的主机名称时默认添加的缺省域。第二行指定了将主机 192.168.0.X (您的机 器)来作为 DNS 查询的解析器。为了简化情况,将除了 localhost 主机名称的定义从您的主机名称配置文件中删除。/etc/hosts 127.0.0.1 localhost localhost.localdomain该步骤并不是必需的,但是可以简化 DNS 的调式。有时候安装程序会将符合完整域名的主机名放在 localhost 的这一行, 这样一来会使得您无法准确的确定您的域名服务器配置是否正确。步骤 1:配置一个仅有缓存的域名服务器 第一个配置您将建立一个仅有缓存的域名服务器。这种类型的域名服务器对于任何区域都不授权。仅有缓存的域名服务器 被设定为主域名服务器。当主机名称或者 IP 地址需要被解析的时候,仅有缓存的域名服务器将查询请求转发到另外一台域 名服务器或者到根域名服务器来决定授权的用来解析的域名服务器。一旦解析完成,仅有缓存的域名服务器在缓存中存储 解析的信息,该解析信息有一段的生存周期。以后的查询将会变得很快。您已经安装完对于此项配置所有必须的文件。按照如下步骤来配置域名服务器:1. 在由 caching-nameserver 提供的/etc/named.conf 中的“option”区域添加下面的内容:forwarders {192.168.0.254; };这将导致您工作站上的仅有缓存的域名服务器转发其不能解析的 DNS 查询到在 192.168.0.254 的域名服务器,并且如果超 时,不与根域名服务器直接联系。 2. 启动 named: service named start 3. 测试您的配置使用 host 或者 dig 来查询一些 example.com 名称和一些真实的 Internet 域名(如果您有 Internet 访问 接口的话)步骤 2:配置一个从域名服务器一个从域名服务器将为一个区域提供授权的回答,但不是区域的授权开始。您现在将重新配置您的域名服务器作为 example.com 区域和 0.168.192.in-addr.arpa 区域的从域名服务器。1. 在您的/etc/named.conf 文件中添加如下行 zone “example.com” { masters { 192.168.0.254; }; file “slave-example.com.zone”; }; zone “0.168.192.in-addr.arpa” { masters { 192.168.0.254; }; file “slave-192.168.0.zone”; };2. 重新启动 named: servcie named restart3. 检查 slave-example.com.zone 和 slave-192.168.0.zone 文件。这些文件应该包含了从位于 192.168.0.254 的主域名 服务器传过来的区域数据库的副本。确保所有的正确工作。在您开始下一个部分之前,去除您刚才在第一步中在/etc/named.conf 中加入的两个从区域。步骤 3:配置一个主域名服务器现在您将配制您的域名服务器来负责对于区域“domainX.example.com”的解析工作。您将同样负责向对应的反查区域。将 采用如下的步骤:A. 编辑配置文件(named.conf) B. 准备区域“domainX.example.com”和区域“X.0.168.192.in-addr.arpa”的数据库文件。 C. 重新启动域名服务器 D. 测试您的配置为了您能够准备您的配置文件和区域文件,我们提供了模板文件。您可以通过匿名 ftp 方式从以下地址获得:ftp://192.168.0.254/pub/namedfiles/在如下的步骤中,记得将范例文件中中每一出出现的 X 替换成您的工作站的号码。 E. 主配置文件 下面是我们应该考虑的三个区域1. “.”(根级别)区域 “.”区域是 DNS 层次中的最高层。根服务器提供了哪些服务器对于给定的域享有授权。“.”节应该以如下的方式出现:zone “.” { file “named.ca”; };2. “domainX.example.com”(正向查询)区域添加如下的行,使得您的域名服务器成为区域的主服务器。 zone “domainX.exmaple.com” { file “domainX.example.com.zone”; };3. “X.0.168.192.-in-addr.arpa”(反向查询)区域 现在添加如下的行,使得您的域名服务器成为反查区域的主服务器。 zone “X.0.168.192.in-addr.arpa” { file “192.168.0.X.zone”; }; 下面是位于 192.168.0.2 的 station2 的样例配置文件 /etc/named.conf options {directory “/var/named”;forwarders {192.168.0.254; };};zone “.” { file “named.ca”;};zone &localhost& IN { file &localhost.zone&;};zone &0.0.127.in-addr.arpa& IN { file &named.local&;};zone “domain2.exmaple.com” { file “domain2.example.com.zone”;};zone “2.0.168.192.in-addr.arpa” { file “192.168.0.2.zone”;};F. 数据库文件 您的主要配置文件指定了/var/named 为数据库所在的目录。您现在必须在这个目录下面为您区域和反查区域建立数据库文 件。这些数据库文件包括您的 SOA,NS,A,CNAME,MX,PTR 和其他的可能的记录。所有的数据文件以如下的行开头:$TTL 86400该数值是缺省的以秒计的生存期间,该数值对所有在该域中的记录有效1. 区域“domainX.example.com” 在主配置文件中,区域“domainX.example.com”数据库文件被存放在/var/named/domainX.example.com。这个文件含有类 似的如下的记录开始授权记录@ IN SOA stationX.domainX.example.com. root.stationX.domainX.example.com. ( ; Serial 28800 ;Refresh 14400 ;Retry 3600000 ;Expire 0) ;Negative “开始授权” (SOA)记录是数据库文件的第一个资源记录,但是它可能带了一个前导符$TTL (缺省存活时间)。SOA 记录使得数据库文件称为该区域的授权的信息源。第一个标记是后 继记录适合的域, 通常以 “@” 简化形式出现, 如果扩展开来那就是在 named.conf 文件中 “zone” 节中所指明的域名(或者是在文件通过$ORIGIN 定义的当前区域,如果该定义存在的话)。 第四个标记使该域的主域名服务器,第五个是负责维护这个数据库的系统管理员的电子邮件的地址,注意第一个分隔符替 换了第一个标记的@符号(你能解释为什么吗?)。接下来在记录中的条目指定了交互解析域名服务器的动态特性。域名服务器记录@ IN NS stationX.domainX.example.com.域名服务器(NS)标识了主机作为特定域的授权的域名服务器。他们对于这个区域指定了主和从服务器和代表授权的子域 的其他的服务器(例如,server1.example.com 对于所有 domainX.example.com 的域名服务器有一个 NS 记录)。正如您对 于“domainX.example.com”只能有一个单一的域名服务器,您也只能有一个单一的 NS 记录。地址记录domainX.example.com IN A 192.168.0.XstationX.domainX.example.com IN A 192.168.0.X www IN A 192.168.0.X ftp IN A 192.168.0.X pop IN A 192.168.0.X地址(A)记录将主机名称映射到 IP 地址(域名服务器的主要功能)。一个数据库文件通常包含 A 记录对应着许多 IP 地址。 然而在我们的教室的环境里,在您的区域里面只有一台主机。注意第一个 A 记录设定了域的“缺省的 IP 地址”。接下来的 A 记录建立了多个主机名称对应一个 IP 地址。主机名称可以是一个完全符合标准的名称(FQDN),也可以是一个缩写。所有的不以点号结尾的主机名称都将被视为缩写, 并且区域名称被附加到主机名称的后面。例如,第三个 A 记录就是主机名称 www.domainX.example.com.规范名称(别名)记录www1 IN CNAME stationX.domainX.example.com. www2 IN CNAME stationX.domainX.example.com. www3 IN CNAME stationX.domainX.example.com.别名(CNAME)记录建立了主机名称的别名。注意到别名映射到主机名称而不是 IP 地址。CNAME 不应该出现在右边的数据区域作为真实的主机名称,对于多重别名的解析的速度会很慢。邮件交换记录@ IN MX 10 stationX.domainX.example.com. domainX.example.com IN MX 10 stationX.domainX.example.com.邮件交换记录(MX)记录了一个主机它将会处理给定的域或者主机邮件的转发。当一个邮件传递代理(MTA)试图投递信件 的时候,它将首先试图在 DNS 中查找目的主机的 MX 记录。如果该 MX 记录存在,那么将直接发送到 MX 记录指定的主机。反 之,如果不存在 MX 记录,MTA 对于目的主机进行标准的 DNS 查询,并且直接投递到该主机上去。MX 记录用来建立邮件的网 关,和作为缺省的对于域的邮件的目的地。2. 区域“X.0.168.192.in-addr.arpa”在/etc/named.conf 中,我们指定了/var/named/192.168.0.X.zone 作为区域 X.0.168.192.in-addr.arpa 的反查区域数据 库文件。他应该包含 SOA 记录,NS 记录,和对应的 PTR 记录。开始授权记录@ IN SOA stationX.domainX.example.com. root.stationX.domainX.example.com. ( 4; 10800; 3600; 604800; 86400) IN NS stationX.domainX.example.com. SOA 和 NS 记录与前面的区域文件中的名称应该相同。注意在 NS 记录开头的空白的地方是非常特别的,并且被解释为“和上一条记录相同”的缩写。在本例中,上一条记录为符 号“@”,其本身就是在主配置文件中定义的域名的缩写。指针记录X.0.168.192.IN-ADDR.ARPA. IN PTR stationX.domainX.example.com.指针(PTR)记录通过间接的机制将名称映射到 IP 地址。作为分离的技术来进行 IP 地址的反 查询的替代,BIND 采用了一种修改的对于特定主机名称的正向查询的方式。这种“反向域名 查询”以反转的 IP 地址后面添加“in-addr.arpa”域的形式出现。这将允许域名服务器使用 相同的机制进行正反两方面的查询。3. 把他们放在一起下面是位于 192.168.0.2 的 station2 的样例配置文件:/var/named/domain2.example.com.zone $TTL 86400@ IN SOA station2.domain2.example.com. root.station2.domain2.example.com. ( ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 0) ; Negative @ IN NS station2.domain2.example.com. @ IN A 192.168.0.2station2.domain2.example.com. IN A 192.168.0.2www IN A 192.168.0.2ftp IN A 192.168.0.2pop IN A 192.168.0.2www1 IN CNAME station2.domain2.example.com.www2 IN CNAME station2.domain2.example.com.www3 IN CNAME station2.domain2.example.com.@ IN MX 10 station2.domain2.example.com.station2 IN MX 10 station2.domain2.example.com./var/named/192.168.0.2.zone $TTL 86400@ IN SOA station2.domain2.example.com. root.station2.domain2.example.com. (4
00) IN NS station2.domain2.example.com.2.0.168.192.IN-ADDR.ARPA. IN PTR station2.domain2.example.com.C. 重新启动域名服务器再一次,我们将重新启动域名服务器。然后通过运行 pidof 命令来确定其被运行:service named restart pidof named查看一下服务器添加到/var/log/messages 文件中的条目。确定您的域名在调入的时候没有 发生错误。如果您已经有一个域名服务器在运行并且不想重新启动它,您可以使用 service named reload 来重新装入配置文件,这样 子对于停止和启动服务器而言都比较快。D. 测试域名服务器进行如下 DNS 查询,您能够解释所有的结果么?host stationX dig stationX.example.com dig stationX.example.com @192.168.0.254 dig stationX.example.com host server1.example.com host 192.168.0.X dig Cx 192.168.0.X dig Cx 192.168.0.254 host www host www1记住 dig 期望给与一个 FQDN 作为查询,然而 host 则通过查看位于文件/etc/resolv.conf 的查询信息。试着在别的人的域 名服务器和子域上进行附加的查询。如果设定正确,您将能够在其他教室系统上进行正向和反向查询。挑战性的项目 通过增加多个“A”记录使得一个主机名称对应着不同的 IP 地址来配置一个“轮转”的主机名称。域名服务器该如何处理 这种情况?提示: 试图尝试设定这些的 A 记录的 TTL 为 0。在您的域中增加子域“support.somainX.example.com”。增加合适的资源记录使得它能够反向指向您的 IP 地址。与另一台工作站合作,成为另一台工作站的从域名服务器,在您的区域中为您的工作站增加一个新的 CNAME,确保这个改变 能够传播到从服务器。收尾工作 接下来的试验就较为简单了,一旦您重新启动您的工作站,所有的 DNS 查询将会重新设定到教室中的服务器上。为了确保 收尾,确保您重新设定/etc/resolve.conf 到其初始的状态。/etc/resolv.conf search example.comnameserver 192.168.0.254/etc/hosts 127.0.0.1 localhost localhost.localdomain localhost192.168.0.X stationX.example.com(如果您关闭后启动 eth0 接口,DHCP 将会自动为您设定配置文件)试验 3 Samba 服务 估计时间: 1 个小时 目标: 使用 samba 共享用户认证和文件系统 试验的起点: 标准的 Red Hat Linux 安装将数据包过滤设定为无效状态。在本次试验开始之前,请您确保您的主机上的所有包过滤已被关闭。缺省的安装将会有一 个文件叫做“/etc/sysconfig/iptables”,该文件配置了 iptable 的功能。运行“chkconfig iptables off”。为了去除 空间中所有的规则,运行“service iptables stop”步骤 1:Samba 的用户连接的配置任务1. 安装 samba,samba-common 和 samba-client RPM 软件包并且启动 smb 服务。一个缺省的配置将会被应用. 使用如下的命 令确定 Samba 是在正确的工作:smbclient CL localhost CN您可以从服务器获得回应,但是并不代表文件共享可用。(确保 smbd 在运行,否则该命令无法工作) 2.在您的系统中增加几个用户(karl,joe,mary 和 jen),但是并不给他们设定密码。这些用户仅能够从 samba 服务访问 服务器。为了使得他们在 shadow 中不含有密码,这些用户的 shell 应该设定为/sbin/nologin3.缺省的 samaba 是被配置用来接收加密的密码的,但是在文件/etc/samba/smbpasswd 中没有设定任何密码。如果加密的 密码在/etc/samba/smb.conf 被设定,smbclient 将发送加密的密码,所以为了在您的系统上测试 samba 服务,您应该首先 建立 smbpasswd 文件,然后为每一个用户在该文件中添加密码。4.注意到第一个在/etc/samba/smb.conf 设定的共享[home]并没有指定路径。该共享被配置用来当用户连接并且认证通过 以后共享用户的 home 目录。浏览一个或者两个用户的 home 目录。上传一个文件到 joe 的 home 目录。可用的结果 一个工作的 samba 服务可以被多个用户通过 smbclient 访问。步骤 2: 提供给组目录访问的权限场景/故事为了使得我们的四个用户除了有他们自己的在服务器上的共享,我们这四位用户同时在同一个部门工作并且需要一个地方 来存储部门的文件。我们将需要一个 Linux 用户组,建立一个目录给这些用户来存储它们的内容,并且配置 samba 服务器 来共享目录。任务1. 建立一个对于拥有 gid 为 30000 的用户叫做 legal 的新组并且使用 usermod 命令将这些用户加到组里去。2. 建立一个目录/home/depts/legal。对于这个目录设定拥有权限,使得在 legal 组中的用户可以在这个目录中添加/删 除文件,然而其他的人不可以。并且设定 SGID 和粘滞位使得所有在这个目中建立的文件都拥有同 legal 组的权限并且组中 其他的的人不能够删除该用户建立的文件。3. 在/etc/samba/smb.conf 中建立一个 samba 共享叫做[legal]。只有 legal 组中的用户才能够访问该共享。并且确保在 [legal]中存放的文件的被建立的许可权限为 0600。4. 重新启动 smb 服务并且使用 smbclient;来进行测试。可用的结果1. 只有 lagal 组能够访问和使用一个 Linux 目录。 2. 一个 samba 共享只有 legal 组的用户能够访问并且编辑步骤 3:为打印机提供访问场景/故事在 samba 中除了可以共享文件以外,另外一个重要的功能就是提供共享打印队列,该打印队列已经在您的 Linux 机器上定 义。实际上,缺省的,所有在 Linux 机器上配置的打印队列通过[printers]共享到网络上去。在该步骤中,您将建立一个 打印队列,通过 samba 服务器进行共享。然后通过 smbclient 来查看共享的打印机。任务1. 使用 redhat-config-printer 建立一个新的打印队列。把打印队列命名为 printerX(其中 X 为您的工作站的号码)。 配置打印机到本地连接的打印机/dev/lp0。配置打印队列确保任何递交的打印作业将保留在队列中。不要忘记重新启动 samba 服务器。 2. 通过 smbclient 来连接 samba 服务器上共享的 printerX。使用 print 命令来递交打印作业到队列中去。检查作业已排 队否。可用的结果1. 一个定义的 Linux 打印队列 printerX 2. 一个 Samba 服务器允许授权的用户打印到共享打印机 printerX挑战 1:安全和备份 Samba/SMB现在所有的东西都可以运行了,我们应该考虑在 Samba 服务器上的网络安全和数据的可靠性了。任务1. 定义并且保护对于 samba 服务器而言合法的连接。在文件/etc/samba/smb.conf 中使用 hosts allow 参数来确定所有教 室里的子网和本地回环子网。 2. 使用 testparm 测试/etc/samba/smb.conf 的语法。这个是否显示出一些应该考虑的安全上的漏洞呢? 3. 对您的邻居的[legal] 共享进行备份。通过用户 karl 的帐户建立一个共享的数据打包,使用或者 smbtar 命令或者 smbclient 的-T 选项。可用的结果1.samba 服务器能够识别来自允许的子网或者主机的连接 2.一个 SMB 或者 Samba 共享的备份数据打包一种解决方案 步骤 1l rpm Civh ftp://server1.exmaple.com/pub/RedHat/RPMS/samba-c* rpm Civh ftp://server1.exmaple.com/pub/RedHat/RPMS/samba-2* service smb start smbclient CL localhost CNl useradd Cs /bin/false karl useradd Cs /bin/false joe useradd Cs /bin/false mary useradd Cs /bin/false jenl smbpasswd Ca karl smbpasswd Ca joe smbpasswd Ca mary smbpasswd Ca jen l smbclient //localhost/joe CU joe 您应该看到 smb:\&提示符 put /etc/hosts hosts步骤 2l groupadd Cg 30000 legal usermod CG legal karl usermod CG legal joe usermod CG legal mary usermod CG legal jenl mkdir Cp /home/depts/legal chgrp legal /home/depts/legal chmod 3770 /home/depts/legall 在文件/etc/samba/smb.conf 文件中,共享定义部分: [legal] commnet = Legal’s files path = /home/depts/legal public = no write list = @legal create mask =0660l service smb restart步骤 3:l redhat-config-printer l service smb restart l smbclient //localhost/printerX Cu joe复习问题 1. 在 ftp 和 smbclient 之间有什么相同的地方?您使用 ftp 的时候永什么命令进行上传?ftp 和 smbclient 之间上传操作 之间有什么不同。2. 命令 nmblookup \*的作用是什么3. smbtar 命令是干什么的?4. testparm /etc/samba/smb.conf 33.44.55.66 是做什么用的?5. 使用 smbmount 命令该使用什么语法? 试验 4 电子邮件 估计时间: 2 个小时 目标: 建立基本的 MTA 的配置的技能 试验的起点: 标准的 Red Hat Linux 安装指导教师:确保在 Server1 上的 sednmail.mc 文件中的 DAEMON_OPTIONS 被注释并且重新编译 sendmail.cf 文件使得能构接 受来自其他主机的电子邮件。 介绍 本次实验作为一个安装和配置 MTA 的介绍。在介绍中我们将提及 sendmail 和 postfix。您可以选择任何一个 MTA,如果时 间允许,您两个都可以做一下试验。在接下来的步骤中,您将 安装并且验证 sendmail 的“发件箱” 为您的 sendmail 的按渣添加新的别名 使用 m4 工具来改变您的转发行为 安装 POP3 服务器并且配置 POP 客户端在整个试验中,主机和域名取决于您的机器的 IP 地址。如果下面的试验出现了 X 字样的名称,您应该把 X 字样的名称替换 成您的工作站的号码(您的 IP 地址的最后一个部分)。例如,如果您的工作站的 IP 的地址是 192.168.0.2,您应该将 stationX.domainX.example.com 转换成 station2.domain2.example.com。将数据包过滤设定为无效状态。在本次试验开始之前,请您确保您的主机上的所有包过滤已被关闭(显然,在实际使用中 您可以利用 Linux 内核的防火墙机制,然而我们在这里关掉它是为了减少潜在的问题)。 本次试验中以 root 身份来使用下面命令达成上面的要求: service iptables stop chkconfig iptables off初始化安装-安装必要的软件包 下列软件包对于 sendmail 是必需的: sendmail,sendmail-cf,sendmail-doc,m4 和 procmail。 对于 postfix 而言, 您需要: postfix。如果需要他们,从 CD 上进行检视和安装,server1 的 NFS 安装点,从: ftp://server1/pub/RedHat/RPMS/步骤 1:配置 MTA 来收取邮件为了安全的原因,sendmail 和 postfix 的缺省的配置允许发邮件但是不允许从网络上接收邮件(缺省的它们只接受从回环 接口上的连接)。按照如下配置您选择的 MTA 使得它接受传入的连接:1.对于 sendmail: 修改 /etc/mail/sendmail.mc 使用 dnl 注释在下面的行之前,就象这样: dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')2.将您的 sendmail.cf 文件做一个备份: cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.orig3.在同一个目录下,编译 sendmail.cfm4 /etc/mail/sendmail.mc & /etc/mail/sendmail.cf 4.重新启动 sendmail,通过 service sendmail restart对于 postfix:修改/etc/postfix/main.cfA.找到并注释如下行inet_interfaces = localhostB.取消注释该行: inet_interfaces = allC. 保存文件并且进行到步骤 2 的结束的地方。找到和上面一样的对应于 postfix 的配置的地方。步骤 2: 启动和校验 MTA 操作对于 sendmail: 有几个步骤您应该采用,以确保 sendmail 被正确安装。A.确信 sendmail 已经被在适当的运行级别上运行检查您的 sendmail 被适当的配置且能够在重新启动以后其能够运行。使用 chkconfig 是比较方便的。chkconfig -Clist sendmail sendmail 0:off 1:off 2:on 3:on 4:on 5:on 6:off如果 sendmail 在标准的用户运行级别时无效,使用 chkconfig, ntsysv 或者 serviceconf 之类的工具来激活服务。B.确定 sendmail 没有在启动的时候出现错误Red Hat Linux 安装的时候使用提供的 syslog 工具来记录所有的信息到文件/var/log/maillog 中去。检查此文件中的最后 出现“starting”的地方以确保 sendmail 在启动的时候没有任何错误。sendmail 可执行文件位于/usr/sbin/sendmail。 为了确定 sendmail 是否正确标识您的主机名称, 通过命令行开关开启其调 试模式并且设定为 0:sendmail Cd0 & /dev/null Version 8.11.6 Compiled with: LDAPMAP MAP_REGEX LOG MATCHGECOS MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS QUEUE SASL SCANF SMTP TCPWRAPPERS USERDB============ SYSTEM IDENTITY (after readcf) ============ (short domain name) $w = station2 (canonical domain name) $j = station2.example.com (subdomain name) $m = station2 (node name) $k = station2.example.com ========================================================Recipient names must be specified如果 sendmail 返回您的主机名称为 localhost,您可能错误配置了/etc/hosts 文件。检查您的/etc/hosts 文件,删除所有 的但记住留下 localhost 的指向。 如果/etc/hosts 文件是正确的, 那么检查一下在/etc/sysconfig/netwoek 中的 HOSTNAME 的定义。试图向 root@server1 发送简单的邮件。您可以看到一个合理的您的主机的转发服务器的 SMTP 交换。echo “hello root” | mail Cv Cs hello root@server1root@server1... Connecting to [127.0.0.1] via relay... 220 localhost.localdomain ESMTP Sendmail 8.12.8/8.12.8; Mon, 22 Sep :24 +0800 &&& EHLO localhost.localdomain 250-localhost.localdomain Hello station1 [127.0.0.1], pleased to meet you ... &&& MAIL From:&root@localhost.localdomain& SIZE=52 AUTH=root@localhost.localdomain 250 2.1.0 &root@localhost.localdomain&... Sender ok &&& RCPT To:&root@server1& &&& DATA 250 2.1.5 &root@server1&... Recipient ok 354 Enter mail, end with &.& on a line by itself &&& . 250 2.0.0 h8M6TOU5026513 Message accepted for delivery root@192.168.241.182... Sent (h8M6TOU5026513 Message accepted for delivery) Closing connection to [127.0.0.1] &&& QUIT 221 2.0.0 localhost.localdomain closing connection如果 SMTP 交换向上面一样正确,那么消息将被转发到您的工作站上的本地的转发服务器上,并且 mailq CAc 将会报告一 个空的对列。接下来检查 mail(不使用参数)来检查一下消息是否从本地的转发到 server1。这样对列也应该是空的。您的消息是不是在/var/log/maillog 中正确的记录呢?在下面的步骤中,监视文件/var/log/maillog。下面的命令将会十 分的有用:xterm Ce tail Cf /var/log/maillog &对于 postfix: A.运行‘service sendmail stop’,接下来使用 redhat-switch-mail 使得 postfix 成为活跃的 MTA。您也可以使用如下的 命令行:alternatives Cset mta /usr/sbin/sendmail.postfixB.确保 postfix 在合适的运行级别有效:chkconfig -Clist postfix postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:offC.确定 hostname 命令正确的返回您的主机名称。应该是您的 FQDN。如果 sendmail 返回您的主机名称为 localhost,您可能错误配置了/etc/hosts 文件。检查您的/etc/hosts 文件,删除所有 的但记住留下 localhost 的指向, 然后再试一遍。 如果/etc/hosts 文件是正确的, 那么检查一下在/etc/sysconfig/netwoek 中的 HOSTNAME 的定义。当这些值都正确的时候,启动 postfix 服务。D.确定 postfix 在启动的时候没有错误和 sendmail 一样,Red Hat Linux 的安装使用提供的 syslog 工具来记录所有的信息到文件/var/log/maillog 中去。检查 此文件中的最后查找任何错误信息。试图向 root@server1 发送简单的邮件并且检查/var/log/maillog 的记录文件 mail Cs `echo $USER` root@server1 & /etc/redhat-release应该如下所示: Sep 22 02:51:50 station1 postfix/pickup[2865]: A20ED348389: uid=0 from=&root& Sep 22 02:51:50 station1 postfix/cleanup[3534]: A20ED348389: message-id=&8389@station1.example.com& Sep 22 02:51:50 station1 postfix/nqmgr[2866]: A20ED348389: from=&root@station1.e xample.com&, size=341, nrcpt=1 (queue active) Sep 22 02:51:51 station1 postfix/smtp[3536]: A20ED348389: to=&root@192.168.241.1 82&, relay=192.168.241.182[192.168.241.182], delay=1, status=sent (250 Message q ueued)步骤 3:添加新的别名对于 sendmail:在 sendmail 决定消息的接受者的目的地的之前, 其先试图在别名中查找。 sendmail 的主要的别名配置文件是/etc/aliases。 为了优化查找, sendmail 为其别名记录建立了一个哈希表数据库/etc/aliases.db.该文件通过 newalias 命令产生 (该命令 是 sendmail Cbi 的同名)下列命令将增加用户 student(如果不存在的话) useradd student在/etc/aliases 行加入如下的行:me: student wizards: root, me methere: student@stationX.example.com现在运行 newalias 命令来更新数据库,尝试发送邮件给您定义的收件人:newalias echo “hello there” | mail Cs “hello” me echo “hello there” | mail Cs “hello” wizards echo “hello there” | mail Cs “hello” methere您是否得到了期望的结果?是否所有的位于 wizards 的收件人都受到了邮件?如果没有,su C 到不是 root 的用户再试一 次。在 postfix 决定消息的接受者的目的地的之前,其先试图在别名中查找。postfix 的主要的别名配置文件是 /etc/postfix/aliases。 为了优化查找, postfix 为其别名记录建立了一个哈希表别名数据库/etc/postfix/aliases.db (和 sendmail 类似).该文件通过 newalias 命令产生。下列命令将增加用户 student(如果不存在的话)useradd student在/etc/postfix/aliases 行加入如下的行: 注意:注释 root 别名的那一行为 postfixme: student wizards: root, me methere: student@stationX.example.com现在运行 newalias 命令来更新数据库,尝试发送邮件给您定义的收件人:newalias echo “hello there” | mail Cs “hello” me echo “hello there” | mail Cs “hello” wizards echo “hello there” | mail Cs “hello” methere您是否得到了期望的结果?是否所有的位于 wizards 的收件人都受到了邮件?步骤 4.控制转发 转发允许邮件通过使用中间的“转发”及其传递到其目的地。尽管这个功能曾经有用,但是转发已经成为 Internet 上垃圾 邮件的源泉了。人们希望发送主动提供的的邮件的时候希望使用转发机制,从而使得邮件发源地很难被侦测出来。下列步骤将使用下面的主机。替换 X,Y 和 Z 为适合的工作站的号码:stationX:源机器,邮件从这里发出 stationY:转发机器,这里邮件从发送者送出 stationZ:目的机器,邮件的最终目的该步骤假设您是 stationX,转发机器, 与某人的 stationY 合作, 该机器为邮件的源头。 在该步骤中, 注意/var/log/maillog 的变化。下列命令将会显得十分的有用。对于 sendmail 步骤 A:允许转发您具有控制允许谁在您的机器上转发的能力。通过控制您的机器的混杂转发,您可以使得任何人都能够将您的机器作为转 发的主机。(我们对于这种的尝试表示反对,也希望通过该实验显示出其缺陷)。配置/etc/mail/sendmail.mc, 通过加入 如下行使得 m4 前置处理器允许混杂转发:/etc/mail/sendmail.mc (…其他的内容…)FEATURE(promiscuous_relay)dnl使用 m4 前置处理机通过这个模板文件生成一个新的 sendmail 配置文件,然后将新生成的文件与通过 sendmail RPM 软件包 提供的进行比较m4 /etc/mail/sendmail.mc & /etc/mail/sendmail.test-relay diff /etc/mail/sendmail.test-relay /etc/mail/sendmail.cf使用混杂转发以后会有多大的不同呢?现在将新建立的 sendmail.test 放置在恰当的位置上,重新启动 sendmail.mv /etc/mail/sendmail.cf /etc/mail/sendmail.cf.accept-mail cp /etc/mail/sendmail.test-relay /etc/mail/sendmail.cf service sendmail restart让您的伙伴扮演恶意的垃圾邮件的发送者,该人能够通过 telnet 到您的机器上的 smtp(sendmail)的 25 号断口,进行垃圾 邮件发送地址的欺骗,在 stationY 键入如下命令:这个例子对于 stationY(源机器)=station2,并且 stationX(转发,在这里目的机器)=station1[root@station1 root]# telnet station1 25 Trying station1.example.com... Connected to station1.example.com (station1.example.com). Escape character is '^]'. 220 station1.example.com (IMail 8.00 8-1) NT-ESMTP Server X1 helo mail.cracker.org 250 hello station1.example.com mail from: spammer@cracker.org 250 ok rcpt to:root@station1.example.com 250 ok its for &root@mailgrid.ods.org& data 354 ok, end with &CRLF&.&CRLF& Subject: Faked this was faked! . 250 Message queued quit 221 Goodbye Connection closed by foreign host.垃圾邮件现在送到您的机器上了。下一步,看看您的伙伴能不能从您的机器转发给第三台机器:这个例子对于 stationY(源机器)=station2,并且 stationX(转发, 在这里目的机器)=station1, 并且 stationZ(目的机器) =station3[root@station1 root]# telnet station1 25 Trying station1.example.com... Connected to station1.example.com (station1.example.com). Escape character is '^]'. 220 station1.example.com (IMail 8.00 9-1) NT-ESMTP Server X1 helo mail.craker.org 250 hello station1.example.com mail from: spammer@craker.org 250 ok rcpt to root@station3.example.com 250 ok its for &root@station3.example.com & data 354 ok, end with &CRLF&.&CRLF& Subject: Relayed this was faked any relayed! . 250 Message queued quit 221 Goodbye Connection closed by foreign host. 由于您的机器已经被配置成为允许混杂转发,垃圾邮件可以通过您的机器进行邮件转发。对于 postfix:您具有控制允许谁在您的机器上转发的能力。缺省的 postfix 允许在子网上的任何人通过您的机器进行转发。胆汁并不是 在每一个环境中都安全的。例如,您的机器和其他机器在一起,如果您的本地子网里有一台机器被其他人控制,那么其他 的机器都会有麻烦。让您的伙伴扮演恶意的垃圾邮件的发送者,该人能够通过 telnet 到您的机器上的 postfix 的 25 号断口,进行垃圾邮件发 送地址的欺骗,在 stationY 键入如下命令:[root@station1 root]# telnet station1 25 Trying 127.0.0.1... Connected to station1 (127.0.0.1). Escape character is '^]'. 220 station1.example.com ESMTP Postfix helo mail.craker.org 250 station1.example.com mail from:spammer@craker.org 250 Ok rcpt to: root@station1.example.com 250 Ok data 354 End data with &CR&&LF&.&CR&&LF& Subject: Faked this was faked! . 250 Ok: queued as 4FFA2348389 quit 221 Bye Connection closed by foreign host.垃圾邮件现在送到您的机器上了。下一步,看看您的伙伴能不能从您的机器转发给第三台机器:这个例子对于 stationY(源机器)=station2,并且 stationX(转发, 在这里目的机器)=station1, 并且 stationZ(目的机器) =station3[root@station1 root]# telnet station1 25 Trying 127.0.0.1... Connected to station1 (127.0.0.1). Escape character is '^]'. 220 station1.example.com ESMTP Postfix helo mail.craker.org 250 station1.example.com mail from: spammer@cracker.org 250 Ok rcpt to: root@station3.example.com 250 Ok data 354 End data with &CR&&LF&.&CR&&LF& subject: Relayed this was faked and relayed! . 250 Ok: queued as 69C7B348389 quit 221 Bye Connection closed by foreign host.由于您的机器已经被配置成为允许混杂转发,垃圾邮件可以通过您的机器进行邮件转发。步骤 B:不允许转发对于 sendmail通过替换新的 sendmail.cf 为接受传入的信件的配置文件来恢复缺省的 sendmail 的配置,并且重新启动 sendmail:mv /etc/mail/sendmail.cf.accept-mail /etc/mail/sendmail.cf service sendmail restart让您的伙伴再从 stationY 转发垃圾邮件。您的 sendmail 还是一个转发器么?任何一个转发的都会产生如下的消息:550 root@station3.example.com .. Relaying denied对于 postfix编辑文件/etc/postfix/main.cf 取消转发。查找并且取消注释下面的行,并且重新启动 postfixmynetworks_style = host让您的伙伴再从 stationY 转发垃圾邮件。您的 postfix 还是一个转发器么?任何一个转发的都会产生如下的消息:554 &root@station3.example.com&: Recipient address rejected: Relay access denied步骤 C:选择性的转发对于 sendmail 对于特定的主机,域或者网络,编辑/etc/mail/access 并且重新启动 sendmail。为了允许所有在 example.com 域中的机器 可以把您的机器作为邮件转发服务器, 你在/etc/mail/acces 中添加如 example.com 域。 和您的伙伴使用场景 A 中的命令进 行测试。对于 postfix对于特定的主机,域或者网络,编辑/etc/postfix/main.cf 并且重新启动 postfix。对于特定的主机允许通过您的机器进 行转发,找到并且取消注释该行:mynetworks_style = host然后添加新行来允许转发的主机和网络,在这里允许 station1 和本地转发mynetworks = 192.168.0.1, 127.0.0.0/8和您的伙伴使用场景 A 中的命令进行测试。步骤 5:安装 POP3 服务器和客户端在这个步骤中, 你将配制您的机器 stationX 作为邮件的 POP3 服务器, 使得您的在 stationY 的伙伴扮演 POP 客户端的角色。步骤 A:安装 POP3 服务器配置一个 POP3 服务器比较简单,只需要两个步骤:l 安装相关的 RPM 软件包 l 在 xinetd 中允许服务安装相关的 RPM 软件包 POP 守护进程和其他的具有相同功能的守护进程, 例如 IMAP 守护进程绑定在软件包 imap 中。 再如 xinetd,krb5-libs*和 imap 软件包来检查 imap 软件包含有什么软件。三个守护进程被包括进来:imapd,ipop2d 和 ipop3d。POP3 被用在很多 Internet 服务提供商,POP2 提供是为了向后兼容。 IMAP 守护进程提供了根加复杂的能力,包括了在服务器端的文件夹的管理。在 xinetd 中允许服务对于本实验,我们仅选定 POP3 服务。ipop3d 通过 xinetd 在请求的时候被启动。为了激活,运行下面的命令:service xinetd start chkconfig ipop3 on 查看一下/etc/xinetd.d/ipop3。显式的重新启动 xinetd 并不是必需的,由于 chkconfig 发送给 xinetd 一个 USR2 信号告 诉他重新调入其配置。确认服务运行下面的命令确认服务已经被正确的安装。下面的命令只是一个指导:echo “mail to be poped” | mail Cs “Hello student” student[root@station1 root]# telnet localhost 110 Trying 127.0.0.1... Connected to station1 (127.0.0.1). +OK POP3 station1 v2001.78rh server ready USER student +OK User name accepted, password please PASS student +OK Mailbox open, 1 messages STAT +OK 1 440 TOP 1 99999 +OK Top of message follows Return-Path: &root@station1.example.com& Delivered-To: student@station1.example.com Received: by station1.example.com (Postfix, from userid 0) id ; Mon, 22 Sep :27 -0400 (EDT) To: student@station1.example.com Subject: Hello student Message-Id: &27.@station1.example.com& Date: Mon, 22 Sep :27 -0400 (EDT) From: root@station1.example.com (root) Status:mail to be poped . DELE 1 +OK Message deleted QUIT +OK Sayonara Connection closed by foreign host.如果一切顺利的话,您现在有一个安装好的 POP 服务器了。步骤 B :使用 POP 客户端 所有的现在的邮件用户代理(MUA),例如 netscape,elm,Outlook,pine 和 mutt 都是使用 POP 的,可以被用作 POP 的客户 端。每一个的配置都有所不同。同样有一个流行字符界面的的 POP 客户端叫做 fetchmail。fetchmail 是高度的可配置的, 可以查询多个邮箱,可以作为守护进程运行,这样使得其每五分钟查询用户的邮箱。fetchmail 在主机上递送邮件到邮件传 送代理(MTA),例如 sendmail。我们将勾画出以后如何安装 fetchmail 和使用其来查询我们装过的 POP 服务器。从 CD 或者从 ftp://server1/pub/RedHat/RPMS 来安装 fetchmail 软件包注意到有很多选项可以影响 fetchmail 的行为。建立一个~/.fetchmailrc 文件如下所示:~student/.fetchmailrc poll stationX.exmaple.com with protocol pop3: user studentXX there is user studentXX here password “password”由于密码存储在该文件中,因此 fetchmail 将会拒绝运行除非您把该文件的属性设定为对于仅仅文件的所有者只读。注意 还可以使用 chown 改变由 root 创建的文件的所有者为 studentXX。chmod 600 ~student/.fetchmailrc chown student.student ~student/.fetchmailrc尝试使用 studentXX 登陆到 POP3 邮箱echo “hello student” | mail Cs “Hola” student su C student fetchmail Cv exitfetchmail 能不能接收到 student 的 POP 邮件?将递送 student 的邮件到哪里?比从本地获取 POP 邮件有意义么?让您的伙伴在另外一台机器上建立相同的~/.fetchmailrc 文件(或者配置其它诸如 mozilla 的 MTA)试图从您的服务器上 进行收信。 复习的问题1.m4 宏语言提供给 sendmail 管理哪些东西?把所有的在 xyz.com 的用户邮件导向到本地用户 xzplogin 该使用什么语法? 该在什么文件的和处填上这句话?2. mailq 命令用来作什么?您如何使用?3. 当命令 sendmail Cq 发出以后,sendmail 将会试图仍在队列中等待的邮件。何时使用该命令是有用的?4. 如果去除 FEATURE(accept_unresolvable_domains)的注释将对垃圾邮件产生如何的影响?5. m4 有什么特征允许 sendmail 发送邮件作为整个域(例如,“example.com”)而不是完全的符合标准的主机名称(例 如,“mail.example.com”)? 6. 在 postfix 中 mynetworks_style 如何影响转发? 请您查看文件/etc/postfix/main.cf。7. 在文件/etc/postfix/access 中需要如何的活跃的变化? 试验 5 HTTP 服务 估计时间: 1 个小时 目标: 建立基本的拥有 CGI 的具有虚拟主机的 Web 服务器 试验的起点: 标准的 Red Hat Linux 安装在整个试验中,主机和域名取决于您的机器的 IP 地址。如果下面的试验出现了 X 字样的名称,您应该把 X 字样的名称替换 成您的工作站的号码(您的 IP 地址的最后一个部分)。例如,如果您的工作站的 IP 的地址是 192.168.0.3,您应该将 stationX.domainX.example.com 转换成 station3.domain3.example.com。将数据包过滤设定为无效状态。在本次试验开始之前,请您确保您的主机上的所有包过滤已被关闭。缺省的安装将会有一 个文件叫做“/etc/sysconfig/iptables”,该文件配置了 iptable 的功能。运行“chkconfig iptables off”。为了去除 空间中所有的规则,运行“service iptables stop”步骤 1:服务的安装和基本的配置场景/故事您的组织需在一个小时内要一个 Web 服务器,拥有充足的 CGI 的能力比国内且具有为不同的虚拟主机提供不同的内容服务。任务: 1. 需要如下的软件包:httpd 和 httpd-manual。如果需要的话,从 CD 或者 ftp://server1/pub/RedHat/RPMS 安装并...。 使用 chkconfig 来启动服务。 2. 启动 httpd 服务使用缺省的配置:service httpd restart 3. 检查在文件/etc/httpd/conf/httpd.conf 中的 DocumentRoot 项目和下面的一样 DocumentRoot /var/www/html 4. 开启一个 Web 浏览器并且设定 URL 到: http://stationX.example.com如果您的浏览器在工作,您将看到缺省的服务器的索引页面。注意该文件并不是所存储的 HTML 文件,而是服务器在这些目 录中没有缺省的 index.html 文件的时候自动生成的。5.建立一个新的目录层次和一些新的内容mkdir Cp /var/www/virtual/wwwX.example.com/html cd /var/www/virtual/wwwX.example.com/html cat & index.html &&EOF &b&wwwX.example.com&/b& EOF (这建立一个只有一行的 HTML 文件)6.在/etc/httpd/conf/httpd.conf 尾部加入以下几行:NameVirtualHost 192.168.0.X&VirtualHost 192.168.0.X& ServerName wwwX.example.com ServerAdmin webmaster@wwwX.example.com DocumentRoot /var/www/virtual/wwwX.example.com/html ErrorLog logs/wwwX.example.com-error_logCustomLog logs/wwwX.example.com-access_log combined&Directory /var/www/ virtual/wwwX.example.com/html& Options Indexes Includes&/Directory&&/VirtualHost&7.确保您的 DNS 系统哦功能能够解析您的虚拟主机的名称。 dig wwwX.example.com8. 重新启动 httpd: service httpd reload9.在您的 Web 浏览器并且设定 URL 到新的虚拟主机: http://wwwX.example.com 您看到您自己定义的页面了么?步骤 2:使用 CGI任务1. 在步骤 1 设定的 &VirtualHost& 块中增加一行: ScriptAlias /cgi-bin/ /var/www/virtual/wwwX.example.com/cgi-bin/ 以上仅为一行并且在 httpd.conf 中不换行,注意给上面的两个元素之间留出空格。2. 建立目录,然后在里面建立文件叫做 test.sh 包含以下内容: /var/www/virtual/wwwX.example.com/cgi-bin/test.sh #!/bin/bashecho Content-Type: text/echo echo “&pre&”echo My username is:whoamiechoecho My id is:idechoecho My shell setting are:setechoecho My environment variable are:envechoecho Here is /etc/passwdcat /etc/passwdecho “&/pre&”3.通过把您的浏览器指向下面的地址尝试执行该 CGI 脚本 http://wwwX.example.com/cgi-bin/test.sh为什么这个脚本不执行?检查日志文件/avr/log/httpd/获得信息来帮助你找到答案。(您是否计的重新启动或者重新载入 服务器?)4. 使得该脚本对于用户,组和其他可读并且可执行:chmod 555 test.sh 现在脚本能够执行麽?挑战 1:为您的 Web 站点的文档提供安全访问 任务:在 wwwX.example.com 的文档的根目录建立一个文件叫做.htaccess,并采用以下内容: /var/www/virtual/wwwX.example.com/html/.htaccess Authname “restricted stuff”AuthType BasicAuthUserFile /etc/httpd/conf/wwwXX.htpasswdrequire valid-user 2.建立您的域的密码文件。该文件必须被 apache 组可读。htpasswd Cmc /etc/httpd/conf/wwwX.htpasswd user_name chgrp apache /etc/httpd/conf/wwwX.htpasswd chmod g+r /etc/httpd/conf/wwwX.htpasswd3.访问 http://wwwX.example.com 页面,您是否...httpd 获得线索。4.添加下列行到服务器的配置文件 httpd.conf,在 wwwX.example.com 虚拟主机的&Directory& 块中增加一行:AllowOverride AuthConfig5.再次尝试访问 http://wwwX.example.com 页面,您是否...室趁娴娜ㄏ廾矗?/a&步骤 3:Squid 的基本配置1. 在您的系统上安装 squidrpm CUvh ftp://server1.example.com/pub/RedHat/RPMS/squid*2.开始服务(service squid start),然后配置您的浏览器使用您的 localhost 作为您的 Proxy 并且把端口设定为 3128。3.尝试访问一些主页。如果教师里面没有 Internet 可以访问,那么试图访问 http://server1.example.com,将会返回服务 器的测试页面。4. 现在使用您的邻居来吧您的主机当作 Proxy。这样子应该不能工作。 squid 返回的页面在/var/log/squid/access.log 文件的底部有所解释。 5.使用您喜欢的文本编辑器打开/etc/squid/squid.conf 文件。 正如您所看到的, 大部分是文档和注释。 您也该注意到 squid 是非常易于调校的。对于本实验,我们仅作简单的配置,熟悉了以后您将会适应更加复杂的配置。6.在文件中查找第二次出现 Recommend minimum configuration 的地方。您将会会看到缺省的存取控制列表(acl)。在 CONNECT method CONNECT 行的下面添加一个对于本地网络的存取访问列表项目:acl example src 192.168.0.0/24 对于这个配置您可以把它作为参考以应用到其他的任何地方。src 是该 acl 的源 IP 地址。 7.在文件中查找 INSERT YOUR RULE(S) HERE,在 localhost acl 的上面增加如下的内容:http_access allow example重新启动 squid。 您的邻居将能够访问您的 Web 缓存了。8.一些 URL 最好能够避免。返回到 acl 的部分,在您新添加行的下面(使用 example.com 如果您在教师里面没有 Internet 访问权限的话)acl otherguys dstdomain .yahoo.com acl otherguys dstdomain .hotmail.com这里有一些要提及的东西。首先,注意到 acl 的附加属性。第二注意到 dstdomain 的 acl 类型,指明了关心的目的域。第 三、注意到在域名前的点表示符号,确保加上点。9.增加一条拒绝访问规则应用到这些存在问题的域。返回到您刚在添加 allow 的地方,在其下面增加如下行:http_access deny otherguys再次重新启动 squid,再次检查这些相关的域,非常不幸,访问没有被拒绝。10.再次打开配置文件, 将您添加的拒绝规则放在 example 的允许规则之前。 也就是说, otherguys 拒绝规则之前的 example 在 允许规则使得访问被允许,但是拒绝没有被生效。在移动规则以后,重新启动 squid。这回它将禁止访问在任何上面禁止访 问的域内的站点了。复习的问题1.根据/var/www/manual 提及的服务器的手册。ServerAlias 是起到什么作用?2.根据/var/www/manual/suexec.html, suEXE 对于 CGI 进程拥有什么特性?3.下列命令起什么作用,何时使用它?httpd Ct4. 您是否对您的用户能够通过 CGI 脚本看到您的/etc/passwd 而感到不安?是否有方法阻止显示系统的密码文件?试验 6 NFS 和 FTP 估计时间: 1 个小时 目标: 管理和配置 vsftpd 和 NFS 试验的起点: 标准的 Red Hat Linux 安装 关掉包过滤: 在着手试验之前需要确认包过滤没有被激活, 默认情况下 iptables 会调用 /etc/sysconfig/iptables 这个配 置文件,删除或重命名这个文件,iptables 就会在下次启动时失效。或者使用命令 chkconfig iptables off 也行。如果 想让 iptables 立刻失效可以用命令 service iptables stop.步骤 1:使用 vsftpd 允许匿名用户上传 1. 需要以下包:vsftpd 。如果没有安装,从 CD 或者 ftp://server1/pub/RedHat/RPMS 安装。激活 vsftpd 服务2. Vsftpd 包提供了/var/ftp 作为匿名 ftp 用户的下载文件的目录。但是默认没有匿名上传的文件夹。要配置 vsftpd 来 允许匿名上传,首先要准备一个上传目录:cd /var/ftp mkdir incoming chown root.ftp incoming chmod 730 incoming现在检验一下新目录的权限: ls Cld /var/ftp/incoming3. 配置/etc/vsftpd/vsftpd.conf 文件中如下各行:anon_upload_enable = YES chown_uploads = YES chown_username = daemon anon_umask = 077 另外, 默认情况下 anonymous_enable = YES(允许匿名访问)已经被配置了 重启 vsftpd 服务4. 刚才配置的结果是使匿名用户可以上传文件到 /var/ftp/incoming 中,但是不能从这个文件夹中下载文件或者列出文 件(使用 ls 命令),这样可以防止“warez”之类的组织用我们的上传目录作为“drop box”来放盗版软件或数据。如果 希望匿名用户上传文件,应该让 /var/ftp/incoming 文件夹的所有者为 daemon 所有组为 ftp,并且权限为 600(只允许 deamon 用户读写)。步骤 2:NFS 任务:5. 需要如下的软件包: nfs-utils。 如果需要安装的话, 请从 CD 或者 ftp://server1/pub/RedHat/RPMS 安装并...及 nfslock 服务。6. 创建一个用户并且配置 NFS 共享他的主目录,共享给 example.com 读写权限。 a) 在配置 NFS 服务器之前,查看一下 RPC 服务是否在运行rpcinfo Cp showmount Ce localhost b) 创建一个测试用户useradd nfstestc) 编辑 /etc/exports 来共享 /home/nfstest 给 example.com。如果你不知道这个文件的格式,请查看 exports 的 man page。d) 安装 NFS 的软件包,配置 init 运行级别 3 到 5 启用 NFS 服务,但是因为启动时如果/etc/exports 文件丢失或者它的大 小为零, NFS 服务不会启动。所以,你现在要来手动启动它,下一次启动时 NFS 就会自动启动了。e) 观察 RPC 服务是否启动,看一看是否将/home/nfstest 用 nfs 共享出来了:rpcinfo Cp showmount Ce localhostf) 与一个或两个搭档相互 mount 对方的共享,然后再读取里面的内容,尝试用 root 和 nfstest 向其中写文件(如果你机 器上的 nfstest 用户的 UID 和 GID 与搭档机器上该用户的不同,则把它们改成一样的)。看一下会怎样?为什么会这样?试验 8 身份验证服务 估计时间: 45 分钟 目标: 培养有关身份验证的技巧 试验的起点: 标准的 Red Hat Linux 安装关掉包过滤: 在着手试验之前需要确认包过滤没有被激活, 默认情况下 iptables 会调用 /etc/sysconfig/iptables 这个配 置文件,删除或重命名这个文件,iptables 就会在下次启动时失效。或者使用命令 chkconfig iptables off 也行。如果 想让 iptables 立刻失效可以用命令 service iptables stop.步骤 1:使用 PAM 限制登陆的位置场景/故事您的系统中有高安全的内容。为了保证数据不被泄漏,你需要限制用户的访问,除了本地控制台,禁止任何其他方式访问 系统。任务: 1. 创建用户 bill,他是 user 组的成员,再创建一个用户 biff,他是 finance 组的成员 2. 编辑 /etc/security/access.conf 限定 finance 组的用户只能在第二个虚拟控制台登陆。为了达到这个目的,在这个 文件的最后一行添加:- : finance : ALL EXCEPT tty23. 通过编辑 /etc/pam.d/system-auth 来限制所有服务,把以下这行添加到以 auth 开头的所有行后: account required /lib/security/$ISA/pam_access.so4. 如果你的限定起了作用,bill 和 root 可以登陆到任何控制台,而 biff 只能在第二个虚拟控制台登陆5. 清理:你如果运行 authconfig 工具,以上的操作将会被删除,你怎样确认你的设置有没有变化呢?步骤 2:使用 NIS 做身份验证任务: 你应该与你旁边的人合作,然后决定谁做 NIS 的服务器端,谁做 NIS 的客户端,通过这个实验,你和你的同伴一起配置 NIS 的服务器端和客户端。你们要确定 NIS 的域名,还要注意每一个工作站的名字和 IP 地址,在开始以下的步骤之前,请确认 以上内容。 1. 配置 NIS 服务器a) 从 ftp://server1/pub/RedHat/RPMS 、 光盘安装 ypserv, ypbind, yptools 的 RPM 包或者将 server1 的 NFS 共享 mount 和 到/mnt/server1 上,从那里安装也可以。b) 编辑 /etc/sysconfig/network ,添加这样一行:NISDOMAIN = &你们的 NIS 域名&下次启动时才会起作用,设置了 NIS 域名之后不要重新启动,运行命令:domainname &你们的 NIS 域名&c) 先将 /var/yp/Makefile 文件 copy 一份作为备份,编辑 all 部分只包含 passwd 和 group:all: passwd groupd) 打开 portmap 服务和 ypserv 服务service portmap start service ypserv starte) 确保 make 包在你的系统中安装, (以下的命令是在 server1:/var/ftp/pub 已经被 mount 到/mnt/server1 后才能使用)rpm CUvh /mnt/server1/RedHat/RPMS/make*f) 使用 ypinit 产生 NIS 数据库(maps),注意可能出现的错误信息/usr/lib/yp/ypinit -m(注意:你不用在列表中添加任何主机,只要按 & CTRL - D & ) g) 启动 NIS password 升级进程service yppasswdd starth) 如果 ypinit 在第六步时没有错误,重新启动 ypserv 服务:service ypserv restarti) 使用 ps auxf | grep yp 确定 ypserv 服务运行,如果有错误的话查看日志 /var/log/messages 完成:正在正常工作的 NIS 服务器2. 配置 NIS 客户端到现在,任务只完成一半,你和你的同伴需要再配置这个 NIS 服务器的客户端。a) 在客户端,确认已经安装以下几个包:portmap,ypbind,yp-tools 和 authconfigb) 确认客户端可以看到服务器上的 portmap 服务rpcinfo Cp 你们的 NIS 服务器c) 使用 authconfig 工具配置你的客户端使用 NIS 进行身份验证,选定“Use NIS”,在“Domain:”后指定你的 NIS 域, 在“Server:”后指定你的 NIS 服务器。d) 确认 authconfig 正确工作,当 authconfig 完成后,它会自动开启 ypbind 服务,是否有出错信息出现在控制台上或者 /var/log/messages 中?e) 测试你的 NIS 客户端,使用 root 用户登陆你的客户端,root 用户是客户端上的 root 还是 NIS 服务器上的?测试 客户 端----服务器的连接,使用:ypcat passwd这样会显示出 NIS 服务器上的 password 数据,(请记住,只有在服务器上/etc/passwd 文件中 UID 大于等于 500 的用户才 会被放进数据库中)f) 使用 useradd 在客户端创建一个新的用户,然后在服务器端创建一个不同的用户,然后使用 passwd 设置他们的密码。(在客户端): useradd -u 1024 localguy passwd localguy(在服务器): useradd -u 1025 nisuser passwd nisuser g) 确认使用 localguy 能在本地登陆,nisuser 能在服务器上登陆。然后使用 nisuser 帐号在客户端上登陆,应该是不可以 的。h) 在服务器上的 /var/yp 目录,执行 make 命令,当命令完成,再使用 nisuser 从客户端上登陆,这回应该成功了,为什 么?i) 使用 passwd 改变 nisuser 的密码, 是否改变了服务器上的 /etc/passwd 和 /etc/shadow 文件?NIS 服务器中的文件是 否改变了呢?你可以使用如下命令测试:ypcat passwd | grep nisuserj) 使用 localguy 登陆到客户端,是不是即时 ypbind 在运行仍然可以登陆?k) 当你使用 nisuser 登陆到客户端时,你的主目录是什么?NIS 仅仅提供验证信息,不提供客户端和服务器端的文件共享 机制完成:一个从 NIS 服务器上获得得验证信息的客户机 步骤 3:限制 NIS 用户任务: 我们的客户端现在是公司 NIS 体系的一部分,因为他储存了秘密数据,不是所有的用户都可以访问这台机器,只有特定的 远程用户才能访问。1. 这个测试需要添加一个 NIS 用户,使用 useradd 命令添加一个名叫 baduser 的用户。useradd Cu 1026 baduser passwd baduser2. 一个解决方案是使用 pam_listfile,只允许 nisuser 访问我们的系统。打开 /etc/pam.d/system-auth ,紧接着 auth 开头的之后添加以下一行:account required /lib/security/pam_listfile.so item=user sense=allow file=/etc/nisusers onerr=fail3. 假如测试目前的设置, 你将会发现连 root 也不能登陆, 所以千万不要关掉 root 的 shell! 你要创建 /etc/nisusers 然 后把所有允许访问的用户添加到文件中,一行一个用户名,我们只想允许 nisuser 用户,所以我们的文件会非常短。4. 现在如果你想登录到文本控制台, 只有 nisuser 可以进入, 因为其他人不在文件中, root 添加到 /etc/nisusers 中。 把5. 我们的任务还是允许所有本地用户登陆的,我们可以把 passwd 文件中的用户都添加到我们的列表中,但这不是最好的 方法,我们可以使用 PAM 库中的 pam_localuser 来达到目的。添加以下这行到 pam_localuser.so 之后。account required /lib/security/pam_localuser.so 6. 测试这样的配置,你会发现仍然只有 root 可以登陆,为什么呢?7. 是因为 required 字段的关系,把上面添加的两行的 required 都改成 sufficient,现在好了吧?如果改成 requisite 会怎么样?8. 清理:再次运行 authconfig 工具,删除所有设置,并且禁用 NIS。 试验 9 系统监视 估计时间: 1 小时 15 分钟 目标: 使用查找文件的方法来保护系统 试验的起点: 标准的 Red Hat Linux 安装步骤 1:定位易被攻击的文件或目录场景/故事查找文件系统中易被攻击的文件或目录任务: 6. 查找有 SUID 和 SGID 的文件,并且把他们的名字存在 /root/stickyfiles 中:find / -type f -perm +6000 2& /dev/null & /root/stickyfiles7. 查找任何人都可以写入的文件,把它们的名字储存在 /root/worls.writalbe.files:find / -type f -perm -2 & /root/world.writalbe.files8. 看一下 /root/stickyfiles 和 /root/world.writable.files 有哪些文件步骤 2:使用 tripwire 监视文件系统的完整性场景/故事你决定使用 tripwire 来确认数据的完整性任务:9.使用 root 登陆并且安装 tripwire 的 RPM 包 (运行下面的这个命令之前需要把 server1 上的共享 mount 到 /mnt/server1 目录上):rpm CUvh /mnt/server1/RedHat/RPMS/tripwire*10. 看一下 tripwire 包中提供哪些文件和文档: rpm Cql tripwire11. 编辑 /etc/tripwire/twpol.txt 来定义你的主机策略文件。默认的策略文件是基于 Red Hat linux 的 everything 安 装,这样它就会试图监视你没有安装的文件。结果是会产生一些出错消息,这些消息可以忽略。最好的方法是删除所有你 没有安装的文件。你应该定义自己的策略,仔细看一下策略文件,删除其中你机器上没有的文件。即使是只删除一两个你没有的文件就要花 很长时间。现在来添加目前没有被监视的文件,添加 /etc/samba 目录到“Critical Configuration”部分。12. 现在你定义完了你的策略,运行 /etc/tripwire/twinstall.sh ,这个脚本将建立加密的策略、配置和密钥文件。你 需要输入一些密码,一旦这些步骤完成,在 /etc/tripwire 中就会有一些新的文件产生。13. 现在来用 tripwire Cinit 命令来初始化 tripwire 的数据库tripwire 会报告很多警告,这是因为它找不到在策略文件中包含的文件,你可以忽略它们。14. 我们来测试 tripwire,需要按照以下步骤完成a) mv /sbin/ifconfig /sbin/ifconfig.bak b) tripwire --check15. 使用 twprint 生成一份报告,命令是这样的:twprint -m r --twrfile \ /var/lib/tripwire/report/somehost.somedomain-34.twr是否 tripwire 侦测到文件变化了?tripwire 会正确侦测到 /sbin/ifconfig 丢失了。 把 ifconfig 还原回去,再次运行 tripwire Ccheck,这回还能侦测到改变吗?mv /sbin/ifconfig.bak /sbin/ifconfig tripwire Ccheck即使你把 ifconfig 还原了,但是修改的时间已经变化了,所以 tripwire 将会报告错误,升级 tripwire 的数据库tripwire --update --twrfile \ /var/lib/tripwire/report/your_lastest_report_file这将会启动默认的编辑器,这样你可以同意目前的变化。完成后退出编辑器,tripwire 会升级你的数据库。16. 你可能会注意到 top 程序没有被监视,这个文件经常被“root kits”所替换调,所以它应该被 tripwire 监视,编辑 /etc/tripwire/twpol.txt,在“System Administration Programs”项中添加 /usr/bin/top 这项规则。 /user/bin/top -& $(SEC_CRIT);升级你的策略: Tripwire --update-policy /etc/tripwire/twpol.txt完成: 数据完整性的工具应该每天根据数据库来运行。步骤 3:使用 tmpwatch 来清理临时文件目录场景/故事 你需要确定或者确定并删除已经有一定时间没有人访问的文件。任务: 1. 运行 tmpwatch 的 test 选项,这样可以看一下哪些文件 7 天没有人访问了:tmpwatch Cv Ctest 168 /tmp步骤 4:文件的访问控制场景/故事 你想创建一些用户可以使用的文件,然而你想控制用户对这些文件的访问类型。任务: 1. 创建一个名为 supervisor 的用户 2. 在 supervisor 的主目录下创建两个文件:touch /home/supervisor/{payroll,old.employees}3. 防止 payroll 文件被删除chattr

我要回帖

更多关于 闪电修会换你硬件吗 的文章

 

随机推荐