远程系统服务端的原理与开发
摘要
该课题基于 Linux 操作系统,主要目的是使系统管理员的远程管理工作更加
方便、简单和友好。实现的主要功能有文件操作、命令操作、系统操作、进程操
作和网络操作,这些基本上涵盖了系统管理的各个方面。在设计上,采用了 B/S
结构,使得该系统可以方便的进行升级和方便用户从各种平台上对服务器进行访
问;采用了安全访问技术,使得访问和管理更加安全;采用了简单和美观的界面
显示技术,使得用户的浏览快捷和舒适。
该课题开发的系统需要安装运行在 Linux 系统的上,系统管理员可以在远程
利用浏览器进行登录,通过验证后就可以方便的对系统的运行状态进行查看,对
系统进行管理,对网络进行配置,对数据进行分析,要注意的是登录到本系统必
须用远程服务器的 root 权限和密码,而且为了保证系统的安全,防止出现意外
事件,管理员只能操作特定的任务。该课题的主要意义在于可以运用 PHP进行系
统管理,开发的系统可以使系统管理员方便的管理远程系统。
关键词
:远程管理;B/S 结构;安全访问;Linux ;PHP
The implement on the server of Linux-based remote
management system
Abstract
The main purpose of the topic based 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 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 interface 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 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 significance 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
目 录
论文总页数:23 页
1 引言 ....................................................................................................................................... 1
1.1 课题背景 ........................................................................................................................... 1
1.2 国内外研究现状 ............................................................................................................... 1
1.3 本课题研究的意义 ........................................................................................................... 1
1.4 本课题的研究方法 ........................................................................................................... 2
2 需求分析 ............................................................................................................................... 2
2.1 任务概述 ........................................................................................................................... 2
2.1.1 开发目标 ....................................................................................................................... 2
2.1.2 开发工具 ........................................................................................................................ 2
2.1.3 开发环境 ........................................................................................................................ 3
2.1.4 开发人员 ........................................................................................................................ 3
2.1.5 运行环境 ........................................................................................................................ 3
2.1.6 条件限制 ........................................................................................................................ 3
2.2 功能分析 ........................................................................................................................... 3
2.3 工作流程 ........................................................................................................................... 4
2.4 性能分析 ........................................................................................................................... 5
3 总体设计 ............................................................................................................................... 5
3.1 系统架构 ........................................................................................................................... 5
3.2 模块划分 ........................................................................................................................... 6
4 具体实现 ............................................................................................................................... 7
4.1 安全访问模块 ................................................................................................................... 7
4.2 文件操作模块 ................................................................................................................... 7
4.3 命令操作模块 ................................................................................................................... 9
4.4 进程操作模块 ................................................................................................................. 10
4.5 系统操作模块 ................................................................................................................. 12
4.6 网络操作模块 ................................................................................................................. 13
5 系统测试 ............................................................................................................................. 15
5.1 安全访问模块 ................................................................................................................. 15
5.2 文件操作模块 ................................................................................................................. 16
5.3 命令操作模块 ................................................................................................................. 17
5.4 进程操作模块 ................................................................................................................. 17
5.5 系统操作模块 ................................................................................................................. 17
5.6 网络操作模块 ................................................................................................................. 17
结 论 ......................................................................................................................................... 18
参考文献 ......................................................................................................................................... 19
致 谢 ........................................................................................................... 错误!未定义书签。
声 明 ........................................................................................................... 错误!未定义书签。
第 1 页 共 23 页
1 引言
1.1 课题背景
远程管理是在网络上由一台电脑(主控端 Remote/ 客户端)远距离去控制另
一台电脑(被控端 Host/ 服务器端)的技术,这里的远程不是字面意思的远距离,
一般指通过网络控制远端电脑,不过大多数时候我们所说的远程控制往往指在局
域网中的远程控制而言。当操作者使用主控端电脑控制被控端电脑时,就如同坐
在被控端电脑的屏幕前一样,可以启动被控端电脑的应用程序,可以使用被控端
电脑的文件资料,甚至可以利用被控端电脑的外部打印设备(打印机) 和通信
设备(调制解调器或者专线等)来进行打印和访问互联网,就像你利用遥控器遥
控电视的音量、变换频道或者开关电视机一样。不过,有一个概念需要明确, 那
就是主控端电脑只是将键盘和鼠标的指令传送给远程电脑,同时将被控端电脑的
屏幕画面通过通信线路回传过来。也就是说,我们控制被控端电脑进行操作似乎
是 在眼前的电脑上进行的,实质是在远程的电脑中实现的,不论打开文件,还
是上网浏览、下载等都是存储在远程的被控端电脑中的。
对于刚刚接触 Linux 的系统管理员来说,正确高效地完成各种关键的系统配
置简直是一件不可能的任务。即使是一个很有经验的 Linux 的管理员,也常常会
为某些复杂的配置文件的格式而苦恼。因此拥有一个 Linux 上的 GUI管理工具一
直是广大 Unix 爱好者的美好愿望。虽然 Linux 自带有 SSH字符界面远程管理工
具,但对于 SSH不断升级所带来的困难和图形界面友好、 B/S 结构的易用,还是
略显笨拙和枯燥,Web管理方式使得本软件同时具有本地和远程管理的能力,访
问控制和 SSL 支持为远程管理提供了足够的安全性。所以我们编写本软件以更
好、更容易的管理远程 Linux 系统,从而减少系统管理员的负担。
1.2 国内外研究现状
从文献和网络资源来看,国外有过类似的软件,比如 Webmin 、PHPWebmin 。
而这些软件都是英文,几乎没有中文版本,许多国内系统管理员不太习惯,况且
有些软件是用 Perl 语言来写的,在效率和使用广度上有写不太满意。
1.3 本课题研究的意义
对于系统管理员来说,管理整个系统是十分复杂和烦躁的工作,尤其服务器
的远程管理,对系统管理人员来说是十分重要的。本软件的开发就是为了方便系
统管理员对本地和远程安装了 Linux 系统的服务器进行管理,增加管理的方便
性,利用 B/S 结构也从另外一方面减少了管理员的劳动量。管理员利用浏览器
在远程登录后,可以方便的对服务器进行运行状态的查看,对网络服务进行配置,
对一些数据进行分析,而且可以对异常现象做出快速的反应。