1.概述
網(wǎng)站部署過程概述。該部署指南是關(guān)于如何在服務(wù)器上部署主網(wǎng)站,以及相關(guān)的軟硬件配置,相關(guān)的術(shù)語介紹。
2.硬件和軟件環(huán)境
2.1 主站配置:
硬件配置:內(nèi)存1024MB,硬盤SCSI 36GX2 ,CPU 雙至強(qiáng)2.0,雙千兆卡
軟件配置:Linux7.2, jdk1.4.2,resin-2.1.12,mysql4.0.18, IglooFTP PRO3.9,
t98setup telnet,陽春白雪(中文編輯軟件)等。
3.安裝過程
3.1 linux 7.2
3.1.1 光盤啟動(dòng)
將第一片linux7.2的光盤放入光驅(qū),啟動(dòng)后出現(xiàn)Red Hat Linux 7.2
的歡迎畫面。在上述畫面中直接按Enter鍵即可,經(jīng)過一段時(shí)間的啟動(dòng)過程之
后就可以見到Red Hat Linux 圖形模式的安裝歡迎畫面。
選擇語言 :Chinese(Simplified)
鍵盤 :Generic 105-key(Int) PC
:U.S. English
:使用死鍵
鼠標(biāo) :Generic
2Button Mouse(PS/2)
安裝等級(jí) :服務(wù)器
安裝顯卡驅(qū)動(dòng) :(CTX-EX700, 24位真彩,800 x 600)
硬盤分區(qū)
1. 讓安裝程序自動(dòng)分割硬盤:
a.若以前安裝過linux,此項(xiàng)會(huì)先刪除硬盤上已有的硬盤分區(qū),然后再
自動(dòng)分割硬盤。
b.刪除所有的分區(qū),再重新分割硬盤。如果硬盤上已經(jīng)有其他的操作系統(tǒng)將會(huì)刪除原有的分區(qū)。
c.保存已有的分區(qū)并使用還未使用的分區(qū),來分割硬盤。
2.手動(dòng)分區(qū),可使用fdisk工具根據(jù)實(shí)際需要來完成設(shè)置。
時(shí)區(qū)選擇 : 在中國上海處單擊鼠標(biāo)左鍵.
防火墻(默認(rèn)) : 級(jí)別為中級(jí)。
設(shè)置網(wǎng)絡(luò)環(huán)境 :
設(shè)置網(wǎng)卡的TCP/IP設(shè)置值:
IP Address : 192.168.12.40
Netmask : 255.255.255.0
Network : 192.168.0.0
Broadcast : 192.168.0.255
Hostname : bjhly
Gateway : 192.168.12.1
Primary DNS : 192.168.0.255
Secondary DNS:
Ternary DNS :
/dev/i2o/
3.1.2 安裝 陽春白雪
雙擊陽春白雪光盤上的YCBX-SETUP后即可根據(jù)提示進(jìn)行安裝,安裝成
功后即可使用中文輸入。
3.2 jdk1.4.2
3.2.1 安裝 j2sdk-1_4_2_04-linux-i586.rpm
首先將 j2sdk-1_4_2_04-linux-i586.rpm拷貝到/usr/local目錄下,
再執(zhí)行 rpm –ivh j2sdk-1_4_2_04-linux-i586.rpm
j2sdk-1_4_2_04就被安裝在 /usr/java目錄下。
3.3 resin2.1.12
3.3.1 安裝resin-2.1.12.tar.gz
首先將 resin-2.1.12.tar.gz拷貝到/usr/local 目錄下,
再執(zhí)行 tar –xzvf resin-2.1.12.tar.gz
resin-2.1.12. 就被安裝在 /usr/java 目錄下。
3.3.1 修改環(huán)境變量
修改/etc目錄下的profile文件
PATH="$PATH:/usr/java/j2sdk1.4.2_04/jre/bin:/usr/java/j2sdk1.4.2_04/bin"
Java_HOME=/usr/java/j2sdk1.4.2_04
export Java_HOME
JRE_HOME=/usr/java/j2sdk1.4.2_04/jre
export JRE_HOME
CLASSPATH=/usr/java/j2sdk1.4.2_04/lib:/usr/java/j2sdk1.4.2_04/jre/lib
export CLASSPATH
若是出現(xiàn)環(huán)境變量在CLASSPATH中無法找到時(shí):
將/usr/local/j2sdk-1_4_2_04/lib目錄下的tools.jar 拷貝到
/usr/java/resin-2.1.12/lib 的目錄下即可。
3.3.1 resin的啟動(dòng)和停止
[root@bjhly root] cd /usr/java/resin-2.1.12/bin
[root@bjhly bin] ./httpd.sh -start 開啟 resin
[root@bjhly bin]./httpd.sh –stop 停止 resin
3.4 mysql 4.0.18
3.4.1 安裝MySQL:
MySQL-server-4.0.18-0.i386.rpm
MySQL-client-4.0.18-0.i386.rpm
下載地址為:http://www.mysql.com/downloads/mysql-4.0.html,找到“Server”和“Client programs”項(xiàng),下載需要的上述兩個(gè)rpm文件。
rpm文件是Red Hat公司開發(fā)的軟件安裝包,rpm可讓Linux在安裝軟件包時(shí)免除許多復(fù)雜的手續(xù)。該命令在安裝時(shí)常用的參數(shù)是 –ivh ,其中i表示將安裝指定的rmp軟件包,V表示安裝時(shí)的詳細(xì)信息,h表示在安裝期間出現(xiàn)“#”符號(hào)來顯示目前的安裝過程。這個(gè)符號(hào)將持續(xù)到安裝完成后才停止。
1) 安裝服務(wù)器端
2) 在有兩個(gè)rmp文件的目錄下運(yùn)行如下命令:
[root@test1 local]# rpm -ivh MySQL-server-4.0.18-0.i386.rpm
3) 顯示如下信息。
warning: MySQL-server-4.0.18-0.i386.rpm: V3 DSA signature: NOKEY, key ID
5072e1f5
Preparing... ########################################### [100%]
1:MySQL-server ########################################### [100%]
。。。。。。(省略顯示)
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h test1 password 'new-password'
。。。。。。(省略顯示)
Starting mysqld daemon with databases from /var/lib/mysql
如出現(xiàn)如上信息,服務(wù)端安裝完畢。測試是否成功可運(yùn)行netstat看Mysql端口是否打
開,如打開表示服務(wù)已經(jīng)啟動(dòng),安裝成功。Mysql默認(rèn)的端口是3306。
[root@bjhly local]# netstat –nat
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
上面顯示可以看出MySQL服務(wù)已經(jīng)啟動(dòng)。
2)安裝客戶端
運(yùn)行如下命令:
[root@bjhly local]# rpm -ivh MySQL-client-4.0.18-0.i386.rpm
warning: MySQL-client-4.0.18-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
Preparing... ########################################### [100%]
1:MySQL-client ########################################### [100%]
顯示安裝完畢。
3. 4. 2 登錄MySQL
登錄MySQL的命令是mysql, mysql 的使用語法如下:
mysql [-u username] [-h host] [-p[password]] [dbname]
username 與 password 分別是 MySQL 的用戶名與密碼,mysql的初始管理帳號(hào)是
root,沒有密碼,注意:這個(gè)root用戶不是Linux的系統(tǒng)用戶。MySQL默認(rèn)用戶是root,
由于初始沒有密碼,第一次進(jìn)時(shí)只需鍵入mysql即可。
[root@bjhly local]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.16-standard
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
出現(xiàn)了“mysql>”提示符,恭喜你,安裝成功!
增加了密碼后的登錄格式如下:
mysql -u root -p
Enter password: (輸入密碼)
其中-u后跟的是用戶名,-p要求輸入密碼,回車后在輸入密碼處輸入密碼。
3.4.3增加MySQL用戶
格式:grant select on 數(shù)據(jù)庫.* to 用戶名@登錄主機(jī) identified by "密碼"
例1、增加一個(gè)用戶user_1密碼為123,讓他可以在任何主機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫有查詢、插入、修改、刪除的權(quán)限。首先用以root用戶連入MySQL,然后鍵入以下命令:
mysql> grant select,insert,update,delete on *.* to zsx@"%" Identified by "123";
例1增加的用戶是十分危險(xiǎn)的,如果知道了user_1的密碼,那么他就可以在網(wǎng)上的任何一臺(tái)電腦上登錄你的MySQL數(shù)據(jù)庫并對(duì)你的數(shù)據(jù)為所欲為了,解決辦法見例2。
例2、增加一個(gè)用戶user_2密碼為123,讓此用戶只可以在localhost上登錄,并可以對(duì)數(shù)據(jù)庫aaa進(jìn)行查詢、插入、修改、刪除的操作(localhost指本地主機(jī),即MySQL數(shù)據(jù)庫所在的那臺(tái)主機(jī)),這樣用戶即使用知道user_2的密碼,他也無法從網(wǎng)上直接訪問數(shù)據(jù)庫,只能通過MYSQL主機(jī)來操作aaa庫。
mysql>grant select,insert,update,delete on test.* to zsx@localhost identified by "123";
用新增的用戶如果登錄不了MySQL,在登錄時(shí)用如下命令:
mysql -u user_1 -p -h 192.168.113.50 (-h后跟的是要登錄主機(jī)的ip地址)
3. 4. 4啟動(dòng)與停止
1、 啟動(dòng)
MySQL安裝完成后啟動(dòng)文件mysql在/etc/init.d目錄下,在需要啟動(dòng)時(shí)運(yùn)行下面命令即可。
[root@bjhly init.d]# /etc/init.d/mysql start
停止
/usr/bin/mysqladmin -u root -p shutdown
3. 4. 5增加MySQL用戶
增加一個(gè)用戶username密碼為123,讓此用戶只可以在localhost上登錄,并可以對(duì)數(shù)據(jù)庫test進(jìn)行查詢、插入、修改、刪除的操作(localhost指本地主機(jī),即MySQL數(shù)據(jù)庫所在的那臺(tái)主機(jī)),這樣用戶即使用知道username的密碼,他也無法從網(wǎng)上直接訪問數(shù)據(jù)庫,只能通過MYSQL主機(jī)來操作test庫。
mysql>grant select,insert,update,delete,create on test.* to username@localhost identified by "123";
3.4.6備份與恢復(fù)
1、備份
例如將Linux環(huán)境下的數(shù)據(jù)庫test備份到windows中去,可以通過windows下的
mysql連接到Linux 的mysql數(shù)據(jù)庫,然后導(dǎo)出數(shù)據(jù)庫為腳本back_test.sql。
2、恢復(fù)
例如將windows環(huán)境下備份的數(shù)據(jù)庫腳本back_test.sql恢復(fù)到Linux中去,同樣可以通過windows下的mysql連接到Linux 的mysql數(shù)據(jù)庫,還原數(shù)據(jù)庫。
3.5 網(wǎng)站部署
3.5.1 通過ftp工具將在windows下開發(fā)的JSP上傳到linux的resin中相應(yīng)的目錄。
將doc 和 webapps 目錄下的文件拷貝到linux中的/usr/java/resin-2.1.12
的相應(yīng)目錄中去。
3.6 ftp
3.6.1 文件傳輸協(xié)議原理
互聯(lián)網(wǎng)文件傳輸協(xié)議(File Transfer Protocol ,FTP) 標(biāo)準(zhǔn)是在RFC959說明的。該協(xié)議定義了一個(gè)從遠(yuǎn)程計(jì)算機(jī)系統(tǒng)和本地計(jì)算機(jī)系統(tǒng)之間傳輸文件的一個(gè)標(biāo)準(zhǔn)。一般來說,傳輸文件的用戶需要先經(jīng)過認(rèn)證以后才能登錄網(wǎng)站,然后方能訪問在遠(yuǎn)程服務(wù)器的文件。而大多數(shù)的FTP服務(wù)器往往提供一個(gè)GUEST的公共帳戶來允許沒有遠(yuǎn)程服務(wù)器的用戶可以訪問該FTP服務(wù)器。
3.6.2 使用的軟件是 IglooFTP PRO3.9。IglooFTP PRO可以說是LINUX中最好的FTP客戶端軟件之一,其界面用"華麗"來形容一點(diǎn)也不過分,他最大的特點(diǎn)就是容易使用,功能強(qiáng)大、可以調(diào)整許多設(shè)定選項(xiàng)。很多的選擇項(xiàng)都可點(diǎn)選相關(guān)的圖標(biāo)來完成;有快速的工具列、快速連線列,和本地端的圖形化目錄瀏覽視窗,漂亮的文件相關(guān)圖標(biāo),并且還有Netscape 的小工具列。服務(wù)器地址簿,使用了樹狀階層式的網(wǎng)站方法,每一個(gè)ftp site以及group的資料都能很容易地被調(diào)整。另外還有不同使用者(user profile)的管理;遠(yuǎn)端控制一臺(tái)FTP server到FTP client 傳輸資料(FXP transfers);URL剪貼簿中的監(jiān)控;防火墻的支持(包括了SOCKS 5, ftp-gw, WinGate proxy等等);遠(yuǎn)端目錄的快取功能;排列(queue)管理;還有許多進(jìn)階的使用者命令等等。
3.6.3 Wu-FTP
安裝Wu-FTP
根據(jù)服務(wù)對(duì)象的不同,F(xiàn)TP服務(wù)可以分為兩類:一類是系統(tǒng)FTP服務(wù)器,它只 允
許系統(tǒng)上的合法用戶使用;另一類是匿名FTP服務(wù)器,它允許任何人登錄到FTP服務(wù)
器,和服務(wù)器連接后,在登錄提示中輸入Anonymous,即可訪問服務(wù)器。針對(duì)這兩種
服務(wù),可以通過RedHat的第一張光盤安裝Wu-Ftpd的RPM包,只需以Root身份進(jìn)
入系統(tǒng)并運(yùn)行下面的命令即可:
Rpm - ivh anonftp -x.x-x.i386.rpm
Rpm - ivh wu-ftpd-x.x.x-x.i386.rpm
其中-x.x-x和-x.x.x-x是版本號(hào)。
3.6.4 啟動(dòng)和關(guān)閉FTP服務(wù)器
自動(dòng)啟動(dòng)固然方便,但是,當(dāng)我們更改了Wu-Ftpd配置文件,需要用到手工啟動(dòng):
啟動(dòng):/usr/sbin/ftprestart
關(guān)閉:/usr/sbin/ftpshut
3.6.5 FTP服務(wù)器的配置
FTP服務(wù)器是一種很常用的服務(wù)功能,所以Linux在默認(rèn)狀態(tài)下會(huì)安裝FTP服務(wù)器。在登錄FTP服務(wù)器之前,必須先檢查 /etc/xinetd.d/wu-ftpd這個(gè)文件的內(nèi)容,用文本編輯器打開此文件。(將disable =yes 改為 ”no”)
為了確保FTP服務(wù)器安全,必須設(shè)置一些重要的配置文件,以更好地控制用戶的訪問權(quán)限。這些配置文件是:/etc/ftpusers、/etc/ftpconversions、/etc/ftp-groups、/etc/ftpphosts、/etc/ftpaccess。利用這些文件,能夠非常精確地控制哪些人、在什么時(shí)間、從什么地點(diǎn)可以連接服務(wù)器,并且可以對(duì)他們連接后所做的工作進(jìn)行檢查跟蹤。
/etc/ftpusers:該文件夾中包含的用戶不能通過FTP登錄服務(wù)器,有時(shí)將需要禁止的用戶賬號(hào)寫入文件/etc/ftpuser中,這樣就可以禁止一些用戶使用FTP服務(wù)。
/etc/ftpconversions:用來配置壓縮/解壓縮程序。
/etc/ftpgroups:創(chuàng)建用戶組,這個(gè)組中的成員預(yù)先定義可以訪問FTP服務(wù)器。
/etc/ftpphosts:用來根據(jù)禁止或允許遠(yuǎn)程主機(jī)對(duì)特定賬戶的訪問,例如:
allow zsx 192.168.12.33
deny zlc 192.168.12.34
表示允許zsx用戶從192.168.12.33這個(gè)IP連線訪問,拒絕zlc從192.168.12.34.這個(gè)
IP連線訪問。
/etc/ftpaccess:是非常重要的一個(gè)配置文件,用來控制存取權(quán)限,文件中的每一行定義一個(gè)屬性,并對(duì)屬性的值進(jìn)行設(shè)置。下面對(duì)它的一些常用配置做一點(diǎn)介紹:
1、定義用戶類別
格式:class [類名] [real/guest/anonymous][IP地址]
功能:這個(gè)指令的功能設(shè)定FTP服務(wù)器上用戶的類別。并可對(duì)客戶端的IP地址進(jìn)行限制,允許特定或者全部的IP地址訪問FTP服務(wù)器。
2、登錄重試次數(shù)
在命令行中輸入:loginfails 10,這表明如果10次還沒有登錄成功就切斷連線。
3、密碼檢查
格式:passwd-check〈strictness〉warn
是對(duì)匿名用戶的密碼使用方式的檢查,其中strictness〉是三個(gè)可能的字符串之一:None、Trivial、RFC822。若選None,表示將不對(duì)口令做任何檢查;若選Trivial,表示對(duì)口令有一定的要求,它需要在口令中至少要有一個(gè)@符號(hào);若選RFC822,則表示最嚴(yán)格,要求E-mail地址必須遵守RFC822報(bào)文標(biāo)題標(biāo)準(zhǔn)(如:ZLC@domain.com )。
例如:passwd-check rfc822 warn,表明密碼的要求很嚴(yán)格,當(dāng)密碼不符合規(guī)定時(shí)出現(xiàn)
警告信息。
4、登錄人數(shù)的限制
格式:limit [類別] [人數(shù)] [時(shí)間] [文件名]
設(shè)置指定類別在約定時(shí)間內(nèi)可以登錄FTP的人數(shù)。例如:limit remote
Any/etc/many.msg,說明類別Remote類別在任何時(shí)間內(nèi)登錄人數(shù)不超過20個(gè)人否則
會(huì)顯示Many.msg警告信息。
合理運(yùn)用這些配置,可以有效地保護(hù)好我們的服務(wù)器。
驗(yàn)證、安裝、配置好FTP服務(wù)器后,就可以進(jìn)行驗(yàn)證,用圖形工具和命令行均可訪
問FTP服務(wù)器。在Linux里最常用的命令為FTP,它提供了一個(gè)并不復(fù)雜的FTP服
務(wù)器接口。與FTP服務(wù)器連接,只需要在命令提示符后輸入:FTP Servername,用主機(jī)名或希望連接的FTP服務(wù)器的IP地址代替Servername,按照提示輸入用戶名和口令,然后用標(biāo)準(zhǔn)的Linux上移或下移FTP服務(wù)器目錄結(jié)構(gòu)。另外,也可以采用圖形化FTP程序,包括窗口式gFTP,可以借助Web瀏覽器去訪問FTP服務(wù)器。以上是在Linux下進(jìn)行FTP服務(wù)器配置的要點(diǎn),另外還有一個(gè)很好的圖形工具在linux7.2 中的 /開始/KDE菜單/系統(tǒng)/FTPD編輯器。這個(gè)可視的編輯器同樣可以完成上述的各項(xiàng)功能。
3.7 Telnet遠(yuǎn)程管理
3.7.1 遠(yuǎn)程登錄原理
利用telnet命令通過網(wǎng)絡(luò)登錄遠(yuǎn)程計(jì)算機(jī),就好象在本地計(jì)算機(jī)操作一樣。
但是用戶必須知道遠(yuǎn)程計(jì)算機(jī)的網(wǎng)址或IP地址,以及帳號(hào)與密碼。
3.7.2 安裝Telnet 工具
雙擊安裝程序t98setup.exe,Telnet是圖形應(yīng)用程序,它允許用戶遠(yuǎn)程登錄
到遠(yuǎn)程計(jì)算機(jī)并發(fā)布命令。該telnet 采用的協(xié)議是SSH-3DES。
3.7.3 啟動(dòng)telnet服務(wù)
自從Red Hat Linux 7.1半開始,默認(rèn)并不會(huì)啟用telnet 服務(wù),因此任何人都不得登錄到本機(jī)來。為了啟動(dòng)此向服務(wù),用文本編輯器打開 /etc/xinetd.d/telnet 配置文件,并做以下的修改:
#default:on
…
service telnet
{
若disable = yes 將“yes” 改為no.
…
}
保存文件后,執(zhí)行/etc/init.d/xinetd reload 命令重新載入配置文件,將立即啟用telnet服務(wù)。但是,為了安全上的考慮,Linux系統(tǒng)默認(rèn)并不允許以root帳號(hào)遠(yuǎn)程登錄!