[tr][td]2系统概述2.1RedHat-Linux操作系统概述Linux的诞生可以追溯到1991年,当Linus还是芬兰赫尔辛基大学的一名学生时,他对当时为教学而设计的Minix操作系统提供的功能不满意,于是他决定自己写比Minix更强大的类UNIX操作系统来取代Minix,后来这个类UNIX操作系统就是Linux。
Linux的特点:Linux是一种优秀的操作系统,支持多用户、多进程、多线程、实时性好、功能强大而稳定。可以从几个方面来阐述linux良好的服务器功能:1、广泛的协议支持;2、文件系统下良好的兼容性;3、支持多种网络互联;4、完善的网络支持;5、强大的远程管理;6、多种应用系统的支持; RedHat是红帽最成功的LINUX发行版本之一,它的的特点是安装和使用简单,RedHat可以让用户很快享受到Linux的强大功能而免去繁琐的安装与设置工作.RedHat是全球最流行的Linux版本,RedHat已经成为Linux的代名词,很多人一提到Linux就会毫不犹豫的想到RedHat.所以我们用来搭建的服务器也选择RedHat.我们选择的版本是RedHatEnterpriseESLinux,它广泛适用小型企业或部门级的计算环境,如网络服务器、文件服务器、打印服务器、邮件服务器和万维网服务器[4]。 2.2PHP语言概述PHP是:HypertextPreprocessor(超文本预处理器)的缩写,它是一种服务器端的HTML脚本/编程语言,是一种简单的、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP独特的语法混合了C、Java、以及PHP自创的语法。它可以比CGI更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,成分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户在一次访问这个程序时就不需要执行编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统[5]。 2.3MySQL数据库概述MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQLAB开发、发布和支持。 MySQL是一个快速、多线程、多用户的SQL数据库服务器,其出现虽然只有短短的数年时间,但凭借着“开放源代码”的东风,它从众多的数据库中脱颖而出,成为PHP的首选数据库。除了几乎是免费的这点之外,支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等都是PHP选择MySQL的主要原因。 MySQL数据库的主要特征: MySQL可运行在不同的操作系统下。简单地说,MySQL可以支持Windows95/98/NT/2000以及UNIX、Linux和SUNOS等多种操作系统平台。这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。 MySQL拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用而不必担心其稳定性。事实上,MySQL的稳定性足以应付一个超大规模的数据库。 强大的查询功能。MySQL支持查询的SELECT和WHERE语句的全部运算符和函数,并且可以在同一查询中混用来自不同数据库的表,从而使得查询变得快捷和方便。 PHP为MySQL提供了强力支持,PHP中提供了一整套的MySQL函数,对MySQL进行了全方位的支持[6]。 2.4Apache服务器概述Apache[3]是世界排名第一的Web服务器,根据著名的Web服务器调查公司Netcraft的调查,世界上百分之五十以上的Web服务器都在使用Apache。 纵观Apache,它为我们的网络管理员提供了丰富多彩的功能,包括目录索引、目录别名、内容协商、可配置的HTTP错误报告、CGI程序的SetUID执行、子进程资源管理、服务器端图象映射、重写URL、URL拼写检查以及联机手册man等。也就是说,如果您在LinuxServer上成功安装配置了Apache之后,您的计算机也将随着Apache的生效而摇身一变,成为一台名副其实的WebServer,这种变化的确是激动人心的。伴随着自由软件发展的强大动力,我们有理由相信Apache的未来是一片光明的。 在Internet时代,外部主页的发布已经成为树立公司形象的一个重要手段,而内部主页也成为公司管理的主要方式。但是,要想实现这些功能,首先应该把我们的LinuxServer配置成为一台强大的WebServer。时至今日,全球应用最广泛的Web服务器软件就是Apache,本章将详细介绍如何配置Apache服务器。希望各位同仁能够通过阅读本片文章达到理论实践双丰收的目的,在很短的时间里迅速成为一名出色的网络管理员。 Apache的主要特征是:可以运行上所有计算机平台;支持最新的HTTP1.1协议;简单而强有力的基于文件的配置;支持通用网关接口CGI;支持虚拟主机;支持HTTP认证;集成Perl脚本编程语言;集成的代理服务器;具有可定制的服务器日志;支持服务器端包含命令(SSI)支持安全Socket层(SSL)用户会话过程的跟踪能力;支持FastCGI;支持JavaServlets。 3系统开发3.1系统设计3.1.1系统设计思想系统设计思想在一定程度上决定了一个系统设计的成败,从某种角度上反映了一个系统的生命力。本系统的设计思想如下: (1)架构的合理性 采用目前最热门的组合Linux+Apache+PHP+Mysql,它是建立网站最经济的选择,同时性能也是最安全、可靠的组合。 (2)Moodle平台+LMAP架构 系统主要采用Moodle平台—Apache服务器—PHP+Linux-Mysql数据库这样结构,优化了系统的性能,使Moodle平台的运行更加稳定、安全。如下图1所示:
试验机的配置: ■CPU:PentiumⅣ2.93HZ ■内存:512M ■硬盘:80G ■网卡:10/100 ■光驱:DVD-ROM ■显卡:独立显存128M 从上面的公式可以算出试验机可以支持最大并行使用数据库的用户人数为25-50人之间。 3.1.3软件环境(1)操作系统RedHatAS4可在http://www.verycd.com/topics/32515/下载[Redhat.Enterprise.Linux.Advanced.Server.4].RHEL4-i386-AS-disc1-jrt.iso文件,总共4个文件,用刻录机刻录成光盘。 (2)Web服务器软件推荐使用Apache,可在http://httpd.apache.org/download.cgi下载安装文件httpd-2.0.59.tar.gz。 (3)数据库服务器软件推荐使用MySQL,可在http://dev.mysql.com/downloads/下载安装文件mysql-5.0.22.tar.gz。 (4)PHP安装文件可在http://www.php.net/downloads.php下载,下载文件php-4.4.4.tar.gz。 (5)phpMyAdmin文件可在网站http://www.phpmyadmin.net/homepage/downloads.php下载,文件名phpmyadmin.zip,这是管理MySQL数据库的工具。 (6)库软件: libpng-1.2.10.tar.bz2Compress-Zlib-1.42.tar.gz libxml2-2.6.23.tar.bzjpegsrc.v6b.tar.gzZendOptimizer-2.5.7-linux-glibc21-i386.tar.gzopenssl-0.9.7i.tgzperl-5.8.8.tgz Eaccelerator(加速器)可在http://download.chinaunix.net/disc/linux/分别下载。 (7)Moodle官方下载地址:http://download.moodle.org/,下载Moodle1.8,文件名为:moodle-latest-18.tgz。 (8)在网站http://download.moodle.org/lang/,下载简体中文语言包zh_cn_utf8.zip 3.2系统的安装流程3.2.1RedHat服务器的安装说明注意事项一:在安装前一定要了解两个系统的文件系统不一样。windows所用的文件系统主要有FAT16、FAT32和NTFS;Linux所用的文件系统主要有exit2、exit3。 注意事项二:对试验机系统硬件型号要了解特别清楚,要是安装双系统一定要记住,把Linux系统安装在最后一个盘符,分出最少10G的空间,安装双系统的顺序是先安装windows在安装Linux。 注意事项三:Linux分区方案:安装Linux时,需要在硬盘建立Linux使用的分区,在大多情况下,至少需要为Linux建立以下3个分区。/boot分区:/boot分区用于引导系统,它包含了操作系统的内核和在启动系统过程中所要用到的文件,该分区的大小一般100MBswap分区。 swap分区的作用是充当虚拟内存,其大小通常是物理内存的两倍左右(当物理内存大于512MB时,swap分区为512MB即可)。例如物理内存是128MB,那么swap分区的大小应该是256MB。 /(根)分区:Linux将大部分的系统文件和用户文件都保存在/(根)分区上,所以该分区一定要足够大,一般要求大于5GB。 3.2.2操作系统安装具体步骤(1)启动计算机,进入BIOS设置程序,设为从CD-ROM启动。然后把RedHatEnterpriseLinux第1张安装盘放入光驱。 (2)在“boot:”提示符状态下按“回车”键,安装程序会提示用户是否要检测安装光盘。(3)系统开始启动图形界面的安装程序。 (4)进入安装语言的选择界面 (5)进入“键盘配置”后,安装程序会自动为用户选取一个通用的键盘类型(美国英语式)。 (6)进入磁盘分区界面后,可以选择“自动分区”或“用DiskDruid手工分区”。这里试验机安装双系统所以,选择手工分区。 (7)如果在新硬盘上执行安装,因此会出现一个警告对话框,提示用户硬盘sda上的分区表无法读取,安装程序需要对其硬盘执行初始化操作,硬盘上的所有数据将会丢失。 (8)进入磁盘分区界面后,可以看到手工分区提供一个图形化操作界面,点击新建一个/boot分区,分区大小100M,在点击新建分区swap分区,分区大小根据试验机的物理内存翻一倍(如果物理内存为256那512就可以了),一般512M就可以。点击新建最后一个分区/(根分区),把剩余的空间全部划分到这个分区。 (9)在引导装载程序配置界面中,可以设置引导装载程序GRUB的属性。 (10)在网络配置界面中,安装程序提供通过DHCP自动配置和手工设置两种配置网络的方法。 (11)Linux本身内置了软件防火墙以加强计算机连接网络的安全性。默认Linux防火墙是禁用的,还有SELinux也设置为“已禁用”。 (12)在选择系统支持的语言界面中,可以选择系统安装的语言和系统默认语言,在这里建议选择系统默认的。 (13)在时区选择界面中,应根据实际来选择。这里选择“亚洲/上海”选项,然后单击“下一步”按钮。 (14)在设置根口令界面中,可以为root管理员账号设置口令。 (15)软件包安装的默认设置界面中,安装程序会显示将要安装的组件。 (16)在选择软件包组界面中,为了方便编辑各种服务的配置软件和安装基于源程序的软件包,建议安装“应用程序”中的“编辑器”和“开发”中的“开发工具”。 (17)在即将安装界面中,安装程序会让用户做安装的最后确认。 (18)安装程序会非常善意地提醒用户需要准备的安装光盘。 (19)安装程序开始安装RedHatEnterpriseLinux。 (20)在整个漫长的安装过程,安装程序会提示更换光盘。 (21)最后安装程序报告系统安装完毕。[8] 备注:(由于安装是一个动态的过程,所以我已经将该系统的安装用录屏软件记录下来,会放在moodle课程中,以供大家学习)。 3.2.3操作系统环境配置(1)设置语言参数:点击键盘Ctrl+Alt+F1,进去文本模式,输入命令:locale查看环境,#vi/etc/sysconfig/i18n,将第1句“LANG=zh_CH.UTF-8”改为“LANG=zh_CN.GB18030”。 (2)配置网络参数:输入命令#setup,选择网络配置,我的网络配置参数:“ip地址:210.27.205.14子网掩码:255.255.255.128网关:210.27.205.1DNS服务器:202.201.128.2”试验机把Linux系统挂载在最后一个盘符,安装系统所必须的软件在windows系统下的E盘和F盘,所以要挂载这两个盘符。 (3)挂载windows分区:要注意windows分区下的CDEF盘在Linux下设备号分别是sda1、sda5、sda6、sda7。 #/mnt/e/mnt/f #vi/etc/fstab添加下面的命令到该文本中 /dev/sda6/mnt/evfatiocharset=gb2312,umask=0,codepage=93600 /dev/sda7/mnt/fvfatiocharset=gb2312,umask=0,codepage=93600 安装RedHat服务器完毕! 3.2.4安装MySql数据库安装之前,必须保证电脑上以前安装过的mysql服务器彻底卸载掉了。具体步骤: 安装mysql-5.0.22.tar.gz #tarzxvfmysql-5.0.22.tar.gz/*tar为linux下的解压命令*/ #cdmysql-5.0.22 #./configure--prefix=/usr/local/mysql--sysconfdir=/etc--localstatedir=/var/lib/mysql/*设置mysql的安装目录*/ #make/*编译命令*/ #makeinstall #prefix=/usr/local/mysqlmysql/*安装的目标目录*/ #sysconfdir=/etcmy.ini/*配置文件的路径*/ #localstatedir=/var/lib/mysql/*数据库存放的路径*/ #groupaddmysql/*创建mysql用户*/ #useradd-gmysql-d/usr/local/mysql-s/sbin/nologinmysql/*设置mysql目录为用户mysql属组*/ 如果系统没有mysql这个用户的话,最好做以下这步: useradd-M-o-r-d/var/lib/mysql-s/bin/bash-c"MySQLServer"-u27mysql #/usr/local/mysql/bin/mysql_install_db--user=mysql/*安装完以后要初始化数据库*/ #chown-Rroot/usr/local/mysql/*设置目录访问权限*/ #chgrp-Rmysql/usr/local/mysql #chown-Rroot/usr/local/mysql/bin #chgrp-Rmysql/usr/local/mysql/bin #chgrp-Rmysql/var/lib/mysql #chmod777/var/lib/mysql #chown-Rroot/var/lib/mysql/mysql #chgrp-Rmysql/var/lib/mysql/mysql #chmod777/var/lib/mysql/mysql #chown-Rroot/var/lib/mysql/mysql/* #chgrp-Rmysql/var/lib/mysql/mysql/* #chmod777/var/lib/mysql/mysql/* #chmod777/usr/local/mysql/lib/mysql/libmysqlclient.a 运行命令#/usr/local/mysql/bin/mysqld_safe--user=mysql&测试安装是否成功 如果显示#Startingmysqlddaemonwithdatabasefrom/usr/local/mysql/var表示安装成功 做完上面的步骤,然后把你编译目录的一个脚本COPY过去 cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld/*把mysql的启动目录添加到系统启动目录init中,启动命令为mysqld*/ #chkconfig--addmysqld/*添加系统自起服务命令*/ 用ntsysv设置使mysql每次启动都能自动运行。 好了,至此mysql安装完毕,你可以这样起动你的mysql服务 #/etc/rc.d/init.d/mysqldstart 下面这步比较关键 #ln-s/usr/local/mysql/lib/mysql/usr/lib/mysql #ln-s/usr/local/mysql/include/mysql/usr/include/mysql 3.2.5Openssl(安全套接层协议)的安装#tarzxvfopenssl-0.9.7i.tgz #cdopenssl-0.9.7i #./config–prefix=/usr/share/ssl//*安装目录在/usr/share/ssl下*/ #make #makeinstall #makeclean/*清楚安装完的垃圾文件*/ 3.2.6Apache服务器的安装安装之前,必须保证电脑上以前安装过的apache服务器彻底卸载掉了。 具体安装步骤: #tarzxvfhttpd-2.2.4.tar.bz2 #cdhttpd-2.2.4 #./configure--prefix=/usr/local/apache2--enable-shared=max--enable-module=rewrite--enable-so--enable-ssl--with-ssl=/usr/share/ssl/--enable-so--enable-logio--enable-module=most/*安装apache的安装目录以及ssl的配置*/ #make #makeinstall #makeclean 打开apache配置文#cd/usr/local/apache2/conf/httpd.con修改其中的user和group为apache。 开机自动加载apache服务#vi/etc/rc.d/rc.local 在里面加入一行/usr/local/apache2/bin/httpd-kstart 测试:在浏览器中输入http://localhost/看到It’sworks就表示安装成功了! 3.2.7安装各种库(1)libxml2安装/*libxml2是一个C程序解析器*/ 源代码:libxml2-2.6.23.tar.bz2 #tarjxflibxml2-2.6.23.tar.bz2 #cdlibxml2-2.6.23 #./configure #make #makeinstall #makeclean (2)zlib安装/*zlib库,很多程序中的压缩或者解压缩函数都会用到这个库*/ 源代码:Compress-Zlib-1.42.tar.gz #tarzxvfCompress-Zlib-1.42.tar.gz #cdzlib-14.2 #perlMakefile.PL #make #maketest (3)libpng安装/*libpng是多种应用程序使用的解析PNG图象格式的库*/ 源代码:libpng-1.2.10.tar.bz2 #tarjxflibpng-1.2.10.tar.bz2 #cdlibpng-1.2.9 #cpscripts/makefile.stdmakefile 编辑makefile将prefix改为prefix=/usr/local/libpng2 #make #mkdir/usr/local/libpng2 #makeinstall #makeclean (4)jpeg安装/*安装JPEG库,在安装GD库的时候如果没有JPEG库,GD将不能生成JPEG格式的图象.*/ 源代码:jpegsrc.v6b.tar.gz #tarzxvfjpegsrc.v6b.tar.gz #cdjpeg-6b #./configure--prefix=/usr/local/jpeg6--enable-shared #make #mkdir/usr/local/jpeg6 #mkdir/usr/local/jpeg6/include #mkdir/usr/local/jpeg6/lib #mkdir/usr/local/jpeg6/bin #mkdir/usr/local/jpeg6/man #mkdir/usr/local/jpeg6/man/man1 #makeinstall-lib #makeinstall #makeclean (5)GD安装/*gd库提供了一系列用来处理图片的API,使用GD库可以处理图片*/ 源代码:gd-2.0.33.tar.gz #tarzxvfgd-2.0.33.tar.gz #cdgd-2.0.33 #./configure--prefix=/usr/local/gd2--with-zlib--with-png=/usr/local/libpng2--with-jpeg=/usr/local/jpeg6 编辑Makefile231行将CPPFLAGS=-I/usr/local/jpeg6/include 改为CPPFLAGS=-I/usr/local/jpeg6/include-I/usr/local/libpng2/include #make #makeinstall #makeclean 3.2.8PHP的安装和配置#tarzxvfphp-4.4.4.tar.gz #cdphp-4.4.4 #./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache2/bin/apxs--with-xml--with-mysql=/usr/local/mysql--with-zlib--with-jpeg-dir=/usr/local/jpeg6--with-png-dir=/usr/local/libpng2--with-gd=/usr/local/gd2--with-config-file-path=/usr/local/lib--disable-debug--enable-safe-mode--enable-trans-sid--enable-memory-limit--enable-short-tags--disable-posix--enable-exif--enable-ftp--enable-sockets--enable-mbstring--enable-track-vars--with-openssl=/usr/share/ssl--with-curl=/usr/include/curl--with-iconv #make #makeinstall #makeclean #cpphp.ini-dist/usr/local/lib/php.ini 把php加到apache里去 #vi/usr/local/apache2/conf/httpd.conf 添加LoadModulephp4_modulemodules/libphp4.so AddTypeapplication/x-httpd-php.php 新建一个test.php 代码如下: 然后在客户端的浏览器访问http://210.27.205.12/test.php,如果看到php的信息页面如下图,则表示php运行环境配置成功。 3.2.9安装ZendOptimizer/*ZendOptimizer(以下简称ZO)用优化代码的方法来提高php应用程序的执行速度*/ #tarxvzfZendOptimizer-2.5.7-linux-glibc21-i386.tar.gz #./install.sh--prefix=/usr/local/zend #make #makeinstall 3.2.10安装和配置Eacceleratr/*eAccelerator是一个自由开放源码php加速器*/ step1:编译eAccelerator 注意:整个命令操作确保在eAccelerator的源码目录中进行。 #exportPHP_PREFIX="/usr/local/php" #PHP_PREFIX/bin/phpize #./configure--enable-eaccelerator=shared--with-php-config=$PHP_PREFIX/bin/php-config #make step2:安装eAccelerator 运行如下命令 makeinstall step3:配置eAccelerator 如果使用了系统自带的php,你可以将eAccelerator中的eAccelerator.ini文件拷贝至/etc/php.d中,并且修改默认值。 如果使用的自己编译的PHP,可以修改php.ini,在最后加上如下几行 #vi/usr/local/lib/php.ini zend_extension="eaccelerator:"(可以通过命令whereiseaccelerator.so查找)accelerator.shm_size="16" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" step4:创建缓存目录 第三步中设置了缓存目录,这里可以使用如下命令建立: #mkdir/tmp/eaccelerator #chmod777/tmp/eaccelerator 3.2.11新建数据库和数据库管理员这里可以使用phpmyadmin轻松做到,将phpmyadmin文件解压到虚拟目录中 #unzipphpmyadmin.zip #cp-rphpmyadmin/usr/local/apache2/ht就可以通过 http://localhost/phpmyadmin直接访问。(注意新建数据库的时候语言要用utf8-general.gi)图形化的操作界面,操作很简单。 也可以手动建立数据库,输入命令: #cd/usr/local/mysql/bin #./mysql #./mysqladmin–urootpassword*******/*新建root用户密码*/ #createdatabasemoodle/*新建数据库moodle*/ #exit/*推出mysql*/ 4Moodle平台的安装和配置需要在文本模式下新建Moodle数据库存储目录,命令如下: #mkdir/usr/local/apache/moodledata/*新建Moodle数据存储目录*/ #cpmoodle.zip/usr/local/apache2/htdocs/*把Moodle压缩包拷到apache服务器虚拟目录下*/ 解压文件和设置访问权限 #cd/usr/local/apache2/htdocs #unzipmoodle.zip/*解压Moodle.zip*/ #chown-Rapache:apache/usr/local/apache2/moodledata/*修改Moodledata目录的拥有者为apache*/ 配置config.php 以root身份拷贝和编辑该文件 #cd/usr/local/apache2/htdocs/moodle #cpconfig-dist.phpconfig.php #viconfig.php 将config.php做如下设置 dbtype="mysql" dbhost="localhost" dbname="moodle"(数据库名) dbuser="root"(访问mysql用户名) dbpass="*******"(访问mysql密码) prefix="mdl_"(建立数据库中表的前缀,如果为空那么都是没有前缀) wwwroot=http://210.27.205.14/moodle dirroot='/usr/local/apache2/htdocs/moodle' dataroot='/usr/local/apache2/moodledata' 配置apache服务器:#vi/usr/local/apache2/conf/httpd.conf 修改listen80/*监听80端口*/ serverRoot“/usr/local/apache2”/*设置相对根目录*/ serverName210.27.205.14:80/*设置服务器主机名称*/ DocumentRoot“/usr/local/apach2/htdocs/*设置主目录的路径*/ AddDefaultcharesetGB2312/*设置默认字符集*/ ServerAdminfk_five@126.com/*设置网络管理员的E-mail地址*/ DirectoryIndexindex.phpindex.html/*设置默认文档*/ 安装Moodle中文支持语言包 把zh_cn_utf8.zip解压到Moodle文件夹下的lang目录,具体操作: #unzipzh_cn_utf8.zip/*解压zip包的命令*/ #mvzh_ch_utf8/usr/local/apache2/htdocs/moodle/lang/*移动zh_ch_utf8包到moodle的lang文件夹下*/ 5在moodle平台上搭建网络课程因为考虑到要对linux下构建moodle平台的性能与windows下moodle平台进行对比,所以我设计了一门linux在线学习的网络课程,主要是针对初级阶段的学习者,有命令、服务器的配置等相关教程。 6配置linux防火墙随着网络技术的迅猛发展和因特网的普及,网络概念已不再局限于某些领域,而是深入到社会的各个组成部分,形成了一个初具规模的网络社会。在计算机网络日益扩展和普及的今天,计算机安全的要求更高,涉及面更广,不但要求防治病毒,也要提高系统抵抗外来非法黑客入侵的能力,还要提高对远程数据传输的保密性,避免在传输途中遭受非法窃取。为防止Internet上的不安全因素蔓延到局域网内部,使用防火墙是一种行之有效的解决方法[8]。我介绍一下在Linux下配置防火墙的解决方案。 Moodle平台需要Apache服务器,所以要开通web服务,使用标准的80端口的服务器,我们可在防火墙中进行设置: #echo"0">/proc/sys/net/ipv4/ip_forward #iptables–F/*清楚iptables的所有规则*/ #iptables-AINPUT-ilo-jACCEPT/*对网络接口lo的处理*/ #iptables-AINPUT-ptcp-mmultiport--dports22,80-jACCEPT/*匹配来自22,80端口的所有包*/ #iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT/*接受来自RELATED,ESTABLISHED协议的所有包*/ #iptables-PINPUTDROP/*丢弃所有发给本机的包*/ 7测试及验证(1)负载测试:在平台正常运行的情况下,找50台客户机同时在线学习,发现系统运行正常,没有出现异常,非常稳定 (2)安全性测试:运用局域网查看工具(lanSee)V1.62对服务器进行攻击,未发现漏洞,上传当下比较流行的病毒,arp病毒、熊猫烧香病毒,发现未出现异常,运行正常。由于时间和这方面知识的匮乏,所以只能进行一些简单的测试,还不够完善,希望以后可以做的更好。 8总结根据Linux操作系统下对Moodle平台的搭建的实现、测试、验证,证明了在同等配置的服务器上运行Linux系统搭建Moodle平台比Windows系统下搭建Moodle平台稳定、安全。因此,Linux操作系统下搭建Moodle平台可以为Moodle这个网络教学平台提供安全、稳定的环境。 参考文献:[1]Moodle官方网站:http://www.moodle.org [2]开源社区http://www.lupaworld.com/ [3]Apache官方网站www.apache.com [4]林惠琛、刘殊、尤国君、编著《RedHatLinux服务器配置与应用》,人民邮电出版社,2006年 [5]php官方网站www.php.com [6]MYSQL官方网站:www.mysql.com [7]常金娥、陈晋玲,Windows下Moodle平台的构建,晋城职业技术学院信息工程系;科技信息(学术研究),编辑部2007年36期 [8]杨云,在Linux下配置防火墙的技术,(济南铁道职业技术学院信息工程系,济南250013)2004.3第84期 英文摘要LinuxOperatingSystemPlatformforTheStructures UnderMoodle MaHaiRui [Keywords]:MoodleAppcheMySQLPHPPHPmyAdminLinux 附录、遇到的问题以及解决办法1、对RedHat-Linux操作系统没有研究过解决:我从网上下载很多的学习Linux操作系统的相关的视频教程,比如:浙江大学-Linux操作系统、楚广明网络操作系统视频教学(Flash版)、黑客基地Linux特训班等等。学习Linux操作系统的基本命令,已经服务器的配置、运行,软件的安装,系统的安装等一些基本的操作。 2、RedHat-Linux操作系统对Moodle平台“不支持”说明:由于在安装时采用Linux系统自带的软件,所以到时在安装Moodle平台时,Linux系统自带的Mysql版本太低,导致安装的失败。如下图所示: 解决:通过大量的资料查询得知,原来Moodle平台对Mysql版本要求在Mysql4.1.16以上,所以Linux自带的版本太低,导致安装失败。在Mysql官方下载了最新的版本Mysql-5.0.22,需要源码安装。具体的安装代码如上3.3.4 3、源码安装说明:linux系统下的安装有两种,一种是rpm包安装,另一种就是源码安装也就是tar包的安装。对系统软件的安装我们都看到,大多数的软件不是通过系统自带的,都是从网上下载的源码包tgz安装,不是rpm包,所以解决软件的安装也是我碰到的一个比较棘手的问题。 解决:在网上查了大量的资料发现有一个叫gcc编译器,自己机子上没有安装,所以,把安装光盘放进光驱才发现有很多后缀名叫gcc的,需要安装的是perl、gcc-3.4.3-9.EL4、libgcc-3.4.3-9.EL4、gcc-C++-3.4.3-9.EL4、gcc-java-3.4.3-9.EL4、gcc-g77-3.4.3-9.EL4。 4、挂载硬盘出现乱码说明:由于试验机是双系统,所以,很多资料都在试验机的E盘和F盘,而Linux系统在另外划分的硬盘空间,需要把windows下的E盘和F盘挂载到Linux系统下,才能完成Moodle平台的安装。如图所示: 解决:见3.3.3下(3)windows分区的挂载和(1)设置语言参数。 [/td][/tr] |
||||||