linux系統(tǒng)管理[實(shí)驗(yàn)手冊]
UNIX/LINUX系統(tǒng)管理I課程設(shè)計(jì)任務(wù)書目錄UNIX/LINUX系統(tǒng)管理I課程設(shè)計(jì)任務(wù)書13.1解決grub引導(dǎo)過程故障33.2解決系統(tǒng)網(wǎng)絡(luò)接口卡無法激活故障43.3解決PUTTY窗口的登陸問題53.4解決 PUTTY窗口的亂碼問題63.5解決軟件yum安裝故障73.6解決X-WINDOWS啟動故障83.7解決核功能問題83.8完成系統(tǒng)IO性能優(yōu)化任務(wù),103.9完成系統(tǒng)監(jiān)控任務(wù),113.10完成自動維護(hù)任務(wù),123.11解決資源配給問題,133.12完成性能分析任務(wù)14第一部分、 課程情況課程名稱:UNIX/LINUX系統(tǒng)管理I 課程代碼: NW3005學(xué)分/學(xué)時:2學(xué)分/34學(xué)時 面向?qū)I(yè)方向:網(wǎng)絡(luò)設(shè)計(jì)與管理方向、網(wǎng)絡(luò)安全技術(shù)方向任務(wù)書編寫人:安明忠第二部分、 學(xué)習(xí)目的UNIX/LINUX系統(tǒng)管理I的課程平臺是rhel6系列,主要學(xué)習(xí)故障分析與解決能力,是通過學(xué)習(xí),增強(qiáng)學(xué)生對系統(tǒng)工作原理的認(rèn)知,掌握基本的管理系統(tǒng)能力。課程設(shè)計(jì)中考慮了LINUX/UNIX系統(tǒng)日常維護(hù)和管理中的若干項(xiàng)基本工作容,組織成7個課堂實(shí)驗(yàn)任務(wù),5個可選任務(wù)。每個任務(wù)都是基于實(shí)驗(yàn)主機(jī)的真實(shí)故障或優(yōu)化管理來設(shè)計(jì),要求學(xué)生通過獨(dú)立的思考和操作,靈活使用校園網(wǎng)和主機(jī)在線手冊等資源,排除這些系統(tǒng)故障或按照要求調(diào)整優(yōu)化系統(tǒng)性能。第三部分、 本學(xué)期的學(xué)習(xí)容和要求3.1 解決grub引導(dǎo)過程故障3.1.1 任務(wù)描述主機(jī)已經(jīng)安裝完成的 RHEL6 系統(tǒng)啟動失敗,初步估計(jì)是GRUB配置參數(shù)錯誤或系統(tǒng)引導(dǎo)文件丟失,采用手工引導(dǎo)GRUB,查找故障確切原因并修復(fù)。實(shí)驗(yàn)環(huán)境:VMWARE平臺 RHEL6基本系統(tǒng)(包含GRUB數(shù)據(jù)錯誤)教師指導(dǎo):搜索引擎工具 GRUB基本介紹系統(tǒng)啟動過程知識任務(wù)要求:兩課時完成,通過grub引導(dǎo)命令修復(fù)故障,系統(tǒng)可以正常啟動。按照要求完成報告容。3.1.2 任務(wù)分析過程1.主要現(xiàn)象描述:打開虛擬機(jī)電源后,出現(xiàn)系統(tǒng)程序加載。到了Boot Loader的程序后無法加載,屏幕出現(xiàn)“grub>”的提示符,然后無法進(jìn)一步加載操作系統(tǒng)。圖1 grub加載問題2問題定位:2.1 windows系統(tǒng)與linux系統(tǒng)之間發(fā)生沖突 由于實(shí)驗(yàn)時使用的虛擬機(jī),所以排除系統(tǒng)間沖突導(dǎo)致配置文件缺少的問題。2.2 虛擬機(jī)文件被破壞打開安裝vm的安裝路徑,檢查虛擬機(jī)的文件,發(fā)現(xiàn)系統(tǒng)、配置文件都沒有問題。圖2 虛擬機(jī)文件正常2.3 kernel文件的缺少或參數(shù)被修改打開/boot/grub文件夾,顯示全部文件。發(fā)現(xiàn)缺少“grub.conf”配置文件。證明問題源于缺少系統(tǒng)的引導(dǎo)文件。圖3 缺少引導(dǎo)文件3解決步驟: 注:實(shí)驗(yàn)中TAB可以自動保全命令和文件名,若能正確的補(bǔ)全,則證明硬盤存在該文件。1. 安裝GRUB,輸入“setup (”命令,然后按TAB鍵自動補(bǔ)全,出現(xiàn)三個硬盤分區(qū),選擇“hd0,0”顯示安裝成功。但是運(yùn)行boot或reboot命令后,依然沒有解決無法加載kernel的問題。證明重新安裝grub無法復(fù)原原始配置文件。三個硬盤分區(qū)安裝GRUB成功2 .輸入root ( ,按TAB后,產(chǎn)生兩個聯(lián)想(fd0,hd0)選擇輸入“fd0”自動提示“Disk read error”; 圖4 選擇fd0 3.選擇“hd0 ,”后,按TAB鍵,自動補(bǔ)全出現(xiàn)三個編號0、1、2(分區(qū)0、1的文件系統(tǒng)是ext2fs,分區(qū)類型為0x83;而分區(qū)2的文件系統(tǒng)為unknown,分區(qū)類型為0x82)選擇(hd 0,0);圖5 硬盤hd的信息4.輸入“kernel”,后面接著一個路徑“/vmlinuz-*”5 .ro是讀取的意思, root=(后面可以是虛擬機(jī)的UUID或者核的根文件系統(tǒng)的路徑“/dev/sda*”);實(shí)驗(yàn)機(jī)有sda0、sda1、sda2三個分區(qū)。選擇sda16.輸入initrd /initramfs-*按TAB鍵自動補(bǔ)全。(設(shè)置initrd文件,也有可能用軟連接代替真正的文件名)圖6 initrd設(shè)置文件boot - 引導(dǎo)先前已經(jīng)被指定并載入的操作系統(tǒng)或鏈?zhǔn)窖b載程序。 7.輸入boot,自動從硬盤中重新加載。過1分鐘后,發(fā)現(xiàn)加載還是失敗了,證明sda1不是核根分區(qū)。圖7 boot加載失敗8.機(jī)器無法按原路徑尋找到kernel的根文件系統(tǒng),導(dǎo)致機(jī)器陷入癱瘓。所以只能關(guān)閉電源,重啟系統(tǒng)。然后嘗試第二個硬盤分區(qū)(sda2),并重復(fù)步驟3-7。圖8 嘗試sda2分區(qū)圖9 成功載入操作系統(tǒng) 9.再次嘗試重啟后,系統(tǒng)又會出現(xiàn)“grub>”,所以證明雖然上次成功登陸系統(tǒng),但是缺少grub配置文件的問題,并沒有根治。圖10 無法再次載入系統(tǒng)10.重新輸入以上步驟,重新登陸。進(jìn)入/boot/grub文件夾,創(chuàng)建grub.conf文件。 (grub.conf文件詳解為附錄1)按照系統(tǒng)基本配置來輸入:10.1 vmlinuz的查找::.! ls /boot/vm*(TAB自動補(bǔ)全)10.2 sda2的UUID查找:.! Blkid /dev/sda210.3 initrd文件的查找:.! ls /boot/init*(TAB自動補(bǔ)全)圖11 查找vmlinuz文件圖12 查找sda2的UUID圖13 查找initramf文件圖14 顯示grub.conf文件11重啟系統(tǒng),觀察結(jié)果。重啟系統(tǒng)后,按任意鍵進(jìn)入GRUB模式。按鍵“e”進(jìn)入編輯模式。圖15 GRUB模式進(jìn)入GRUB模式,檢查剛剛編寫的GRUB配置信息,如沒問題,按鍵“b”開始boot,并最后成功進(jìn)入系統(tǒng)登陸界面圖16 GRUB模式4問題和總結(jié):4.1問題分析:說明grub.conf 配置文件的功能和GRUB的引導(dǎo)過程當(dāng)“/boot/grub/grub.conf”配置文件丟失或者關(guān)鍵配置出現(xiàn)錯誤,或者M(jìn)BR記錄中的引導(dǎo)程序遭到破壞時,Linux主機(jī)啟動可能會出現(xiàn)”grub>”的提示符,無法完成系統(tǒng)其它操作。Grub.conf功能是相當(dāng)于 windows下的boot.ini,都是存放啟動項(xiàng)設(shè)置和信息的。GRUB的引導(dǎo)過程:附錄2簡介vmlinuz ,initrad.img文件的位置和作用Vmlinuz-kernel - 當(dāng)使用直接載入方式引導(dǎo)操作系統(tǒng)時,kernel命令指定核從GRUB的根文件系統(tǒng)中載入 。比如 kernel /vmlinuz root=/dev/hda5; Vmlinuz是核,它從GRUB的根文件系統(tǒng)載入的,如(hd0,0)。同時,后面一個選項(xiàng)被傳給核。它指出當(dāng)Linux核載入時,核的根文件系統(tǒng)應(yīng)該是位于hda5,第一個IDE硬盤的第五個分區(qū)。initrd - 使用戶能夠指定一個在引導(dǎo)時可用的初始RAM盤。當(dāng)核為了完全引導(dǎo)而需要某些模塊時,這是必需的。Initramfs-核開發(fā)人員編寫了一個改進(jìn)版tmpfs, 這個文件系統(tǒng)上的數(shù)據(jù)可以寫出到交換分區(qū),而且可以設(shè)定一個tmpfs裝載點(diǎn)的最大尺寸以免耗盡存。initramfs就是tmpfs的一個應(yīng)用.文件系統(tǒng)損壞后,如何修復(fù)文件系統(tǒng)?(1)修改/etc/fstab,將受損的文件系統(tǒng)先注釋掉,如果無法讀寫該文件則采用mount -o remount rw , / 將文件系統(tǒng)改成讀寫模式。 (2)針對受損的文件系統(tǒng),執(zhí)行fsck命令,如:fsck /dev/sda1等。4.2總結(jié):在本次實(shí)驗(yàn)中,通過GRUB引導(dǎo)配置文件的出錯,導(dǎo)致OS系統(tǒng)無常啟動的問題。深入了解到LINUX系統(tǒng)啟動的過程和其文件系統(tǒng)的掛載過程,在此實(shí)驗(yàn)過程中,我刪除了系統(tǒng)中的grub.conf配置文件,致使LINUX操作系統(tǒng)的啟動故障,并隨后手動引導(dǎo)了系統(tǒng)的正?;謴?fù)啟動且恢復(fù)配置文件。但實(shí)驗(yàn)中,遇到許多未知的參數(shù)以與文件信息,需要通過查詢百度等手段找到其需要的修復(fù)方法。盡管過程所花精力很多,但結(jié)果是美好的。5參考文獻(xiàn)1新華網(wǎng).linuxgrub引導(dǎo)啟動過程詳解J. ChinaUnix博客, 2008-04-062凌激冰. 教你一招超級簡單的方法快速搞定grub.conf文件的丟失與損壞J.51CTO博客,2012-12-033xiaoluo501395377. Linux學(xué)習(xí)之CentOS(二十一)-Linux系統(tǒng)啟動詳解J.blogs.,2013-05-19附錄1Grub是Linux的下系統(tǒng)啟動器之一(另一個名為Lilo),grub.conf相當(dāng)于 windows下的boot.ini,都是存放啟動項(xiàng)設(shè)置和信息的,如果你熟悉boot.ini的設(shè)置的話相信也可以很快適應(yīng)grub.conf,另外說下我的/boot是獨(dú)立分了個區(qū)出來的,所以你的grub.conf部分容可能與我的不完全一致。rootlocalhost root# cat /etc/grub.conf # grub.conf generated by anaconda #這個就不說了,你要喜歡改成by自己的名字也可以-.-# Note that you do not have to rerun grub after making changes to this file #注解:修改此文件后你不必重新運(yùn)行g(shù)rub(下次啟動時會自動生效)# NOTICE: You have a /boot partition. This means that #注意:你有一個/boot分區(qū),這意味著一下幾點(diǎn):# all kernel and initrd paths are relative to /boot/, eg. # 此行表示所有kernel和initrd的文件路徑都在/boot/下# root (hd0,0) # root所在位置,注意此root在這里是根目錄,不是指root超級用戶# kernel /vmlinuz-version ro root=/dev/hda2 # 這項(xiàng)中間的version對應(yīng)你的kernel版本,稍后我會做點(diǎn)分析# initrd /initrd-version.img # 同上#boot=/dev/hda #這里說明了boot分區(qū)(或者說目錄)的所在的位置default=0 #菜單項(xiàng),0表示第一項(xiàng),如果是多系統(tǒng)可以修改此選項(xiàng)改變默認(rèn)光標(biāo)停留位置timeout=10 #在菜單到自動啟動系統(tǒng)前的停留時間,單位時間為sec,我修改為1,可以按需分配splashimage=(hd0,0)/grub/splash.xpm.gz #啟動菜單的背景圖標(biāo),如果要修改的話需要使用對應(yīng)的圖片格式,xpm圖像title Red Hat Linux (2.4.20- 8)#啟動項(xiàng)目的名稱,可以任意修改,比如title hahahahaha root (hd0,0) # root所在位置,為什么這里是hd0,0請參考磁盤在linux下的命名與定義kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ # 2.4.20-8為kernel版本,rootLABEL=/為root路徑,可以修改,例:root=/dev/hda2 ro是以readonly的意思。注意我這里核前面的路徑是"/",因?yàn)槲业腷oot單獨(dú)分了一個區(qū),如果你沒有為boot單獨(dú)分區(qū),那么核前面的路 徑就是"/boot"。initrd用來初始的linux image,并設(shè)置相應(yīng)的參數(shù)。initrd /initrd-2.4.20-8.img # 同上,這個基本沒有改的價值與必要以上"kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ "這行后面可以添加acpi=on(off)參數(shù),開啟或關(guān)閉高級電源控制接口,本本的話如果沒開啟的話是無法使藍(lán)牙和無線網(wǎng)卡燈亮起的,這點(diǎn)要注意。以 上操作有可能會導(dǎo)致系統(tǒng)無法啟動,請仔細(xì)研究后再修改,另外本人可以保證以上解釋的正確性但是不承擔(dān)你的不當(dāng)操作引起的故障,。同時希望大家可以指出 錯誤或不足的地方以便修改。附錄2 機(jī)器加電啟動后,BIOS開始檢測系統(tǒng)參數(shù),如存的大小,日期和時間,磁盤 設(shè)備以與這些磁盤設(shè)備用來引導(dǎo)的順序,通常情況下,BIOS都是被配置成首先檢查 軟驅(qū)或者光驅(qū)(或兩者都檢查),然后再嘗試從硬盤引導(dǎo)。如果在這些可移動的設(shè) 備中,沒有找到可引導(dǎo)的介質(zhì),那么BIOS通常是轉(zhuǎn)向第一塊硬盤最初的幾個扇區(qū), 尋找用于裝載操作系統(tǒng)的指令。裝載操作系統(tǒng)的這個程序就是boot loader.linux里面的boot loader通常是lilo或者grub,從Red Hat Linux 7.2起,GRUB(GRand Unified Bootloader)取代LILO成為了默認(rèn)的啟動裝載程序。那么啟動的時候grub是如何被載入的呢 grub有幾個重要的文件,stage1,stage2,有的時候需要stage1.5.這些文件一般都在/boot/grub文件夾下面.grub被載入通常包括以下幾個步驟:1. 裝載基本的引導(dǎo)裝載程序(stage1),stage1很小,網(wǎng)上說是512字節(jié),但是在我的系統(tǒng)上用 du -b /boot/grub/stage1 顯示的是1024個字節(jié),不知道是不是grub版本不同的緣故還是我理解有誤.stage1通常位于主引導(dǎo)扇區(qū)里面,對于硬盤就是MBR了,stage1的主要功能就是裝載第二引導(dǎo)程序(stage2).這主要是歸結(jié)于在主引導(dǎo)扇區(qū)中沒有足夠的空間用于其他東西了,我用的是grub 0.93,stage2文件的大小是 107520 bit.2. 裝載第二引導(dǎo)裝載程序(stage2),這第二引導(dǎo)裝載程序?qū)嶋H上是引出更高級的功能,以允許用戶裝載入一個特定的操作系統(tǒng)。在GRUB中,這步是讓用戶顯示一個菜單或是輸入命令。由于stage2很大,所以它一般位于文件系統(tǒng)之中(通常是boot所在的根分區(qū)).上面還提到了stage1.5這個文件,它的作用是什么呢 你到/boot/grub目錄下看看,fat_stage_1.5 e2fs_stage_1.5 xfs_stage_1.5等等,很容易猜想stage1.5和文件系統(tǒng)有關(guān)系.有時候基本引導(dǎo)裝載程序(stage1)不能識別stage2所在的文件系統(tǒng)分區(qū),那么這時候就需要stage1.5來連接stage1和stage2了.因此對于不同的文件系統(tǒng)就會有不同的stage1.5.但是對于grub 0.93好像stage1.5并不是很重要,因?yàn)槲以囘^了,在沒有stage1.5的情況下, 我把stage1安裝在軟盤的引導(dǎo)扇區(qū),然后把stage2放在格式化成ext2或者fat格式的軟盤,啟動的時候照常引導(dǎo),并不需要e2fs_stage_1.5或者fat_stage_1.5. 下面是我的試驗(yàn): #mkfs.ext2 /dev/fd0 #mount -t ext2 /dev/fd0 /mnt/floppy #cd /mnt/floppy #mkdir boot #cd boot #mkdir grub (以上三步可用mkdir -p boot/grub命令完成) #cd grub #cp /boot/grub/stage1,stage2,grub.conf ./ #cd; umount /mnt/floppy 以上幾步把軟盤格式化成ext2格式,然后把stage1,stage2,grub.conf這幾個啟動的 時候必須的文件拷貝到軟盤的指定目錄下.下面安裝grub到軟盤上. #grub (進(jìn)入grub環(huán)境) grub> install (fd0)/boot/grub/stage1 (fd0) (fd0)/boot/grub/stage2 p (fd0)/boot/grub/grub.conf 以上這條命令也可以用下面的兩句代替 grub>root (fd0) #grub的根目錄所在的分區(qū) grub>setup (fd0) #這一步就相當(dāng)于上面的install命令 我在這里解釋一下 install (fd0)/boot/grub/stage1 (fd0) (fd0)/boot/grub/stage2 p (fd0)/boot/grub/grub.conf 這條命令. install 告訴GRUB將(fd0)/boot/grub/grub/stage1 安裝到軟驅(qū)的引導(dǎo)扇區(qū)(fd0). (fd0)/boot/grub/stage2 告訴grub stage2這個文件所在的位置. p 參數(shù)后面跟著(fd0)/boot/grub/grub.conf 告訴grub的配置文件所在的位置. 好了,讓BIOS從軟驅(qū)啟動,試一下,沒有e2fs_stage_1.5文件照樣能夠進(jìn)入系統(tǒng). 其實(shí)這就是一個小小的啟動盤啊.(了解了grub的運(yùn)行原理,就簡單多了_) 3. 現(xiàn)在我們已經(jīng)到grub的開機(jī)選單這一步了,接下來grub所需要做的就是裝載在一個特定分區(qū)上的操作系統(tǒng),如linux核。一旦GRUB從它的命令行或者配置文件中,接到開始操作系統(tǒng)的正確指令,它就尋找必要的引導(dǎo)文件,然后把機(jī)器的控制權(quán)移交給操作系統(tǒng).由于篇幅有限,避免冗長,grub的命令我就不多說了,網(wǎng)上很有多的資料,一個典型 完整的引導(dǎo)linux的命令如下: title 51base root(hd0,0) kernel /bzImage ro root=/dev/ram0 initrd /initrd.img 這里有必要注意一下幾個問題: (1)grub的磁盤以與分區(qū)的命名方式和linux有所區(qū)別,第一個磁盤是從0開始,第一 個分區(qū)也是從0開始.譬如第一個硬盤的第5分區(qū)在linux下面是/dev/hda5 ,而grub里面 是(hd0,4).再如/dev/fd0在grub里面是(fd0,0).(最后一句如有錯誤望提醒) (2)不管是IDE硬盤hda,hdb還是SCSI硬盤sda,sdb在grub里面都是以hd方式命名. 譬如虛擬機(jī)里面的/dev/sda2在grub里面是(hd0,1),再如/dev/hdb7在grub里面以(hd1,6) 命名. (3)要搞清楚上面兩個root的關(guān)系,root (hd0,0)中的root是grub命令,它用來指定 boot所在的分區(qū)作為grub的根目錄.而root=/dev/ram0是kernel的參數(shù),它告訴操作系統(tǒng) 核加載完畢之后,真實(shí)的文件系統(tǒng)所在的設(shè)備.要注意grub的根目錄和文件系統(tǒng)的根 目錄的區(qū)別. 再回到上面的幾行命令. kernel命令用來指定核所在的位置,"/"代表(hd0,0),也就是grub的根目錄 initrd命令用來指定初始化ram的img文件所在位置. grub載入核bzImage并展開到指定位置(應(yīng)該是0x100000這個地方),同時載入 initrd.img到存(不知道是什么地方). ps: grub的任務(wù)至此就結(jié)束了,下面grub將機(jī)器的控制權(quán)轉(zhuǎn)交給操作系統(tǒng)(linux). 操作系統(tǒng)接到控制權(quán)之后,開始start_kernel,接著核將initrd.img展開到/dev/ram0 為臨時根文件系統(tǒng),執(zhí)行里面的linuxrc文件. P.這里有必要說一下initrd的作用特別是它里面的核心文件linuxrc的作用. initrd是inital ram disk的宿寫. 當(dāng)存在initrd的時候,機(jī)器啟動的過程大概是以下幾個步驟(當(dāng)initrd這一行用 noinitrd 命令代替后,就不存在initrd了) 1)boot loader(grub)加載核和initrd.img 2)核將壓縮的initrd.img解壓成正常的ram disk并且釋放initrd所占的存空間 3)initrd作為根目錄以讀寫方式被掛載 4)initrd里面的文件linuxrc被執(zhí)行 5)linuxrc掛載新的文件系統(tǒng) 6)linuxrc使用pivot_root系統(tǒng)調(diào)用指定新的根目錄并將現(xiàn)有的根目錄place到指定 位置. 7)在新的文件系統(tǒng)下正式init 8)initrd被卸載.3.2 解決系統(tǒng)網(wǎng)絡(luò)接口卡無法激活故障3.2.1 任務(wù)描述RHEL6 系統(tǒng)啟動過程,控制臺登陸過程正常,使用ifconfig 查看網(wǎng)絡(luò)配置參數(shù)時,發(fā)現(xiàn)系統(tǒng)僅僅激活了lo 接口,查找故障原因,在系統(tǒng)中激活兩塊以太網(wǎng)網(wǎng)卡,并獲取校園網(wǎng)DHCP的ip地址。實(shí)驗(yàn)環(huán)境:VMWARE平臺 RHEL6基本系統(tǒng)(VMWARE 虛擬平臺支持)教師指導(dǎo):搜索引擎工具 網(wǎng)絡(luò)解決相關(guān)文件介紹完成要求:兩課時完成,成功解決兩塊網(wǎng)卡激活故障,網(wǎng)卡通過校園網(wǎng)DHCP獲得地址參數(shù),完成報告容3.2.2 任務(wù)分析過程3.2.2.1主要現(xiàn)象描述:啟動實(shí)驗(yàn)虛擬機(jī)后,使用ifconfig 查看網(wǎng)絡(luò)配置參數(shù)時,發(fā)現(xiàn)系統(tǒng)僅僅激活了lo 接口,而其他兩網(wǎng)卡激活失敗。而lo接口為回環(huán)測試接口,IP地址為127.0.0.1,并非校園網(wǎng)的IP地址。故障導(dǎo)致本虛擬機(jī)連接校園網(wǎng)失敗。 圖1 系統(tǒng)只有l(wèi)o接口激活3.2.2.2問題定位:1 .系統(tǒng)結(jié)構(gòu)故障分析大小圖2 基本計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)步驟:右鍵“我的電腦”選擇“設(shè)備管理器”查看網(wǎng)絡(luò)適配器圖查看系統(tǒng)網(wǎng)絡(luò)適配器選擇主網(wǎng)卡(第一個),右鍵打開“屬性”,顯示設(shè)備正常并排除網(wǎng)卡故障。圖網(wǎng)卡正常2. 宿主故障分析步驟:雙擊桌面有下角的“小電腦”查看宿主機(jī)器網(wǎng)路連接狀態(tài)顯示已連接上。圖 5 網(wǎng)絡(luò)信息正常 查看本地連接狀態(tài),顯示IP地址是由校園DHCP指派,并且其他網(wǎng)絡(luò)信息正常。圖 6網(wǎng)絡(luò)信息正常圖7 宿主機(jī)正常上網(wǎng)3. VMware網(wǎng)絡(luò)設(shè)置故障分析步驟: 打開VMware Workstation,選擇“編輯”選項(xiàng)單擊打開“虛擬網(wǎng)絡(luò)編輯器”查看各虛擬網(wǎng)卡的信息圖8 虛擬網(wǎng)卡信息正常圖上顯示VMnet0 、VMnet1 、VMnet8已連接,DHCP已啟用。同時IP地址都是校園網(wǎng)中的IP,排除VMware的故障。 4. linux系統(tǒng)故障分析4.1 終端檢查網(wǎng)卡信息步驟:打開linux系統(tǒng)終端輸入命令“netstat -r”查看當(dāng)前路由與網(wǎng)卡信息輸入“service network status”查看當(dāng)前網(wǎng)卡狀態(tài)圖9 終端顯示網(wǎng)卡信息圖10虛擬機(jī)無法訪問網(wǎng)頁通過上述實(shí)驗(yàn)分析確定,Linux系統(tǒng)的網(wǎng)絡(luò)配置出現(xiàn)故障。3.2.2.3.解決步驟:1.通過“ifup” 、“ifdown”命令激活eth0網(wǎng)卡注:ifup和ifdown僅能就/etc/sysconfig/network-scripts的ifcfg-ethx(x為數(shù)字)進(jìn)行啟動或關(guān)閉,并不能直接修改網(wǎng)絡(luò)的參數(shù),除非手動的調(diào)整ifcfg-ethx文件才行。 至于ifconfig 則可以直接手動給予某個界面IP或修改網(wǎng)絡(luò)參數(shù)。步驟:打開一個終端1、如果沒有eth0的話,那就直接ifup eth0;2、如果eth0已經(jīng)激活了,但是沒有IP的話,那就先ifdown eth0然后再ifup eth0。圖11 ifup、ifdown無法排除故障結(jié)論:方法1無法排除網(wǎng)卡激活故障。2. /etc/sysconfig/networ-script/ifcfg-*文件在Linux下網(wǎng)卡被稱為eth0,eth1,eth2, 所有網(wǎng)卡的配置文件都存儲在/etc/sysconfig/network-script/下,文件名是以ifcfg-eth0,ifcfg- eth1,ifcfg-eth2來命名的。一塊網(wǎng)卡對應(yīng)一個配置文件2.1 將ifcfg-*系列文件刪除步驟:通過“rm rf ifcfg-*”命令刪除ifcfg系列文件ls l|grep ifcfg。Eth0、Eth1的Mac地址圖12 ifcfg-eth0、eth1文件容再次搜索ifcfg-*文件刪除ifcfg*文件 用管道過濾出ifcfg-*文件圖13刪除ifcfg文件刪除文件后,在終端輸入“shutdown r now”重啟虛擬機(jī),再次“ifconfig -a”查看網(wǎng)卡信息圖14所有網(wǎng)卡信息消失 圖15 虛擬機(jī)配置文件信息圖16 原始配置文件信息對比發(fā)現(xiàn),終端顯示的網(wǎng)卡名稱為eth2、eth3,而不是eth0、eth1。原先查詢的ifcfg-eth0、eth1中的Mac地址是與原始配置文件的eth0、eth1的Mac地址不一樣,但eth2、eth3的Mac地址卻與原始配置文件的eth0、eth1的Mac地址一樣。進(jìn)一步實(shí)驗(yàn):“cd /etc/sysconfig/network-scripts”,查找新網(wǎng)卡配置文件圖17 查找eth2文件實(shí)驗(yàn)后,發(fā)現(xiàn)無法找到eth2、eth3的相關(guān)文件記錄,eth0、eth1無法通過配置文件設(shè)置IP。注:經(jīng)查明,Linux是用/etc/network/interfaces這個配置文件來載入網(wǎng)卡的。默認(rèn)配置中,它指示Linux會自動尋找eth0網(wǎng)卡,并自動分配IP。但是,當(dāng)虛擬網(wǎng)卡的MAC地址更改后,網(wǎng)卡在Linux中不是eth0了,而是eth1或其它值。因此才會找不到。而現(xiàn)有系統(tǒng)中,有哪些網(wǎng)卡是可用的,可以通過下面的命令查看:ifconfig -a使用這個命令后確實(shí),發(fā)現(xiàn)每刷新一次mac地址,就生成一個新的eth。結(jié)論:方法2無法排除網(wǎng)卡激活故障。2.2 配置 /etc/sysconfig/networ-script/ifcfg-*文件步驟:打開終端找到ifcfg文件打開“ifcfg-eth0”注釋MAC地址“service network restart”重啟網(wǎng)絡(luò)服務(wù)圖18 注釋MAC并重啟實(shí)驗(yàn)后,eth0網(wǎng)卡并沒有激活,結(jié)合方法2,排除MAC不一致導(dǎo)致故障。結(jié)論:方法3無法排除網(wǎng)卡激活故障。2.3 /etc/udev/rules.d/70-persistent-net.rules文件2.3.1 配置/etc/udev/rules.d/70-persistent-net.rules文件打開70-persistent-net.rules并配置文件。圖19查找.rules文件發(fā)現(xiàn)有eth0、eth1、eth2、eth3,4個網(wǎng)卡記錄,以與相關(guān)的配置信息。注釋eth0,eth1網(wǎng)卡,修改eth2,eth3的網(wǎng)卡名稱并保存退出。圖20 查看并修改信息輸入“service network restart”,重啟網(wǎng)絡(luò)服務(wù),發(fā)現(xiàn)無法找到eth0、eth1。重啟網(wǎng)絡(luò)服務(wù)修改網(wǎng)卡信息圖21 重啟網(wǎng)絡(luò)服務(wù)結(jié)論:方法4無法排除網(wǎng)卡激活故障。進(jìn)一步實(shí)驗(yàn):步驟:結(jié)合方法3和方法4,先將ifcfg-eth0的錯誤MAC地址注釋,然后再改變“70-persistent-net.rules”中的網(wǎng)卡記錄。圖22 修改ifcfg-eth0文件修改網(wǎng)卡信息圖23 修改rule中記錄重啟網(wǎng)絡(luò)服務(wù)后,發(fā)現(xiàn)沒有eth0信息。然后嘗試“reboot”虛擬機(jī),發(fā)現(xiàn)eth0、eth1正常發(fā)配到IP:192.168.193.129 、172.16.57.55.同時路由表和ARP表都正常顯示eth0、eth1信息。圖24網(wǎng)卡自動激活圖25 路由表表正常啟動結(jié)論:方法5成功排除網(wǎng)卡激活故障。2.3.2 刪除/etc/udev/rules.d/70-persistent-net.rules文件步驟:如方法5一樣,先將ifcfg-eth0的錯誤MAC地址注釋,然后再刪除 “70-persistent-net.rules”中的網(wǎng)卡記錄文件。 進(jìn)入/etc/udev/rules.d/目錄,用管道“grep”過濾出相應(yīng)文件。然后輸入“rm”命令刪除.rule文件。操作完畢,再重啟虛擬機(jī)。圖26刪除.rule文件重啟后,輸入ifconfig a,看到eth網(wǎng)卡被成功地自動激活。圖27 網(wǎng)卡自動激活圖28 新生成的.rule記錄正常結(jié)論:方法6成功排除網(wǎng)卡激活故障。3.2.2.4深入思考:4.1 實(shí)驗(yàn)系統(tǒng)的功能結(jié)構(gòu)本次實(shí)驗(yàn)系統(tǒng)在WM虛擬機(jī)中進(jìn)行,宿主設(shè)備提供虛擬機(jī)實(shí)際網(wǎng)絡(luò)鏈路。而網(wǎng)絡(luò)的具體配置是由WMware Workstation的網(wǎng)絡(luò)參數(shù)配置與操作系統(tǒng)的具體網(wǎng)絡(luò)參數(shù)配置。圖29實(shí)驗(yàn)系統(tǒng)的功能結(jié)構(gòu)4.2 VMWARE網(wǎng)卡的虛擬化技術(shù)(1)bridge模式是最簡單的,使用橋接模式后虛擬機(jī)和真實(shí)主機(jī)的關(guān)系就好像兩臺接在一個hub上的電腦,想讓他們倆進(jìn)行通訊,你需要在虛擬機(jī)上配置的IP地址與真實(shí)機(jī)在同一個網(wǎng)段上,從下圖中可以看出,如果你不配置虛擬機(jī),虛擬機(jī)也沒有辦法得到DHCP分到的IP地址,所以只能使用169.254.這個段(2)Host-only模式用來建立隔離的虛擬機(jī)環(huán)境,在這種模式下,虛擬機(jī)與真實(shí)主機(jī)通過虛擬私有網(wǎng)絡(luò)進(jìn)行連接,只有同為Host-only模式下的且在一個虛擬交換機(jī)的連接下才可以互相訪問,外界無法訪問。host only模式只能使用私有IP,IP,gateway,DNS都由VMnet 1來分配。(3)NAT(network address translation)模式其實(shí)可以理解成為是方便地使虛擬機(jī)連接到公網(wǎng),代價是橋接模式下的其他功能都不能享用。凡是選用NAT結(jié)構(gòu)的虛擬機(jī),均由VMnet 8提供IP,gateway,DNS。(4)custom上是一個特殊的網(wǎng)卡(包含以上這些)可以根據(jù)需要用這些網(wǎng)卡組建一個局域網(wǎng)擬機(jī)中的網(wǎng)絡(luò)支持在主機(jī)上通過一個虛擬交換機(jī)或者網(wǎng)絡(luò)適配器完成,它實(shí)現(xiàn)幾種設(shè)備: · VMnet0 用于橋接網(wǎng)絡(luò)。· VMnet1 用于僅為主機(jī)網(wǎng)絡(luò)。· VMnet2 用于定制網(wǎng)絡(luò)。· VMnet3 用于定制網(wǎng)絡(luò)。· VMnet4 用于定制網(wǎng)絡(luò)。· VMnet5 用于定制網(wǎng)絡(luò)。· VMnet6 用于定制網(wǎng)絡(luò)。· VMnet7 用于定制網(wǎng)絡(luò)。· VMnet8 用于網(wǎng)絡(luò)地址翻譯(NAT)網(wǎng)絡(luò)。4.3 ifcfg-eth0參數(shù)的容以下簡單解釋ifcfg-eth文件中的容:DEVICE=物理設(shè)備名IPADDR=IP地址NETMASK=掩碼值NETWORK=網(wǎng)絡(luò)地址BROADCAST=廣播地址GATEWAY=網(wǎng)關(guān)地址ONBOOT=yes|no(引導(dǎo)時是否激活設(shè)備)USERCTL=yes|no(非root用戶是否可以控制該設(shè)備)BOOTPROTO=none|static|bootp|dhcp(引導(dǎo)時不使用協(xié)議|靜態(tài)分配|BOOTP協(xié)議|DHCP協(xié)議)HWADDR = 你的MAC地址4.4 UDEV系統(tǒng)在Linux早期,設(shè)備文件僅僅是是一些帶有適當(dāng)?shù)膶傩约钠胀ㄎ募?,它由mknod命令創(chuàng)建,文件存放在/dev目錄下。后來,采用了devfs, 一個基于核的動態(tài)設(shè)備文件系統(tǒng),他首次出現(xiàn)在2.3.46核中。Mandrake,Gentoo等Linux分發(fā)版本采用了這種方式。devfs創(chuàng)建 的設(shè)備文件是動態(tài)的。但是devfs有一些嚴(yán)重的限制,從2.6.13版本后移走了。目前取代他的便是文本要提到的udev一個用戶空間程序。目前很多的Linux分發(fā)版本采納了udev的方式,因?yàn)樗贚inux設(shè)備訪問,特別是那些對設(shè)備有極端需求的站點(diǎn)(比如需要控制上千個硬盤)和熱插拔設(shè)備(比如USB攝像頭和MP3播放器)上解決了幾個問題。下面我我們來看看如何管理udev設(shè)備。實(shí)際上,對于那些為磁盤,終端設(shè)備等準(zhǔn)備的標(biāo)準(zhǔn)配置文件而言,你不需要修改什么。但是,你需要了解udev配置來使用新的或者外來設(shè)備,如果不修改配置, 這些設(shè)備可能無法訪問,或者說Linux可能會采用不恰當(dāng)?shù)拿?,屬組或權(quán)限來創(chuàng)建這些設(shè)備文件。你可能也想知道如何修改RS232串口,音頻設(shè)備等文件的屬組或者權(quán)限。這點(diǎn)在實(shí)際的Linux實(shí)施中是會遇到的。原文地址: :/.cnblogs./sopost/archive/2013/01/09/2853200.html3.2.2.5 總結(jié) 本次實(shí)驗(yàn),是為了熟悉Linux中的網(wǎng)絡(luò)文件配置。通過linux網(wǎng)卡的未激活問題,我可以從多方面、不同方法嘗試尋找問題,解決問題。同時老師也點(diǎn)出了許多技術(shù)上的思路和方法給我們自己去嘗試和總結(jié)。在實(shí)驗(yàn)過程中,我花了更多的時間在百度,查找資料上,而不是實(shí)驗(yàn)本身。因?yàn)槲蚁M麑ふ业礁嗪唵尾⒊晒Φ姆椒?,也能學(xué)習(xí)到更多不同的東西。3.2.2.6 參考文獻(xiàn)1無雙的小寶.Linux詳解udev R.blogs,2013-01-092萬維網(wǎng).udev and devfs - The final word Z.Wikipedia,2003-12-303ulka.VM中網(wǎng)卡的四個選項(xiàng) N.51CTO技術(shù)論壇,2010-4-304Andrew J.Hutton.Proceedings of the Linux Symposium C.baidu文庫,2010-07-25Ø 總結(jié)你在完成故障定位任務(wù)時的思路,工具,困難。3.3 解決PUTTY窗口的登陸問題3.3.1 任務(wù)描述RHEL統(tǒng)啟動過程,控制臺登陸過程正常,使用PUTTY客戶端連接SSHD服務(wù)段,實(shí)現(xiàn)RHEL 主機(jī)的遠(yuǎn)程管理,發(fā)現(xiàn)登陸失敗,查找原因并修復(fù)。 實(shí)驗(yàn)環(huán)境:VMWARE平臺 RHEL基本系統(tǒng)(包含GRUB數(shù)據(jù)錯誤)教師指導(dǎo):搜索引擎工具 putty知識介紹完成要求:兩課時完成,成功解決PUTTY登陸問題。完成報告容。3.3.2 任務(wù)分析過程解決PUTTY窗口的登陸問題1、任務(wù)描述RHEL統(tǒng)啟動過程,控制臺登陸過程正常,使用PUTTY客戶端連接SSHD服務(wù)段,實(shí)現(xiàn)RHEL 主機(jī)的遠(yuǎn)程管理,發(fā)現(xiàn)登陸失敗,查找原因并修復(fù)。 實(shí)驗(yàn)環(huán)境:VMWARE平臺 RHEL基本系統(tǒng)(包含GRUB數(shù)據(jù)錯誤)教師指導(dǎo):搜索引擎工具 putty知識介紹完成要求:兩課時完成,成功解決PUTTY登陸問題。完成報告容。2、任務(wù)分析過程 1主要現(xiàn)象描述:在宿主機(jī)上,嘗試用putty窗口遠(yuǎn)程登陸虛擬機(jī),輸入linux機(jī)器的IP地址和默認(rèn)22端口,確認(rèn)登陸。但putty窗口彈出“network error:No route to host ”的錯誤提示,無法成功地遠(yuǎn)程虛擬機(jī)。圖1 putty登陸窗口/putty登陸失敗圖2登陸失敗2問題定位:錯誤提示為“Network error:No route to host”,說明宿主機(jī)無法找到虛擬機(jī)地址或無法識別虛擬機(jī)的端口。2.1 宿主機(jī)的網(wǎng)絡(luò)設(shè)置故障分析步驟:雙擊桌面右下角的“小電腦”查看宿主機(jī)器網(wǎng)路連接狀態(tài)。/網(wǎng)絡(luò)連接正常圖 3 網(wǎng)絡(luò)信息正常經(jīng)檢查,宿主機(jī)的網(wǎng)絡(luò)正常連通,所以排除宿主機(jī)網(wǎng)絡(luò)配置故障。2.2 VMWARE的虛擬網(wǎng)絡(luò)參數(shù)配置故障分析步驟:打開VMware Workstation,選擇“編輯”選項(xiàng)單擊打開“虛擬網(wǎng)絡(luò)編輯器”查看各虛擬網(wǎng)卡的信息 。/虛擬網(wǎng)絡(luò)正常啟動圖4 虛擬網(wǎng)卡信息正常圖上顯示VMnet0 、VMnet1 、VMnet8已連接,DHCP已啟用,正常分配子網(wǎng)IP,所以排除VMware的網(wǎng)絡(luò)故障。 2.3 虛擬機(jī)的網(wǎng)絡(luò)參數(shù)配置故障分析步驟:正常啟動linux操作系統(tǒng)后,打開終端輸入“ifconfig”命令,查看系統(tǒng)的網(wǎng)絡(luò)信息。/IP地址網(wǎng)段不同于子網(wǎng)段或宿主機(jī)網(wǎng)段圖5 網(wǎng)絡(luò)信息不符由上圖得知,虛擬機(jī)中的網(wǎng)絡(luò)信息出現(xiàn)問題,IP地址網(wǎng)段不在于子網(wǎng)段或宿主機(jī)網(wǎng)段,導(dǎo)致虛擬機(jī)與宿主機(jī)無法連通。證明因虛擬機(jī)的網(wǎng)絡(luò)參數(shù)配置故障導(dǎo)致無法遠(yuǎn)程連接。2.4虛擬機(jī)的SSH服務(wù)器參數(shù)配置故障分析步驟:打開終端輸入“netstat antp|grep sshd”命令,查看ssh程序是否啟動和SSH的監(jiān)聽端口。/SSH程序正常啟動圖6 查看ssh程序信息由上圖得知,ssh的默認(rèn)端口不是 22,而是1500。證明ssh的配置改變了,導(dǎo)致putty登陸失敗。3解決步驟:3.1 編輯虛擬機(jī)設(shè)置打開虛擬機(jī)后,發(fā)現(xiàn)IP地址不屬于宿主機(jī)網(wǎng)段或VM子網(wǎng)段,本次實(shí)驗(yàn)需實(shí)現(xiàn)宿主機(jī)遠(yuǎn)程登陸實(shí)驗(yàn)機(jī),所以第一步操作就是讓宿主機(jī)的DHCP能為實(shí)驗(yàn)機(jī)分配IP地址。步驟: 雙擊虛擬機(jī)右下角的小電腦選擇網(wǎng)絡(luò)適配器在網(wǎng)絡(luò)連接,單擊橋接模式。/選擇橋接模式圖7 設(shè)置網(wǎng)絡(luò)設(shè)置3.2 設(shè)置Linux系統(tǒng)的網(wǎng)絡(luò)配置步驟:3.2.1打開終端,輸入“setup”,進(jìn)入系統(tǒng)配置模式打開網(wǎng)絡(luò)配置,按空格,啟動DHCP并保存退出。注:可以直接配置eth0網(wǎng)關(guān)配置文件3.2.2查看eth0網(wǎng)卡信息:在終端輸入“cat /etc/sysconfig/ifcfg-eth0”顯示成功設(shè)置為dhcp。3.2.3在終端,輸入“service network restart”成功重啟網(wǎng)絡(luò)輸入“ifconfig”查看eth0信息。/正確分配IP地址/重啟網(wǎng)絡(luò)成功/進(jìn)入配置模式圖8重設(shè)實(shí)驗(yàn)機(jī)網(wǎng)絡(luò)配置3.2.4回到宿主機(jī),打開cmd.exe輸入“ping 172.16.57.56”命令成功ping通實(shí)驗(yàn)機(jī)。/ping成功圖9兩臺機(jī)器正常連通證明宿主機(jī)和實(shí)驗(yàn)機(jī)所處的網(wǎng)絡(luò)環(huán)境是正常的。 3.2.5 嘗試在宿主機(jī)通過putty窗口遠(yuǎn)程登錄實(shí)驗(yàn)機(jī),發(fā)現(xiàn)還是無法成功遠(yuǎn)程登錄。/登陸失敗圖10遠(yuǎn)程登陸失敗3.3 配置SSH服務(wù)器配置文件完成了以上步驟,依然沒有成功解決putty登陸問題。證明SSH的配置也存在問題。由故障分析2.4可得,SSH程序的監(jiān)聽端口被改為1500。步驟:在終端輸入“vi /etc/ssh/sshd_config”,修改配置文件將Port項(xiàng)改為22,并保存退出。 /修改端口號圖11修改ssh配置文件 輸入“service ssh restart”,重啟ssh服務(wù)器。/重啟成功圖12 重啟ssh服務(wù)器再次嘗試遠(yuǎn)程登陸,但是依然失敗。圖13 登陸失敗3.4 關(guān)閉防火墻經(jīng)查證 Linux系統(tǒng)進(jìn)行遠(yuǎn)程登陸,需要關(guān)閉其防火墻。步驟:輸入“service iptables stop”查看ssh的監(jiān)聽狀態(tài)。/關(guān)閉成功圖14 關(guān)閉防火墻完成以上步驟,再次嘗試遠(yuǎn)程登陸。在putty窗口點(diǎn)擊“open”后,彈出putty的安全警告窗口單擊“是”,進(jìn)入登陸界面輸入登陸賬號和密碼,成功遠(yuǎn)程登陸。圖15 彈出警告信息圖16 成功遠(yuǎn)程登陸3.5 PUTTY公鑰登陸生成私鑰/公鑰的方法有兩種:linux的ssh-keygen或putty-keygen.(1)步驟:輸入ssh-keygen t rsa(rsa或dsa兩種加密方式)輸入密碼成功生成秘鑰。 /生成秘鑰圖17 生成并顯示秘鑰(2)修改sshd_conf配置文件。/修改文件項(xiàng)/生成秘鑰圖18 修改秘鑰文件/修改文件名(3)修改公鑰的名字,與sshd_conf的公鑰名一樣。圖19 修改秘鑰文件(4)重啟SSH服務(wù)器。/重啟ssh圖20重啟ssh(5)虛擬機(jī)中生成的公鑰共享到宿主機(jī)中,并用putty-keygen工具將公鑰文件轉(zhuǎn)為ppk格式。注:ppk格式putty才能識別。圖21 轉(zhuǎn)換私鑰格式(6)將公鑰加載到Putty中,并確認(rèn)“Open”.圖22 putty窗口載入秘鑰(7)輸入賬號和公鑰口令登陸。圖23 putty登陸成功4綜合分析4.1 putty窗口介紹PuTTY是一個Telnet、SSH、rlogin、純TCP以與串行接口連接軟件。較早的版本僅支持Windows平臺,在最近的版本中開始支持各類Unix平臺,并打算移植至Mac OS X上。除了官方版本外,有許多第三方的團(tuán)體或個人將PuTTY移植到其他平臺上,像是以Symbian為基礎(chǔ)的移動。PuTTY為一開放源代碼軟件,主要由Simon Tatham維護(hù),使用MIT licence授權(quán)。隨著Linux在服務(wù)器端應(yīng)用的普與,Linux系統(tǒng)管理越來越依賴于遠(yuǎn)程。在各種遠(yuǎn)程登錄工具中,Putty是出色的工具之一。Putty是一個免費(fèi)的、Windows 32平臺下的telnet、rlogin和ssh客戶端,但是功能絲毫不遜色于商業(yè)的telnet類工具。目前最新的版本為0.63。4.2 SSH遠(yuǎn)程協(xié)議分析介紹: 為 Secure Shell(安全外殼協(xié)議)縮寫,由 IETF 的網(wǎng)絡(luò)工作小組(Network Working Group)所制定;SSH 為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議。SSH 是目前較可靠,專為遠(yuǎn)程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。利用 SSH 協(xié)議可以有效防止遠(yuǎn)程管理過程中的信息泄露問題。SSH最初是UNIX系統(tǒng)上的一個程序,后來又迅速擴(kuò)展到其他操作平臺。SSH在正確使用時可彌補(bǔ)網(wǎng)絡(luò)中的漏洞。SSH客戶端適用于多種平臺。幾乎所有UNIX平臺包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以與其他平臺,都可運(yùn)行SSH。圖24 SSH的工作模型OPENSSH:是 SSH(SecureSHell)協(xié)議的免費(fèi)開源實(shí)現(xiàn)。它用安全、加密的網(wǎng)絡(luò)連接工具代替了telnet、ftp、rlogin、rsh和rcp工具。該協(xié)議默認(rèn)使用RSA鑰匙OpenSSH支持SSH協(xié)議的版本1.3、1.5和2。自從OpenSSH的版本2.9以來,默認(rèn)的 協(xié)議是版本2。最新OpenSSH版本:3.9。OPENSSH優(yōu)點(diǎn):1、加密方式傳輸2、傳輸數(shù)據(jù)經(jīng)過壓縮,可加快傳輸速3、可實(shí)現(xiàn)遠(yuǎn)程控制、數(shù)據(jù)傳輸(拷貝與FTP方式)SSH認(rèn)證協(xié)議:RSA和DSA認(rèn)證協(xié)議的基礎(chǔ)是一對專門生成的密鑰,分別叫做專用密鑰和公用密鑰。在許多情況下,有可能不必手工輸入密碼就能建立起安全的連接。SSH協(xié)議第一版支持基于RSA的認(rèn)證。SSH協(xié)議第二版支持使用RSA或DSA算法。從客戶端來看,SSH提供兩種級別的安全驗(yàn)證。第一種級別(基于口令的安全驗(yàn)證)圖25基于口令的安全驗(yàn)證第二種級別(基于密匙的安全驗(yàn)證)圖26基于密匙的安全驗(yàn)證4.3 VMWARE的網(wǎng)絡(luò)模式1)bridge模式是最簡單的,使用橋接模式后虛擬機(jī)和真實(shí)主機(jī)的關(guān)系就好像兩臺接在一個hub上的電腦,想讓他們倆進(jìn)行通訊,你需要在虛擬機(jī)上配置的IP地址與真實(shí)機(jī)在同一個網(wǎng)段上,從下圖中可以看出,如果你不配置虛擬機(jī),虛擬機(jī)也沒有辦法得到DHCP分到的IP地址,所以只能使用169.254.這個段(2)Host-only模式用來建立隔離的虛擬機(jī)環(huán)境,在這種模式下,虛擬機(jī)與真實(shí)主機(jī)通過虛擬私有網(wǎng)絡(luò)進(jìn)行連接,只有同為Host-only模式下的且在一個虛擬交換機(jī)的連接下才可以互相訪問,外界無法訪問。host only模式只能使用私有IP,IP,gateway,DNS都由VMnet 1來分配。(3)NAT(network address translation)模式其實(shí)可以理解成為是方便地使虛擬機(jī)連接到公網(wǎng),代價是橋接模式下的其他功能都不能享用。凡是選用NAT結(jié)構(gòu)的虛擬機(jī),均由VMnet 8提供IP,gateway,DNS。(4)custom上是一個特殊的網(wǎng)卡(包含以上這些)可以根據(jù)需要用這些網(wǎng)卡組建一個局域網(wǎng)擬機(jī)中的網(wǎng)絡(luò)支持在主機(jī)上通過一個虛擬交換機(jī)或者網(wǎng)絡(luò)適配器完成,它實(shí)現(xiàn)幾種設(shè)備: VMnet0 用于橋接網(wǎng)絡(luò)。VMnet1 用于僅為主機(jī)網(wǎng)絡(luò)。VMnet2 用于定制網(wǎng)絡(luò)。VMnet3 用于定制網(wǎng)絡(luò)。VMnet4 用于定制網(wǎng)絡(luò)。VMnet5 用于定制網(wǎng)絡(luò)。VMnet6 用于定制網(wǎng)絡(luò)。VMnet7 用于定制網(wǎng)絡(luò)。VMnet8 用于網(wǎng)絡(luò)地址翻譯(NAT)網(wǎng)絡(luò)。 4.4 Linux防火墻介紹:iptables 是與最新的 3.5 版本 Linux 核集成的 IP 信息包過濾系統(tǒng)。如果 Linux 系統(tǒng)連接到因特網(wǎng)或 LAN、服務(wù)器或連接 LAN 和因特網(wǎng)的代理服務(wù)器, 則該系統(tǒng)有利于在 Linux 系統(tǒng)上更好地控制 IP 信息包過濾和防火墻配置。防火墻在做信息包過濾決定時,有一套遵循和組成的規(guī)則,這些規(guī)則存儲在專用的信息包過濾表中,而這些表集成在 Linux 核中。在信息包過濾表中,規(guī)則被分組放在我們所謂的鏈(chain)中。而netfilter/iptables IP 信息包過濾系統(tǒng)是一款功能強(qiáng)大的工具,可用于添加、編輯和移除規(guī)則。1、netfilter 組件也稱為核空間(kernelspace),是核的一部分,由一些信息包過濾表組成,這些表包含核用來控制信息包過濾處理的規(guī)則集。 2、iptables 組件是一種工具,也稱為用戶空間(userspace),它使插入、修改和除去信息包過濾表中的規(guī)則變得容易。除非您正在使用 Red Hat Linux 7.1 或更高版本,否則需要下載該工具并安裝使用它。圖27 iptables運(yùn)作過程5總結(jié)隨著Linux在服務(wù)器端應(yīng)用的普與,Linux系統(tǒng)管理越來越依賴于遠(yuǎn)程。所以熟知配置好遠(yuǎn)程登陸機(jī)制是當(dāng)今網(wǎng)絡(luò)管理的重要手段。本次實(shí)驗(yàn),我通過從改變虛擬機(jī)網(wǎng)絡(luò)連接模式,到修改實(shí)驗(yàn)機(jī)網(wǎng)絡(luò)配置,再到修改SSH服務(wù)器配置文件和iptables的一些設(shè)置。實(shí)驗(yàn)步驟登陸結(jié)果修改網(wǎng)絡(luò)連接模式修改實(shí)驗(yàn)機(jī)網(wǎng)絡(luò)信息失敗修改網(wǎng)絡(luò)連接模