A基于Linux的遠程管理系統(tǒng)服務器端的實現(xiàn)_第1頁
A基于Linux的遠程管理系統(tǒng)服務器端的實現(xiàn)_第2頁
A基于Linux的遠程管理系統(tǒng)服務器端的實現(xiàn)_第3頁
A基于Linux的遠程管理系統(tǒng)服務器端的實現(xiàn)_第4頁
A基于Linux的遠程管理系統(tǒng)服務器端的實現(xiàn)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于基于 linuxlinux 的遠程管理系統(tǒng)服務器端的實現(xiàn)的遠程管理系統(tǒng)服務器端的實現(xiàn)摘要摘要該課題基于 linux 操作系統(tǒng),主要目的是使系統(tǒng)管理員的遠程管理工作更加方便、簡單和友好。實現(xiàn)的主要功能有文件操作、命令操作、系統(tǒng)操作、進程操作和網絡操作,這些基本上涵蓋了系統(tǒng)管理的各個方面。在設計上,采用了 b/s 結構,使得該系統(tǒng)可以方便的進行升級和方便用戶從各種平臺上對服務器進行訪問;采用了安全訪問技術,使得訪問和管理更加安全;采用了簡單和美觀的界面顯示技術,使得用戶的瀏覽快捷和舒適。該課題開發(fā)的系統(tǒng)需要安裝運行在 linux 系統(tǒng)的上,系統(tǒng)管理員可以在遠程利用瀏覽器進行登錄,通過驗證后就可

2、以方便的對系統(tǒng)的運行狀態(tài)進行查看,對系統(tǒng)進行管理,對網絡進行配置,對數(shù)據(jù)進行分析,要注意的是登錄到本系統(tǒng)必須用遠程服務器的 root 權限和密碼,而且為了保證系統(tǒng)的安全,防止出現(xiàn)意外事件,管理員只能操作特定的任務。該課題的主要意義在于可以運用 php進行系統(tǒng)管理,開發(fā)的系統(tǒng)可以使系統(tǒng)管理員方便的管理遠程系統(tǒng)。關鍵詞關鍵詞:遠程管理;b/s 結構;安全訪問;linux;php the implement on the server of linux-based remote management system abstractthe main purpose of the topic based

3、 on the linux operating system is to enable remote management of the system administrator more convenient, simple and friendly. the main functions achieved are file operations, command operations, system operations, process operations and network operations, that are basically covers the management

4、of the system in all its aspects. in design terms, it uses the b / s structure, which makes it easy and convenient for users upgrading and visiting from a variety of platforms; it uses the safe access technology, which make management and visiting more secure; it uses a simple and beautiful interfac

5、e display technology that enables the user to browse it fast and comfortable. the system developed in the topic need be installed on the linux operating system. system administrators can use the remote browser for landing, after validating successfully, then can facilitate the operation of examining

6、 the system state, manage the system, configure network, analysis data. it should be noted that the landing on the system must use the root password of a remote server, and to ensure the safety of the system to prevent accidents, administrators can only operate a specific tasks. the main significanc

7、e of the topic lies in the using php to manage system, and that development of the system will enable the system administrator to facilitate the management of remote system.key words: remote management; b/s structure; safe access; linux; php目目 錄錄論文總頁數(shù):23 頁1引言.11.1課題背景.11.2國內外研究現(xiàn)狀.11.3本課題研究的意義.11.4本課

8、題的研究方法.22需求分析.22.1任務概述.22.1.1 開發(fā)目標.22.1.2 開發(fā)工具.22.1.3 開發(fā)環(huán)境.32.1.4 開發(fā)人員.32.1.5 運行環(huán)境.32.1.6 條件限制.32.2功能分析.32.3工作流程.42.4性能分析.53總體設計.53.1系統(tǒng)架構.53.2模塊劃分.64具體實現(xiàn).74.1安全訪問模塊.74.2文件操作模塊.104.3命令操作模塊.114.4進程操作模塊.134.5系統(tǒng)操作模塊.144.6網絡操作模塊.165系統(tǒng)測試.185.1安全訪問模塊.185.2文件操作模塊.185.3命令操作模塊.195.4進程操作模塊.195.5系統(tǒng)操作模塊.195.6網絡操

9、作模塊.19結 論.20參考文獻.20致 謝.22聲 明.231 1引言引言1.11.1 課題背景課題背景遠程管理是在網絡上由一臺電腦(主控端 remote/客戶端)遠距離去控制另一臺電腦(被控端 host/服務器端)的技術,這里的遠程不是字面意思的遠距離,一般指通過網絡控制遠端電腦,不過大多數(shù)時候我們所說的遠程控制往往指在局域網中的遠程控制而言。當操作者使用主控端電腦控制被控端電腦時,就如同坐在被控端電腦的屏幕前一樣,可以啟動被控端電腦的應用程序,可以使用被控端電腦的文件資料,甚至可以利用被控端電腦的外部打印設備(打印機) 和通信設備(調制解調器或者專線等)來進行打印和訪問互聯(lián)網,就像你利用

10、遙控器遙控電視的音量、變換頻道或者開關電視機一樣。不過,有一個概念需要明確, 那就是主控端電腦只是將鍵盤和鼠標的指令傳送給遠程電腦,同時將被控端電腦的屏幕畫面通過通信線路回傳過來。也就是說,我們控制被控端電腦進行操作似乎是 在眼前的電腦上進行的,實質是在遠程的電腦中實現(xiàn)的,不論打開文件,還是上網瀏覽、下載等都是存儲在遠程的被控端電腦中的。對于剛剛接觸 linux 的系統(tǒng)管理員來說,正確高效地完成各種關鍵的系統(tǒng)配置簡直是一件不可能的任務。即使是一個很有經驗的 linux 的管理員,也常常會為某些復雜的配置文件的格式而苦惱。因此擁有一個 linux 上的 gui 管理工具一直是廣大 unix 愛好

11、者的美好愿望。雖然 linux 自帶有 ssh 字符界面遠程管理工具,但對于 ssh 不斷升級所帶來的困難和圖形界面友好、b/s 結構的易用,還是略顯笨拙和枯燥,web 管理方式使得本軟件同時具有本地和遠程管理的能力,訪問控制和 ssl 支持為遠程管理提供了足夠的安全性。所以我們編寫本軟件以更好、更容易的管理遠程 linux 系統(tǒng),從而減少系統(tǒng)管理員的負擔。1.21.2 國內外研究現(xiàn)狀國內外研究現(xiàn)狀從文獻和網絡資源來看,國外有過類似的軟件,比如webmin、phpwebmin。而這些軟件都是英文,幾乎沒有中文版本,許多國內系統(tǒng)管理員不太習慣,況且有些軟件是用 perl 語言來寫的,在效率和使用

12、廣度上有寫不太滿意。1.31.3 本課題研究的意義本課題研究的意義對于系統(tǒng)管理員來說,管理整個系統(tǒng)是十分復雜和煩躁的工作,尤其服務器的遠程管理,對系統(tǒng)管理人員來說是十分重要的。本軟件的開發(fā)就是為了方便系統(tǒng)管理員對本地和遠程安裝了 linux 系統(tǒng)的服務器進行管理,增加管理的方便性,利用 b/s 結構也從另外一方面減少了管理員的勞動量。管理員利用瀏覽器在遠程登錄后,可以方便的對服務器進行運行狀態(tài)的查看,對網絡服務進行配置,對一些數(shù)據(jù)進行分析,而且可以對異?,F(xiàn)象做出快速的反應。從 windows 環(huán)境的管理轉到 linux 環(huán)境的管理時所面臨的挑戰(zhàn)之一是,您需要學習利用新的工具。作為一個管理員,您

13、希望理解操作系統(tǒng)的細節(jié)以發(fā)揮它的最大功效。但是,當您還處在學習階段時,就需要去完成具體的工作。為加速您駕馭 linux 的進度,我們安裝一個這樣的遠程管理程序,對于系統(tǒng)管理員來說是十分方便的。1.41.4 本課題的研究方法本課題的研究方法本系統(tǒng)的開發(fā)要求采用 b/s 結構,模擬 webmin 進行設計與開發(fā)。因此,本次畢業(yè)設計應首先分析 webmin 的相關功能,結合本次畢業(yè)設計的相關要求寫出需求分析;其次,綜合運用以前所學的相關知識選擇所熟悉的開發(fā)工具進行本畢業(yè)設計的開發(fā);在設計中以需求分析為基礎,寫出系統(tǒng)開發(fā)計劃、實現(xiàn)流程及相關問題的實現(xiàn)方法;同時,在開發(fā)設計與實現(xiàn)中,要保存好相關的設計文

14、擋,為后面的畢業(yè)論文的寫作準備材料;最后,系統(tǒng)開發(fā)完畢后,進行調試和試運行,做好調試和試運行的相關記錄,也為后面的畢業(yè)論文的寫作準備材料。主要的方法有:首先只寫文件操作部分以了解該系統(tǒng)的工作方式及系統(tǒng)的大致面貌,然后逐步增加其他的功能與模塊,最后對整個系統(tǒng)進行修飾整理,從而完該系統(tǒng)。2 2需求分析需求分析2.12.1 任務概述任務概述.1 開發(fā)目標開發(fā)目標1.能夠安全的登錄遠程主機,并在管理過程中進行安全的交互。2.能夠對遠程主機的文件系統(tǒng)進行管理,可以對文件或者文件夾進行查看、 創(chuàng)建、刪除、移動、上傳等操作。3.能夠發(fā)送命令到遠程主機以進行解釋和運行并把運行的結果發(fā)送回來。4

15、.能夠對遠程主機的正在運行的進程進行查看和管理。5.能夠對遠程主機系統(tǒng)進行管理,可以查看系統(tǒng)信息、關機或重啟、修改密碼、管理用戶和組、管理軟件包等。6.能夠對遠程主機的網絡服務進行管理,可以進行管理 apache 服務器,管理 dns 服務器,管理 mysql 服務器,管理 ssh 服務器 管理 dhcp服務器,查看網絡參數(shù),配置網絡參數(shù)等操作。7.使得遠程管理更加人性化、更加簡單、更加方便、更加友好。8.要使得該軟件容易升級和修改、擴展,容易被使用。.2 開發(fā)工具開發(fā)工具開發(fā)語言主要使用 php、html, 在 php 不能解決的地方使用 shell 或c。.

16、3 開發(fā)環(huán)境開發(fā)環(huán)境操作系統(tǒng):fedora core 5php 引擎:php 5.1web 服務器:apache2瀏覽器:mozilla firefox 2.0.4 開發(fā)人員開發(fā)人員孫澤璽,主要負責服務器端的開發(fā)。徐斌,主要負責客戶端的開發(fā)。.5 運行環(huán)境運行環(huán)境該軟件運行在安裝有 linux 操作系統(tǒng)、apache 服務器的遠程主機上。運行之前需要開啟 apache 服務器,并進行一些設置。.6 條件限制條件限制本系統(tǒng)登錄必須以遠程服務器的 root 權限和密碼登錄,而且為了保證系統(tǒng)的安全,防止出現(xiàn)以外事件,管理員只能操作特定的任務。如果該系統(tǒng)

17、安裝在其他的操作系統(tǒng)中,例如 windows 操作系統(tǒng),那么會用某些模塊不能運行或者不能正確運行。2.22.2功能分析功能分析根據(jù)該課題的要求與目標,可以了解到該系統(tǒng)主要有以下功能:1、安全訪問安全訪問是指登錄時要利用 https 協(xié)議、ssl 套節(jié)字登錄到遠程主機,不能被黑客或者惡意攻擊者探測到登錄的用戶名和密碼,并且在管理過程中也要采取安全訪問的技術,以防止重要數(shù)據(jù)的丟失、截取或者被攻擊。2、文件操作文件操作主要是對文件系統(tǒng)進行管理,主要包括查看文件或目錄信息,新建文件或目錄,刪除文件或目錄,復制文件或目錄,運行文件,上傳文件,下載文件等等。3、命令操作命令操作就是在遠程主機把命令發(fā)送過去

18、,服務器對各種 shell 命令的解釋與執(zhí)行,并且把執(zhí)行后的結果再發(fā)送到遠程主機顯示出來。4、進程操作進程操作就是對遠程主機的正在運行的進程進行管理,主要包括查看或終止正在運行的進程,查看開啟的服務列表(端口號)、對開啟服務進行管理、查看當前系統(tǒng)所有正在運行的進程并且可以對進程進行相關操作。5、系統(tǒng)操作系統(tǒng)操作就是對遠程主機的 linux 系統(tǒng)進行的系統(tǒng)方面的管理,主要包括關機或重啟,修改密碼,查看系統(tǒng)信息,管理用戶和組,管理軟件包。6、網絡操作網絡操作就是對遠程主機的網絡服務進行的管理,主要包括管理 apache 服務器,管理 dns 服務器,管理 mysql 服務器,管理 ssh 服務器,

19、 管理 dhcp 服務器,查看網絡參數(shù),配置網絡參數(shù)。2.32.3 工作流程工作流程根據(jù)對該系統(tǒng)的設計目標和要求,可以確定從總體上,該系統(tǒng)的工作流程分為三大部分:認證過程、管理過程、注銷過程。整個系統(tǒng)的工作流程如圖 1:圖 1 工作流程1、認證過程管理員端通過瀏覽器登錄此遠程管理系統(tǒng),輸入此系統(tǒng)用戶名與密碼,如果用戶名或密碼錯誤則顯示錯誤信息,并提示重新輸入;正確則進入此管理系統(tǒng),獲得一定權限,管理系統(tǒng)服務。該認證過程要在安全的情況下進行,不能以明文進行傳輸。2、管理過程當用戶正確進入系統(tǒng)后,即可進行系統(tǒng)管理,點擊某管理模塊,設置某項服務,系統(tǒng)通過網絡發(fā)送命令到 web 服務器,與服務器獲得交

20、互,服務器通過php 引擎解析獲得命令,調用相應腳本并執(zhí)行,獲得結果返回到遠程主機的瀏覽器。3、注銷過程管理員完成遠程主機更新或管理后,可點擊注銷以退出本遠程管理系統(tǒng),系統(tǒng)發(fā)送注銷命令到服務器,服務器使所登錄用戶失去管理權限,切斷用戶與服務器連接,返回到管理系統(tǒng)登錄頁面。2.42.4 性能分析性能分析 根據(jù)該課題的要求與目標、現(xiàn)在的技術狀況,可以確定該系統(tǒng)在性能方面要達到以下目標:1.該系統(tǒng)能夠處理多個用戶同時連接到服務器的情況而不出什么問題(比如100 個) 。2.該系統(tǒng)能夠及時地返回執(zhí)行的結果,并且當命令不能正確執(zhí)行時,能夠進行提示。3.該系統(tǒng)要在頁面非正常情況下關閉時,能夠正確的識別,并

21、自動的斷開與遠程客戶機的連接。4.該系統(tǒng)要有防止訪問單獨文件的情況,不管要訪問什么樣的文件都必須通過主頁面。5.對于在系統(tǒng)執(zhí)行過程中出現(xiàn)的異常,程序能夠正確的識別并顯示相關的信息進行提示。6.該程序要防止不正確或者非法命令的執(zhí)行,防止在程序運行過程中,因為執(zhí)行了某個命令而導致整個系統(tǒng)的崩潰或者連接的斷開或者遠程服務器的死機。 3 3總體設計總體設計3.13.1 系統(tǒng)架構系統(tǒng)架構因為該系統(tǒng)采用 b/s 模式并且進行遠程管理,所以整個系統(tǒng)可以分為五大模塊,即客戶端、internet、linux 操作系統(tǒng)、apache 服務器、php 解釋器??蛻舳耸菫g覽器,客戶可以在遠程利用瀏覽器登錄服務器進行管

22、理遠程linux 系統(tǒng)。internet 是連接服務器和客戶端的媒介,用來傳輸命令和數(shù)據(jù)。linux 操作系統(tǒng)運行在遠程服務器上,管理整個系統(tǒng),開發(fā)的程序也是運行在 linux 操作系統(tǒng)上。apache 服務器是 web 服務器用來傳輸 web 頁面,并調用 php 引擎對 php 腳本進行解釋和執(zhí)行,并把結果傳輸?shù)竭h程瀏覽器。php 解釋器是用來對 php 腳本進行解釋執(zhí)行的,php 解釋器根據(jù) apache 的不同調用參數(shù)對不同的腳本進行解釋,并把執(zhí)行后得到的 html 文件返回給apache 服務器。該系統(tǒng)的框架可以用圖 2 表示:internetlinux服務器pc/瀏覽器apache

23、/php引擎php腳本圖 2 系統(tǒng)架構3.23.2 模塊劃分模塊劃分根據(jù)前面的需求分析和系統(tǒng)架構可知,該系統(tǒng)可以劃分為六大模塊如圖3。圖 3 系統(tǒng)模塊1、 安全訪問模塊主要負責客戶端對服務器端的安全訪問,主要采用訪問控制技術和加密技術。在服務器端的文件系統(tǒng)內采用訪問控制技術,在服務器端和客戶端的傳輸過程中采用加密技術。2、 文件操作模塊主要負責對遠程 linux 操作系統(tǒng)的文件系統(tǒng)進行操作,這是操作遠程主機的基礎。當首次進行文件操作時,界面顯示該系統(tǒng)腳本文件所在的目錄和文件的屬性,并在其后顯示可以進行操作的命令按鈕,并且在界面的上方有轉換目錄的文本框和命令。主要利用 php 的 cookie

24、傳遞命令,在具體操作方面主要利用 php 的文件 io 函數(shù)來實現(xiàn),在顯示方面,編寫了一個格式類,可以調用該類的相應函數(shù)來格式或者顯示數(shù)據(jù)。3、 命令操作模塊主要負責對客戶端傳送過來的 shell 命令進行解釋和執(zhí)行,并及時地把結果返回過去,做這一模塊時,一定要注意結果返回的及時性和錯誤命令的正確提示。主要利用 html 的 post 方法把命令傳輸?shù)椒掌?,然后利?php 的系統(tǒng)函數(shù) system、exec、passthru 的函數(shù)來執(zhí)行相應的命令并把執(zhí)行的結果傳輸?shù)綖g覽器。4、 進程操作模塊主要負責對遠程 linux 操作系統(tǒng)的進程進行顯示,并能對每個進程進行操作,例如殺死某個進程。主要

25、利用 system 函數(shù)執(zhí)行 shell 命令 ps 和 grep 得到進程列表,并在瀏覽器端用表格顯示出來,利用 posix_kill 函數(shù)把某個進程殺死。5、 系統(tǒng)操作模塊主要負責對 linux 的主要系統(tǒng)管理的操作,可以利用這些系統(tǒng)操作對遠程linux 系統(tǒng)進行簡單的系統(tǒng)管理??傮w思路為,利用 php 的_post 數(shù)組得到相應的傳輸過來的命令,然后利用 php 的 system 函數(shù)執(zhí)行相應的 shell 命令,并把結果傳輸?shù)椒掌鳌?、 網絡操作模塊主要對遠程 linux 系統(tǒng)的網絡進行簡單的管理和配置。實現(xiàn)的總體思路為,在服務器端修改某些跟網絡管理相關的文件的訪問權限以使 apac

26、he 可以訪問和修改這些文件,利用 php 的_post 數(shù)組得到相應的傳輸過來的網絡操作命令,然后利用 php 的 system 函數(shù)執(zhí)行相應的 shell 命令,并把結果傳輸?shù)椒掌鳌I虡I(yè)源代碼,全套計算機畢業(yè)設計免費下載 http:/更多全套設計聯(lián)系 qq:1042897696最新設計大全 http:/ 4具體實現(xiàn)具體實現(xiàn)4.14.1 安全訪問模塊安全訪問模塊安全訪問主要通過本機訪問控制文件和 php 腳本身份驗證來進行實現(xiàn)。1、主機訪問控制文件在遠程主機中,要開啟 apache 服務器,并在 apache 的配置文件中添加要訪問的目錄的訪問控制選項。之后在要訪問的目錄中建立訪問控制文件

27、.htaccess 和.remoteadminpasswd。.htaccess 文件定義了用戶名和密碼文件的路徑和其他一些控制選項。.remoteadminpasswd 文件有用戶名和加密的密碼。apache 的配置是為了實現(xiàn)目錄保護和基本驗證,但為了提高用戶的權限,還需要對服務器進行一些配置。1)查看 httpd.conf 文件找到 user 字段,查看 apache 啟動用戶(默認為apache) ;2)編輯/etc/passwd 文件,找到 apache 用戶行,修改其 shell(默認為/bin/nologin 或/bin/false)為/bin/bash;3)編輯/etc/sudoe

28、rs 文件,在文件中 root all=(all)all 字段的下一行添加 apache all=nopassword:all,使得 apache 用戶能夠通過 sudo 命令執(zhí)行所有命令。經過此配置后,apache 用戶只要使用 sudo 命令即可獲得 root 權限。為了保證系統(tǒng)的安全性,在此對 apache web 服務器的目錄執(zhí)行訪問控制 ,使用.htaccess 訪問文件和 htpasswd 程序為一個目錄建立 acl,來對用戶進行身份驗證,并在.htaccess 文件中設置使用 ssl 連接,完善安全性。假設 phpwebmin 位于/var/www/phpwebmin 目錄中。1

29、)配置 httpd.conf用 vi 編輯器打開 apache 配置文件 httpd.conf(默認在/etc/httpd/conf/目錄下) ,找到字段,在下面的屬性設置中添加或修改allowoverride all /此參數(shù)設置哪些目錄使用.ltaccess 進行保護;2)為所保護目錄建立 acl進入 phpwebmin 目錄,cd /var/www/phpwebmin,在此目錄下建立隱藏文件.htaccess(必須在 htaccess 文件前添加一個點號,如果不這樣做,就無法建立acl,因為點號表示建立一個隱藏文件) vi .htaccess,在.htaccess 文件中輸入如下代碼:s

30、slrequiressl /使用ssl安全連接authname php webmin/驗證名稱authtype basicrequire valid-user /允許password文件中的所有用戶訪問authuserfile /var/www/phpwebmin/.phpwebminpasswd /身份數(shù)據(jù)文件;3)創(chuàng)建用戶身份驗證數(shù)據(jù)庫在命令行下輸入以下口令創(chuàng)建用戶身份驗證數(shù)據(jù)庫文件,會要求你為用戶admin 創(chuàng)建密碼:htpasswd -c /var/www/phpwebmin/.phpwebminpasswd adminnew password:re-type new password

31、: 建立后的.phpweminpasswd 文件內容類似于:admin:op96dpmxtky5w /用戶名:md5 加密后的密碼若系統(tǒng)沒有安裝 htpasswd,也可在網上生成用戶名密碼后放入.phpwebminpasswd 文件這樣,就已經為 apache 服務器建立了一個用戶賬號數(shù)據(jù)庫,并對phpwebmin 目錄實行了目錄保護,并實現(xiàn)了用戶基本驗證,需要用安全連接https:/localhost/phpwebmin/進行訪問,訪問過程中會彈出驗證對話框。2、php 腳本的身份驗證利用_get 數(shù)組判斷是登錄還是注銷,如果是登錄,則驗證密碼是否正確,如果正確則進入管理界面,并在客戶端設置

32、 cookie 以記錄登錄信息,否則提示相應的錯誤信息。驗證流程如圖 4:圖 4 身份驗證流程身份驗證的主要代碼如下:if ($_getaction = logout) setcookie(adminpass, );echo;echo 注銷成功.三秒后自動退出或單擊這里退出程序界面 >>>ob_end_flush();exit;if ($_postdo = login) $thepass=trim($_postadminpass);if($adminpass = $thepass) setcookie(adminpass, $thepass, time() + (1 * 24

33、 * 3600);echo ;echo 登錄成功.三秒后自動跳轉或單擊這里進入程序界面 >>>exit;elseecho 密碼錯誤,請重新輸入;if(isset($_cookieadminpass) if ($_cookieadminpass != $adminpass) loginpage();else loginpage();4.24.2 文件操作模塊文件操作模塊文件操作有很多類型的操作,主要包括查看文件或目錄信息,新建文件或目錄,刪除文件或目錄,復制文件或目錄,運行文件,上傳文件,下載文件。文件的操作和在本地操作文件一樣,只是形式有所不同,當用戶選擇了一個或部分文件之后

34、,就可以點擊相應的命令按鈕,從而產生相應的動作。主要利用 php 的 cookie 傳遞命令,在具體操作方面主要利用 php 的文件 io 函數(shù)來實現(xiàn),在顯示方面,編寫了一個格式類,可以調用該類的相應函數(shù)來格式或者顯示數(shù)據(jù)。文件操作流程如圖 5:圖 5 文件操作流程編輯文件和文件改名的主要代碼如下:/ 編輯文件if ($_postdo = doeditfile) if (!empty($_posteditfilename) $filename=$editfilename;$fp=fopen($filename,w);echo $msg=fwrite($fp,$_postfilecontent)

35、 ?寫入文件成功! : 寫入失敗!;fclose($fp); else echo 請輸入想要編輯的文件名!;/ 編輯文件屬性elseif ($_postdo = editfileperm) if (!empty($_postfileperm) $fileperm=base_convert($_postfileperm,8,10);echo (chmod($dir./.$file,$fileperm) ? 屬性修改成功! : 修改失敗!;echo 文件 .$file. 修改后的屬性為: .substr(base_convert(fileperms($dir./.$file),10,8),-4);

36、 else echo 請輸入想要設置的屬性!;商業(yè)源代碼,全套計算機畢業(yè)設計免費下載 http:/更多全套設計聯(lián)系 qq:1042897696最新設計大全 http:/ 命令操作模塊命令操作模塊命令操作即是對各種 shell 命令的解釋與執(zhí)行,這主要是通過 php 的system、passthru 等函數(shù)來執(zhí)行。可在此模塊中進行進程操作和系統(tǒng)操作等等,注意使用的是 web 模式,無法執(zhí)行交互式 shell 命令。在設計中,使用一個表單獲得 commond 變量,提交給 system 函數(shù)后執(zhí)行 system(“sudo $commond”),并返回結果。命令操作流程如圖 6圖 6 命令操作流程

37、部分代碼如下:if (!empty($_postcommand) if ($execfunc=system) system(sudo .$_postcommand); elseif ($execfunc=passthru) passthru(sudo .$_postcommand); elseif ($execfunc=exec) $result = exec(sudo .$_postcommand);echo $result; elseif ($execfunc=shell_exec) $result=shell_exec(sudo .$_postcommand);echo $result;

38、 elseif ($execfunc=popen) $pp = popen(sudo .$_postcommand, r);$read = fread($pp, 2096);echo $read;pclose($pp); elseif ($execfunc=wscript) $wsh = new com(w.scr.ip.t.she.ll) or die(php create com wshshell failed);$exec = $wsh-exec (cm.d.e.xe /c .sudo .$_postcommand.);$stdout = $exec-stdout();$stroutpu

39、t = $stdout-readall();echo $stroutput; else system(sudo .$_postcommand);4.44.4 進程操作模塊進程操作模塊進程操作主要包括查看或終止正在運行的進程,查看開啟的服務列表、對開啟服務進行管理、查看當前系統(tǒng)所有正在運行的進程并且可以對進程進行相關操作。這主要通過執(zhí)行 ps aux 來獲取進程列表,再用表格來表示出來,并且可以 kill 掉每一個進程。進程操作流程如圖 7:圖 7 進程操作流程主要代碼如下:if ($_getaction = process)if(!$win) $handler = ps -aux.($grep

40、? | grep .addslashes($grep).:);else $handler = tasklist;$ret = myshellexec($handler);if(!$ret) echo cant execute .$handler.!;elseif(empty($processes_sort) $processes_sort = $sort_default;$parsesort = parsesort($processes_sort);if (!is_numeric($parsesort0) $parsesort0 = 0;$k = $parsesort0;if($parseso

41、rt1 != a) $y=;else $y=;$ret = htmlspecialchars($ret);if (!$win)if ($pid)if (is_null($sig) $sig = 9;echo sending signal .$sig. to #.$pid. ;if (posix_kill($pid,$sig) echo ok.;else echo error.;4.54.5 系統(tǒng)操作模塊系統(tǒng)操作模塊系統(tǒng)操作主要包括關機或重啟,修改密碼,查看系統(tǒng)信息,管理用戶和組,管理軟件包。這主要通過更改 apache 的權限和執(zhí)行命令的 shell,并把apache 添加到 sudoers

42、文件里面成為可以執(zhí)行 sudo 命令的一員。關機和重啟,可通過管理員點擊 shutdown、reboot 按鈕,從而調用system 函數(shù)執(zhí)行內置的關機、重啟命令,也可在表單中輸入其他關機或重啟命令并運行。查看系統(tǒng)信息,通過 switch 判斷提交的命令,并調用 system 函數(shù)執(zhí)行內置命令如 unamea、fdisk l 等,包括查看 cpu 信息、查看分區(qū)信息、查看內核。管理用戶和組,可以查看系統(tǒng)擁有用戶和組,并通過簡單的表單提交,進行添加、刪除用戶或組的操作。系統(tǒng)操作流程如圖 8:圖 8 系統(tǒng)操作流程查看系統(tǒng)信息和管理用戶及組的主要代碼如下:/查看系統(tǒng)信息switch($_postin

43、fo)case cpu info:$exec=sudo cat /proc/cpuinfo;break;case disk info:$exec=sudo fdisk -l;break;case kernel version:$exec=sudo uname -a;if($exec) system($exec);/管理用戶和組$commond=sudo groupdel .$_postgroup;echo $commond;if($commond) system($commond); $commond=sudo groupadd .$_postgroup;echo $commond;if($c

44、ommond) system($commond); switch($_postpassmode)case 0:$passwd=;break;case 1:$passwd= -p .$_postencpass;if(!$_posthome)$home= -d .$_posthome;$user=$_postuser;$uid= -u .$_postuid;$shell= -s .$_postshell;$commond=sudo useradd .$_postuser. -d .$_posthome. -s .$_postshell. -u .$_postuid. -p .$_postencpa

45、ss;echo $commond;if($commond) system($commond); $commond=sudo userdel .$_postuser;echo $commond;if($commond) system($commond); 4.64.6 網絡操作模塊網絡操作模塊網絡操作主要包括管理 apache 服務器,管理 php 服務器,管理 mysql 服務器,管理 ssh 服務器,管理 dhcp 服務器,查看網絡參數(shù),配置網絡參數(shù)。查看網絡參數(shù)主要包括查看網絡連接狀況、路由表、網卡接口信息、網絡統(tǒng)計數(shù)據(jù)、arp 暫存信息、基本網絡配置參數(shù)。配置網絡參數(shù)主要包括配置基本網絡

46、參數(shù)、添加和刪除路由。管理 php 服務器重要包括查看 php 環(huán)境變量、php 信息、配置 php。管理 apache 服務器主要包括停止服務器和配置服務器。管理 mysql 服務器主要包括數(shù)據(jù)庫查詢和備份,服務器的啟動、停止和重啟。管理 ssh 服務器主要包括該服務器的啟動、停止和重啟。管理 dhcp 服務器主要包括該服務器的啟動、停止和重啟。進程操作流程如圖 9:圖 9 網絡操作流程配置網絡參數(shù)的主要代碼如下:switch($_postconfig)case configip:$exec=ifconfig eth0 .$ip. netmask .$mask. up;$exec1=rout

47、e add default gw .$gw;$flag=1;break;case configdns:$dns=1;break;case addhostroute:$exec=route add -host .$host. gw .$rgw;break;case addnetroute:$exec=route add -net .$netroute. netmask .$nmask. gw .$nrgw; break;case delhostroute:$exec=route del -host .$dhost. gw .$drgw;break;case delnetroute:$exec=r

48、oute del -net .$dnetroute. netmask .$dnmask. gw .$dnrgw; break;if($exec) system(sudo $exec,&$ret);if(!$ret)echo changed successfullyn;elseecho changed unsuccessfullyn;if($flag) system(sudo $exec1,&$ret1);$flag=0;if(!$ret1)echo getway changed successfullyn;elseecho getway changed unsuccessfullyn;if($

49、dns) $fd=fopen(/etc/resolv.conf, w+);if ($fd) if($dns1)fwrite($fd, nameserver $dns1n); if($dns2)fwrite($fd, nameserver $dns2n); if($dns3)fwrite($fd, nameserver $dns3n); elseecho open file error!n;$dns=0;if(!$dns1 & !$dns2 & !$dns3)echo dns has not changed!;elseecho dns has changed!;fclose($fd);5 5系統(tǒng)測試系統(tǒng)測試5.15.1安全訪問模塊安全訪問模塊當用戶在遠程主機登錄時,會出現(xiàn)下圖讓用戶輸入用戶名和密碼。之后還會出現(xiàn) php 的驗證頁面,需要再一次輸入另外的密碼。當用戶點擊注銷按鈕后,用戶就會失去管理的頁面,又會回到 php 的身份驗證頁面,當用戶需要再一次登錄遠程服務器進行管理時,可以輸入密碼登錄進行管理。安全訪問模塊運行良好。登錄界面如圖 10:圖 10 登錄5.25.2文件操作模塊文件操作

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論