您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > RedHat Linux网络服务器构架实务
RedHatLinux网络服务器构架实务2002-02-0617:14:00·赵凤君·Yesky前言这里我将说明本文档的书写动机、配置目标、主要内容、遵循原则和使用说明。我主要的从事领域是网络开发,主要采用的技术方案是FreeBSD/Linux+MySQL/Oracle+JavaBean/EJB+Jsp,也就是所说的四层结构(也有人认为是三层结构,但在J2EE中添加了界面层的概念)。项目开发过程中,常常需要进行服务器的构架,每次配置完毕我都会写一份简单的配置文档作为项目技术文档的一部分。这份文档是我一次次配置的结晶,我将构建网路服务器常用的部分写进了本文档,其一可以作为初学者的安装向导,其二也可以听取大家的意见和建议,使之更加严谨和完善。本文档的目标是构架一个比较规范的RedHat开发服务器作为项目的开发环境。本文档当前共十七个步骤,简明而全面的介绍了DNS、FTP、MySQL、Apache、JVM、Resin、PHP等服务器的配置办法。下面是我书写本文档所遵循的几个原则:1、力求简明:去除任何多余的步骤;让命令说话,只加必要的注释,这样方便大家作为配置清单使用。本文档主要告诉读者如何去做,很少说明为什么这样做(这一点在本版本中有所改善),但需要注意的是,如果您忽略了其中的任何一步都可能导致后面出错;2、系统全面:步骤贯穿从安装操作系统到配置完成的全过程,初学者一步一步照做即可;服务器的配置是一个系统的过程,很多说明文档只是说明某几个软件的配置方法,没有统筹兼顾,所以照搬往往失败;3、力求严谨:这是我的一个目标,也是我发布原因之一,当然这需要大家的检验才能实现;4、保持最新:包括操作系统在内,所有的软件都是截止到文档发布日的最新版本,如果有新的软件版本出现,我也会努力做到及时更新;5、精选软件:文中提及的软件都是大家所熟悉的,只有两个需要说明。其一:为什么不选择FreeBSD而用Redhat?FreeBSD可谓是Intel平台上最好的网络操作系统,但它对JAVA(尤其是新版本的JDK)的支持很差,我曾在较长一段时间内采用FreeBSD作为JAVA开发平台,然而由于SUN并没有发布FreeBSD上的JDK,所以经常造成系统崩溃,已经是多次的经历了;为什么不用Tomcat而使用Resin?虽然Tomcat是Apache组织的一个项目,虽然它也在不断完善起来,但较之Resin还是有一定的差距;Resin在中文支持、执行效率、可定制性、升级速度、支持J2EE等方面都有不俗的表现,也是我个人已经体会到的;虽然我怀疑它在高端应用、系统负载等方面的性能,但应付中小型的Web项目方面应该是绰绰有余的;6、侧重JSP:以搭建JSP开发环境为主,可以作为JSP初学者的服务器配置手册:其一:RH7.2增强了多语言的支持,如果你在安装的过程中选择语言时选择了i18n的简体中文包,加上Resin对中文的良好支持,你无需声明Content-Type(任何方式的声明都不需要),中文将自动支持,这一点文档中也已说明;其二:提供了Resin连接池的配置方法和调用方法,并提供了一个用于数据库连接和处理的组件;其三:提供了添加一个JSP虚拟主机的详细方法,从DNSFTPAPACHE到Resin全面讲述;其四:指出了JDBC2.0的支持办法,并提供代码进行测试;7、编译安装:软件全部编译安装,有益于系统可定制性和系统稳定性;8、目标读者:Linux初学者的配置向导和中高级读者的参考;9、配置目标:本文档当前最适合作为企业内部开发服务器的配置手册,如果作为Internet服务器,需要考虑的安全因素还很多,最起码不能全部安装,也不需要安装Xserver,Internet服务器不仅需要我文档中提及的功能,更需要一个简洁安全的系统;10、功能清晰:我将服务器定位在一个DNS+FTP+MySQL+Apache+Resin+Php构架的Web开发服务器,而将可有可无的服务去掉。所以,文档中没有提及QMAIL、ORACLE和ASP、FrontPage扩展等配置方法。除了功能的分离和读者的需求之外,Oracle的最佳运行平台是SUSELinux,ASP的最佳运行平台是NT,至于Qmail,后续版本可以增加进去;以下是本文档的使用说明:1、颜色说明:深蓝色:在原文文档中修改的或者添加的部分深绿色:我的注释2、符号说明#:系统或者软件配置文档中原有的注释;##:我为随后段落做的说明//:我的行末说明/*…*/:篇幅较长的说明3、命令说明:我习惯使用vi来表示编辑一个文件,如果不喜欢使用这个工具,你完全可以使用AdvancedEditor之类的可视化编辑器或者mc等其他命令。偶尔我会在命令之前加上shell表示这是一个命令,以与文件内容区别开来,但这个版本是中文的,所以我一般不加该符号。make和makeinstall是可以使用make;makeinstall替代的,但为了便于查看每一步的提示信息,建议分开执行。./在文中很多地方出现,中间没有空格,而且点号也不明显,需要注意。软件列表下载下面的软件并将它们放到/home/src目录。首先要创建一个系统帐户,然后将软件放到该目录下。下面的软件都将在本文档中用到,下面的连接都是截止到01/18/2002的最新版本:RedHat7.2://://://://=php-4.1.1.tar.gzj2sdk-1_3_1_01-linux-i386.bin://java.sun.com/products/javabeans/glasgow/jaf.htmljavamail1_1_3.zip://://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.2.3-php.tar.gz配置步骤Step1RedHat7.2install我的建议:1、安装时为/home建立单独的分区,因为/home是用户数据的存放之地,本文档中也将软件的安装文件都放到这个目录下,所以,这样做当你下次重新安装系统的时候,可以保留该分区,数据也就得以保全;2、采用定制安装的方式并选中'Everything'选项,这样特别适合于初学者,否则后面的安装过程中可能会出现找不到某个包或某个命令的情况;但如果是配置Internet服务器,就应该只选择必需的包,做到尽量的精简才够安全;3、选择语言时,建议选中simplifiedchinese(P.R.CHINA)选项,这样,当你配置好服务器的时候,在程序代码中无需任何声明,中文将被支持而不会乱码;4、使用Gnome做为登陆管理器,使用KDE作为默认的Session,设置默认启动到X,这样做的目的是为了方便远程控制;5、IP:192.168.1.2,这是我在本文档中使用的IP,这个可以自行设置。6、文档中我没有涉及到防火墙的设置,系统安装完成后你可以使用ntsysv或者chkconfig命令将iptables和ipchains两个服务禁用掉,否则会导致telnet和远程登陆等无法使用;当然,如果您熟悉防火墙设置,可以自行处理。Step2Xsetup##这一步完成后,重启服务器,然后你就可以使用Extra!X等远程控制软件以图形界面在微软平台上进行服务器配置,这样做的好处是可以同时控制服务器端和客户端,不必奔走在两台机器之间。如果你按照下面的设置不能进行远程控制,那么,很有可能你的防火墙策略不允许这样做,禁用掉iptables和ipchains就可以了。vi/etc/X11/gdm/gdm.conf//启用远程控制[xdmcp]Enable=1vi/etc/X11/gdm/Sessions/Default//设置默认Sessionexec/etc/X11/xdm/Xsessionkdevi/etc/X11/xdm/Xaccess//设置广播对象192.168.1.*Step3ServicessetupShell>ntsysv运行ntsysv命令启用named、telnet和wu_ftpd服务,禁用httpd、mysqld、iptables和ipchains服务和其他一些不需要的服务,然后用reboot重启服务器。Step4Dnssetupvi/etc/named.conf1创建标准区域##你可以根据你的喜好来命名,这里我使用的后缀是.loc,主要是为了避免和Internet已经注册的域名相冲突,你可以自行决定你的后缀。##添加下面的文本到/etc/named.confzoneyesgo.loc{typemaster;fileyesgo.loc;}zone1.168.192.in-addr.arpa{typemaster;file192.168.1;}2创建域名库文件touch/var/named/yesgo.loctouch/var/named/192.168.1##编辑正向域名库文件,建立主机名和主机别名vi/var/named/yesgo.loc@INSOAns.yesgo.loc.root.ns.yesgo.loc.(2001050801;Serial28800;Refresh14400;Retry3600000;Expire86400);MinimumINNSns.yesgo.loc.INMX0ns.yesgo.loc.nsINA192.168.1.2ftpINCNAMEns.yesgo.loc.mailINCNAMEns.yesgo.loc.popINCNAMEns.yesgo.loc.smtpINCNAMEns.yesgo.loc.##编辑反向域名库文件,建立主机名指针vi/var/named/192.168.1@INSOAns.yesgo.loc.root.ns.yesgo.loc.(2001050801;Serial28800;Refresh14400;Retry3600000;Expire86400);MinimumINNSns.yesgo.loc.INMX0ns.yesgo.loc.2INPTRns.yesgo.loc.3重新启动DNS服务/etc/rc.d/init.d/namedrestart4域名查询##测试域名是否解析成功,这是一个交互式的命令行,你可以输入域名或者IP地址进行正向和反向查询nslookup-silStep5KDEsetup这一步是可有可无的,因为你完全可以不去理会而直接使用默认界面。一般的做法是先根据KDE配置向导进行总体设置,然后再使用KDE控制中心进行详细配置,在此不多介绍。需要提的一点是你可以通过KDEControlPanel中的Window
本文标题:RedHat Linux网络服务器构架实务
链接地址:https://www.777doc.com/doc-1580125 .html