redhat搭建http伺服器
㈠ 怎麼樣在Redhat linux 下配置ftp,Web,Mysql服務(要具體的,最好完整的)
1,Linux下架FTP!!
Linux下一般最常用的工具wu-ftpd.
wu-ftpd的安裝非常容易,大多數版本的Linux中都包含了wu-ftpd的rpm軟體包,你可以在安裝Linux時指定裝入。如果你想自行編譯源代碼,也可以到ftp://ftp.wu-ftpd.org下載最新版本的源代碼包。
安裝好以後,可以用ckconfig命令來檢查是否已經正確安裝。在/etc/passwd中可以指定ftp用戶的登入目錄。
wu-ftpd主要有以下6個配置文件:
ftpaccess(主要配置文件,控制存取許可權)
ftpconvertions(配置文件壓縮/解壓縮轉換)
ftpgroups(設定ftp自己定義的群組)
ftphosts(設定個別的用戶許可權)
ftpservers(設定不同IP/Domain Name以對應到不同的虛擬主機)
ftpusers(設定哪些帳號不能用ftp連線)
下面我們來一一介紹。
⒈/etc/ftpaccess(wu-ftpd的主要配置文件)
class--定義群組,用法如下:
class<種類>;<用戶地址>;[<用戶地址>;……]
由class定義的群組用戶才可以連線進來,可以使用多層式的class來規范哪些群組的用戶能夠從哪些地方上來。這里有三個重要的種類,real、anonymous個guest。real如果沒有列在定義中,那麼這台機器中任何真實的一般用戶都無法用自己的帳號連上來。anonymous如果沒有在定義,就表示不讓沒有帳號的的人連上來。如果有定義guest,那麼guest群組的人就可以上來。另外<用戶地址>;是指ftp上來的用戶會用到的IP地址,則可自行設定。以下是一些例子:
class all real,guest,anonymous *
定義了一個名為all的class,包含三種人,所有IP的連線用戶(也就是所有人都包括了)
class local real localhost loopback
local這個class說,只有real的用戶可以從本機機器連上來
class remote guest,anonymous *
remote這個class包含了從任何地方上來的guest和anonymous用戶,但是real用戶不算
class rmtuser real !*.example.com
rmtuser這個class包含了從外面來的(除了example.com)真實用戶
autogroup--自動對應群組,用法如下:
autogroup[……]
當你定義好的那些同屬於一個class的用戶,一旦連線上來就會被對應到一個相應的群組下面,這樣你就可以用Unix的文件許可權對某一群人做限制。
deny--拒絕某些地址連線,用法如下:
deny<拒絕連線的地址>;<信息文件>;
禁止某些機器連線,並顯示<信息文件>;。例如:
deny 210.62.146.*:255.255.255.254 /etc/reject.msg
guestgroup--設定訪客群
guestuser--設定訪客帳號
realgroup--設定真實群組
realuser--設定真實帳號
nice--設定給某些class多少優先權,用法如下:
nice
在Linux中,nice的值是-20(最優先)到19(最後處理),這里你可以指定負的值來提高某class的優先順序。
defumask--設定某class的umask,用法如下:
defumask[]
umask是建立文件時該文件的的許可權掩碼
tcpwindow--設定tcpwindow的大小
keepalive--設定是否使用TCP SO_KEEPALIVE來控制斷線情形
timeout--設定連線超時,用法如下:
timeout accept<秒>;
接受連線超時,預設120秒
timeout connect<秒>;
連線建立超時,預設120秒
timeout data<秒>;
數據傳送超時,預設1200秒
timeout idle<秒>;
用戶發呆超時,預設900秒
file-limit--限制某class只能傳幾個文件,用法如下:
file-limit[][]
對某個class限制存取文件的數目,包含了in(上傳)、out(下載),total raw代表整個傳輸的結果,不光是數據文件。例如:
file-limit out 20 lvfour
限制lvfour這個class的用戶最多隻能下載20個文件
byte-limit--限制某class只能傳幾個位元組,用法跟file-limit相似
limit-time--限制一個連線只能持續多久,用法如下:
limit-time{*|anonymous|guest}<分鍾>;
為了避免有人掛在站上不下來,可以用這個方法限制用戶的上線時間,例如:
limit-time guest 5
讓guest帳號的用戶只能用5分鍾
limit--限制某class能同時幾人上線,用法如下:
limit<連線數目>;<時間區段>;<額滿信息文件>;
設定某個class在某一時間區段內最多能夠幾人同時上線,後面是當超過連線數目時要顯示的信息。例如:
limit all 32 Any /home/ftp/etc/toomanyuser.msg
限制所有連線在任何時間只能有32個用戶,超過則拒絕連線並顯示信息
limit levellone 5 Any2300-0600 /home/ftp/etc/toomanyuser.msg
限制levellone這個class的用戶在23:00到6:00這段時間內只能有5人連線
noretrieve--設定哪些文件不可下載
noretrieve[absolute/relative][class=]…[-][<文件名>;…]
absolute或relative指文件是用絕對路徑還是相對路徑
allow=retrieve--設定哪些文件可以下載
allow[absolute/relative][class=]…[-][<文件名>;…]
loginfails--設置登入錯誤可嘗試的次數
當用戶連線時可能打錯ID或密碼,這個設定可以讓他打錯幾次以後就斷線,避免有人用窮舉法猜測密碼。
private--設定線上是否可以執行SITE GROUP/SITE GPASS
當開放SITE GROUP與SITE GPASS指令時,可以用這兩個指令切換到/etc/ftpgroup的群組。一般而言我們不會用到這個功能,以避免安全漏洞。
greeting--顯示Server的版本信息,用法如下:
greeting
當用戶登入畫面顯示的server信息,full是預設值,包含版本號以及hostname,brief只有hostname,而terse只有「FTP server ready」的信息。
barnner--設定未進入Login畫面之前用戶看到的信息,用法如下:
banner<文件路徑>;
這里敘述了在用戶登入時,在還沒打ID/Password之前要出現的信息。文件路徑指的是相對於真實的路徑,而不是相對於ftp的根目錄。
host--設定ftp主機名
email--指定ftp管理者的email地址
message--信息文件的設定,用法如下:
message<文件>;{<何時>;{……}}
這里的文件的路徑是相對於ftp的根目錄的,「何時」是指當你做了什麼動作之後的反應,有幾個選擇:
login(登入時)
cwd=<目錄>;(進入某目錄時)
class 名稱是前面已經定義過的,允許你的信息只對哪些人發出。
而信息文件的內容除了文字以外,還可以使用以下一些事先定義好的代號:
%T(本機時間)
%F(目前分區所剩餘的空間)
%C(目前所在的目錄)
%E(管理者的E-mail)
%R(客戶端主機名稱)
%L(本機主機名稱)
%U(用戶名稱)
%M(與我相同class用戶允許多少人連線)
%N(與我相同class用戶目前有多少人連線)
%B(絕對磁碟限制大小,目前分區(單位blocks))
%b(preferred磁碟限制大小,目前分區(單位blocks))
%Q(目前已使用的blocks)
%I(最大可使用的inodes(+1))
%i(Preferred inodes限制)
%q(目前使用的indoes)
%H(超量使用磁碟空間的時間限制)
%h(超量使用文件數目的時間限制)
readme--通知用戶哪些README文件已經更新
log commands--記錄用戶所使用過的命令,用法如下:
log commands<用戶種類>;
log transfers--記錄用戶所傳輸的文件,用法如下:
log transfers<用戶種類>;<傳輸方向>;
設定有哪些類型的用戶傳輸文件需要記錄,包含了inbound(用戶上傳)和outbound(用戶下載),例如:
log transfers anonymous,guest inbound,outbound
log security--記錄安全性,用法如下:
log security<用戶種類>;
特別用於記錄某類用戶關於noretrive、notar等有關安全性的記錄
log syslog--記錄到系統的syslog文件
alias--設定目錄別名,用法如下:
alias<別名字元串>;<目錄>;
cdpath--設定cd更換目錄搜索順序
compress,tar--設定是否自動壓縮,用法如下:
compress[……]
tar[……]
定義哪些人可以執行壓縮以及tar
shutdown--通知用戶要關站了
shutdown<信息文件>;
如果信息文件存在的話,當這個文件指定的某時間以後,就會拒絕連線並切斷已有的連線,等時間一到就關機。這個信息文件的格式如下:
<年>;<月>;<日>;<時>;<分>;<拒絕倒數>;<斷線倒數>;<文字>;
daemon address--指定只監聽某個IP地址,用法如下:
daemon address
當你有許多IP的時候,使用這個選項將會取消其它任何虛擬FTP主機的設定。不設定的話,監聽所有IP。
virtual--設定虛擬FTP站台
wu-ftpd提供了虛擬主機的功能,也就是說,在同一台機器上提供了不同FTP站台,以主機名稱或IP來區分;當然你要用名稱的話,還需要跟DNS配合才行。virtual有很多個設定:
virtual
<路徑>;
可以是主機名或IP地址
root指的是ftp的根目錄,banner是歡迎信息,logfile指的是這個虛擬站台的log文件
以下是一些例子:
virtual virtual.com.bj root /home/ftp2
virtual virtual.com.bj banner /etc/vftpbanner.2
virtual virtual.com.bj logfile /etc/viftplog.2
virtual
<字母>;
用戶可以查到hostname跟管理者email,以下是一些例子:
virtual 210.62.146.50 hostname virtual.site.com.bj
virtual vritual.site.com.bj email [email protected]
virtual
allow<用戶>;[<用戶>;……]
virtual
deny<用戶>;[<用戶>;……]
很明顯,以上兩個選項是設定是否允許連線的,以下是一些例子:
virtual virtual.site.com.bj allow *
virtual virtual.site.com.bj deny badman
virtual
private
本虛擬站台拒絕anonymous用戶
defaultserver deny <用戶>;[<用戶>;……]
defaultserver allow <用戶>;[<用戶>;……]
當我們使用了虛擬主機,原先的deny,allow設定不知道要設哪個server,所以會無效,用defaultserver代表原來的主機
defaultserver private
主站台拒絕anonymous用戶
passive address--轉換IP數值
passive address<外部IP>;/cidr
passive ports--passive的ports范圍
passive ports
pasv-allow--允許使用pasv
pasv-allow[<地址>;……]
port-allow--允許使用port
port-allow[<地址>;……]
mailserver--指定Upload通知的mail伺服器
incmail--指定anonymous upload的email通知地址
virtual incmail--指定虛擬主機anonymous upload的email通知地址
defaultserver incmail--指定預設主機anonymous upload的email通知地址
mailfrom--通知的寄信人upload
virtual mailfrom--虛擬主機upload通知的寄信人
defaultserver mailfrom--預設主機upload通知的寄信人
chmod--設定是否可以改變文件許可權
delete--設定是否可以刪除文件
overwrite--覆蓋文件
rename--重命名文件
umask--允許設定umask
passwd-check--設定anonymous FTP的密碼檢查程度,用法如下:
passwd-check()
設定對anonymous ftp用戶的密碼是否檢查,none表示不檢查,trivial為包含@的任意密碼,rfc822則表示密碼要遵循RFC822格式,enforce表示密碼檢查不過不允許進入,warn表示密碼檢查不過只出現警告信息。
deny=email--拒絕特定的email當密碼
path-filer--攝定哪些文件名不可使用
path-filer<錯誤信息文件>;<允許字元>;<不允許字元>;
upload--設定upload許可權
upload[absloute/relative][class=]…[-]<設定的目錄>; >;[dirs/nodirs][d_mode]
用來對我們要設定的目錄做許可權設定:
absoulte/relative使用絕對路徑或是相對路徑
class=指定某個class
root-dir指的是對哪些root-dir的人,也就是chroot後的登入目錄,應用這個規則
設定的目錄指的就是我們要限制的目錄
yes/no指得是能否在此目錄下開新文件
owner,group指出是開出來的文件擁有者及群組
Mode指的是文件許可權
dirs/nodirs指的是能否開新目錄
d_mode設定建立新目錄時目錄的許可權,如果不設定會根據mode來設定
thoughput--控制下載速度
thoughput<子目錄列表>;<文件>;<遠端地址列表>;
對遠端的地址,控制他抓某個子目錄下的某些文件時的速度,例如:
thoughput /e/ftp * * oo - *
thoughput /e/ftp /sw* * 1024 0.5 *
thoughput /e/ftp sw* readme oo - *
thoughput /e/ftp sw* * oo - *.foo.com
以上的設定你是否能夠看出來呢?「oo」表示不限制bytes/sec,「-」或是「1.0」都是代表一倍。第一行的意思是說,在/e/ftp下面的文件不限制下載速度;第二行說,在/sw*下面的任何文件限速為1024bytes/sec*
0.5=512bytes/sec;第三行又把readme文件的限速取消;最後一行則對*.foo.com開放全速。
anonymous-root--對某class設定匿名用戶的根目錄
anonymous-root[]
guest-root--預設一個guest用戶根目錄
guest-root[]
其中用於指定uid的范圍
deny-uid,deny-gid--拒絕某段UID(GID)范圍
allow-uid,allow-gid--允許某段UID(GID)范圍
restricted-uid,restricted-gid--限制用戶不能離開他的登錄目錄
unrestricted-uid,unrestricted-gid--用戶可以離開他的登錄目錄
dns refuse_mismatch--設定DNS查到名稱與用戶設定不符的動作
dns refuse_mismatch<信息文件>;[override]
當用戶使用未注冊IP時,拒絕他的連線,override則是不理會錯誤而讓他連線,信息文件則是我們要給用戶看的。
dns refuse_no_reverse--設定無反查記錄拒絕連線
dns refuse_no_reverse<信息文件>;[override]
當用戶的IP反查無記錄時,拒絕他的連線
dns resolveoptions--設定DNS解析選項
dns resolveoptions[options]
這里可以設定DNS解析選項
⒉/etc/ftphosts
ftphosts文件其實跟ftpaccess裡面的access,deny很像,它是特別用來設定某些ID的連線,它沒有class定義,所以必須是真實用戶。
allow|deny<用戶>;<地址>;[<地址>;……]
以下是一些例子:
allow rose 140.0.0/8
deny jack 140.123.0.0:255.255.0.0
允許rose從140.*.*.*進來,拒絕jack從140.123.*.*上來
⒊/etc/ftpservers
這個文件控制了當你有不同的IP/hostname的時候,進來的連線使用哪一個配置文件。例如:
10.196.145.10 /etc/ftpd/ftpaccess.somedomain/
10.196.145.200 /etc/ftpd/ftpaccess.someotherdomain/
some.domain internal
10.196.145.20 /etc/ftpd/config/faqs.org/
ftp.some.domain /etc/ftpd/config/faqs.org/
⒋/etc/ftpusers
在這個文件里記錄的用戶禁止使用FTP
⒌/etc/ftpgroups
給SITE GROUP指令使用,線上切換group。SITE EXEC容易造成安全漏洞,一般我們都不開放。
⒍/etc/ftpconversions
用來做tar、compress、gzip等動作指令配置文件,只要用預設即可,如果你不開放即時壓縮打包,也可以把內容清除。
2,Linux操作系統近幾年有了蓬勃的發展,在整個世界范圍內得到了越來越多公司和團體的支持,尤其是最近IBM公司的鼎力支持,更是使Linux伺服器如虎添翼,更上一層樓
Linux操作系統近幾年有了蓬勃的發展,在整個世界范圍內得到了越來越多公司和團體的支持,尤其是最近IBM公司的鼎力支持,更是使Linux伺服器如虎添翼,更上一層樓。而在國內,Linux的應用也是方興未艾,眾多公司已經投入到Linux系統的研發和推廣工作中。一些優秀的Linux操作系統相繼出現,比如紅旗Linux等。但是我國的Linux應用水平還很低,熟悉Linux的人員嚴重缺乏,Linux專業人才的缺乏已成為Linux在國內應用和普及的瓶頸問題。據《開放系統世界》2003年第八期介紹,中國五年內Linux人才需求量將會超過120萬。而「1+1+1」工程的實施,也是間接地告訴我們這個問題的嚴重性。如此大好時機,我們干嗎還愣著不動呢!如果你是一位Linux愛好者,你可能已經掌握了基本的Linux的知識與操作,毫無疑問,你並不會去滿足這樣小小的成就。Linux為何如此的流行?其最大的特點莫過於功能強大,性能穩定的伺服器應用了。像WWW,MAIL,FTP,DNS和SMB等。在這篇文章中,我將以Redhat Linux 9為藍本,從Web伺服器的一些最基本的操作入手,從初學者使用的態度,讓讀者正確充分的認識Apache。好,現在就讓我們一起踏上征服Apache的自由之路吧。
Apache的主要特徵是:
. 可以運行上所有計算機平台;
. 支持最新的HTTP 1.1協議;
. 簡單而強有力的基於文件的配置;
. 支持通用網關介面CGI;
. 支持虛擬主機;
. 支持HTTP認證;
. 集成Perl腳本編程語言;
. 集成的代理伺服器;
. 具有可定製的伺服器日誌;
. 支持伺服器端包含命令(SSI)
. 支持安全Socket層(SSL)
. 用戶會話過程的跟蹤能力;
. 支持FastCGI;
. 支持Java Servlets。
安裝Apache
下面我們就開始漫漫征服Apache之旅,通過循序漸進的需求實例,一步步地學習使用Apache,從入門到精通。
系統需求
運行Apache不需要太多的計算資源。它在有6-10MB硬碟空間和8MB RAM的Linux系統上運行得很好。然而,只運行Apache可能不是你想做的事情。更可能的是,你想運行Apache來提供WWW服務、啟動CGI進程以及充分利用所有WWW能夠提供的令人驚奇的功能。在這種情況下,你需要提供反映負載要求的額外的磁碟空間和內存空間。也就是說,如果僅僅是啟動WWW服務並不需要太多的系統資源,但是想要能為大量的客戶提供服務就需要更多的系統資源。
獲取軟體
你可以在http://www.apache.org中獲得Apache的最新版。而幾乎所有的Linux發行版中均包含有Apache軟體包,你也可以直接使用它。
需要注意的是,Apache軟體包有兩種:一種是源代碼,下載後需要自己重新編譯;另一種是可執行文件,下載後只需解壓就可以使用。
安裝軟體
你可以通過以下三種方法安裝Apache伺服器。
1.如果你安裝的Linux版本中帶用Apache的話,就在選擇所要安裝的伺服器的時候,將httpd這個服務選上,Linux安裝程序將自動完成Apache的安裝工作,並做好基本的配置。
2.使用可執行文件軟體包,這比較適合那些對編譯工作不是太熟悉的初級用戶,因為它相對比較簡單。
下載軟體包apache_1.2.4.e.tar.gz
tar xvzf apache_1.2.4.e.tar.gz
這就完成了安裝工作,簡單吧!
如果你使用的是RedHat Linux的話,你也可以下載apache_1.2.4.rpm軟體安裝包,然後使用rpm -ivh apache_1.2.4.rpm命令安裝。
3.如果你想把Apache伺服器充分利用起來的話,就一定要自己編譯Apache定製其功能。
下載包含Apache源代碼的軟體包apache_1.2.4.tar.gz; 然後用tar命令將它解開; 將當前目錄改變為Apache源代碼發行版的src目錄; 將配置樣本文件(Configuration.tmpl)復制為Configuration文件;
編輯Configuration文件中的配置選項:
Makefile配置選項:一些編譯選項:
. "CC="一行指定用什麼編譯軟體編譯,一般為"CC=gcc";
. 如果需要將額外的標志(參數)指定給C編譯軟體,可以使用:
EXTRA_CFLAGS=
EXTRA_LFLAGS=
. 如果系統需要特殊的庫和包含文件,可以在這里指定它們:
EXTRA_LIBS=
EXTRA_INCLUDES=
. 如果你要改變代碼優化設置的話,你須將下面一句去掉注釋,然
後改成你所需要的值:
#OPTIM=-O2
Rule配置選項:用來決定需要什麼功能,一般情況下無需改變。
模塊配置:模塊是Apache的組成部分,它為Apache內核增加新功能。通過使用模塊配置,可以自定義在Apache伺服器中需要什麼功能,這個部分也是Apache靈活性的表現。模塊配置行如下所示:
AddMole moles/standard/mod_env.o
如果你需要Apache伺服器具備什麼功能,就將那個模塊用AddMole語句加到配置文件Configuration中去。
3,一、 MYSQL的基本概念
1、MYSQL的定義
MYSQL一種多用戶、多任務的資料庫伺服器軟體
2、MYSQL的特點
支持多平台,沒有內存漏洞,分布式處理
支持JAVA、php、PERL、支持數據類型
支持ODBC,支持SQL查詢
二、 安裝MYSQL的伺服器
1、 RPM方式MYSQL
#RPM –ivh MYSQL-3。23-3.i386.rpm
#RPM –ivh MYSQL-client-3.23-33.i386.rpm
#RPM-ivh MYSQL-Shared.3.23-33.i386.rpm
#Tpm -ivh MYSQL –server.3.23-33.i386.rpm
2.編譯安裝方式
#tar -xvzf mysql 3.23.tar.gz
# cd mysql-3.23
#/configure --prdfix=/usr/local
#make
#malke install
# cd/usr/local/bin/
#/mysql-install-db 初始資料庫系統。
系統庫作用:記錄伺服器的設置參數,存放用戶庫信息
安全選項
#safe-mysqld
㈡ 如何 在Redhat Linux 系統上安裝和配置apache 伺服器
下載安裝就不說了,
配置
apache
2.0的主配置文件為httpd.conf。以rpm包方式安裝則配置文件保存在/etc/httpd/conf/目錄下。可以直接修改httpd.conf文件也可以用redhat
linux自帶的圖形化工具來配置。打開啟動程序->系統設置->伺服器設置->http伺服器
port
80
#定義了web伺服器的偵聽埠,默認值為80
user
apache
#一般情況下,以nobody用戶和nobody組來運行web伺服器
serveradmin
root@localhost
#指定伺服器管理員的e-mail地址。伺服器自動將錯誤報告到該地址。
serverroot
/etc/httpd
#伺服器的根目錄,一般情況下,所有的配置文件在該目錄下
maxkeepaliverequests
100
#永久連接的http請求數
maxclients
150
#同一時間連接到伺服器上的客戶機總數
errorlog
logs/error_log
#用來指定錯誤日誌文件的名稱和路徑
pidfile
run/httpd.pid
#用來存放httpd進程號,以方便停止伺服器。
timeout
300
#設置請求超時時間,若網速較慢則應把值設大。
documentroot
/var/www/html
#用來存放網頁文件
㈢ 如何搭建像linux公社資源站那樣的Http 文件伺服器, 附帶公社http://linux.linuxidc.com/
這是http伺服器的基本功能,如果不設置index這類文件,就可以顯示目錄列表。
㈣ linux centos怎麼搭建http文件伺服器
centos如果是建立文件伺服器一般使用ftp,安裝vsftp服務即可。
如果使用http的文件伺服器,可以使用apache的目錄瀏覽功能。
㈤ linux系統下怎麼搭建網站伺服器
具體方法如下:
1、使用putty或類似的SSH工具登錄伺服器(本地安裝跳過);
㈥ linux怎麼搭建http伺服器
實際上就是apache
http://blog.163.com/hlz_2599/blog/static/142378474201182811611382/
㈦ 如何在linux搭建完整的web伺服器
可以參考如下Web伺服器的建立過程。示例環境及web伺服器軟體:
Ubuntu 12.04
LAMP(Linux,Apache,Mysql,PHP)
1、安裝Apache
(1)在安裝HTTP Server之前需安裝APR(Apache Portable Runtime)和APR-util安裝APR
$ tar zxvf apr-1.4.6.tar.gz
$ cd apr-1.4.6/
$ ./configure
$ make
$ sudo make install
(2)安裝APR-util
$ tar zxvf apr-util-1.4.1.tar.gz
$ cd apr-util-1.4.1
$ ./configure –with-apr=/usr/local/apr (whereis apr)
$ make
$ sudo make install
(3)安裝httpd-2.4.2.tar.bz2默認安裝位置/usr/local/apache2網頁放在/usr/local/apache2/htdocs配置文件/usr/local/apache2/conf/httpd.conf
$ tar jxvf httpd-2.4.2.tar.bz2
$ cd httpd-2.4.2/
$ ./configure
$ make
$ sudo make install
(4)啟動HTTP Server$ sudo /usr/local/apache2/bin/apachectl startAH00558: httpd: Could not reliably determine the server』s fully qualified domain name, using 127.0.1.1. Set the 『ServerName』 directive globally to suppress this message
(5)查看http是否正常運行$ netstat -a | grep httptcp 0 0 *:http *:* LISTEN
(6)在瀏覽器輸入127.0.0.1如果正常應該顯示「It works!」
2、安裝MySQL
(1)、下載安裝mysql-5.5.25.tar.gz,默認安裝位置/usr/local/mysql/
$ tar zxvf mysql-5.5.25.tar.gz
$ cd mysql-5.5.25/
$ sudo groupadd mysql
$ sudo useradd -r -g mysql mysql
$ cmake .
$ make
$ sudo make install
$ cd /usr/local/mysql/
$ sudo chown -R mysql .
$ sudo chgrp -R mysql .
$ sudo scripts/mysql_install_db –user=mysql
$ sudo chown -R root .
$ sudo chown -R mysql data/
$ sudo cp support-files/my-medium.cnf /etc/my.cnf
$ sudo cp support-files/mysql.server /etc/init.d/mysql.server
(2)、啟動MySQL:
方法1:$ sudo service mysql.server start
方法2:$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
3、安裝PHP
(1)安裝下載php-5.4.4.tar.gz
$ tar zxvf php-5.4.4.tar.gz
$ cd php-5.4.4
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-mysqli --enable-mbstring --with-mcrypt(可能需要安裝libmcrypt-dev )
$ sudo make install
$ sudo cp php.ini-development /usr/local/lib/php.ini
(2)配置HTTP Server使之支持PHPapache配置文件/usr/local/apache2/conf/httpd.conf修改或添加如下配置
<;IfMole dir_mole>
DirectoryIndex index.php
<;/IfMole>
<;FilesMatch \.php$>
SetHandler application/x-httpd-php
<;/FilesMatch>
(3)重啟HTTP Server
$ sudo /usr/local/apache2/bin/apachectl restart
㈧ 在RedHat Linux上搭建ftp伺服器的步驟
1、下載源碼到伺服器,其下載地址是 ftp://vsftpd.beasts.org/users/cevans/,當前的版本是vsftpd-2.0.6.tar.gz 。強烈建議使用源碼安裝,即可擺脫類似rpm包依賴的困惑,又可以實現在不同unix/linux下自如的工作。2、解壓安裝:tar zxvf vsftpd-2.0.5.tar.gz ; make; make install3、添加ftp的用戶,如果用戶數目不多,簡單些,用系統用戶吧。Useradd –d /home/sery sery ;passwd ******.4、拷貝配置文件,這里有2個。Cp vsftpd.conf /etc/vsftpd.conf ;cp Redhat/vsftpd.pam /etc/pam.d/ftp .不拷貝vsftpd.pam這個文件,將導致ftp用戶不能登陸的問題。這個文件在debian下也是可以的。5、修改配置文件/etc/vsftpd.conf。這個配置文件是vsftpd的關鍵所在,修改下列值,以實現不同的功能:(1)修改的部分:把 local_enable=yes write_enable=yes和local_umask=022前面的注釋取消。(2)增加部分:listen=YES(ftp作為獨立的守護進程)chroot_local_user=yes(用戶被定位在自己的主目錄里,用cd / 並不能切換到根目錄)cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,RNFR,RNTO,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST(只許上傳文件和目錄,但不許刪除。注意:這些必須一行寫完)6、啟動ftp服務。Vsftpd&我安裝完成後,卻無法運行:報錯如下:500 00PS: could not bind listening IPv4 socket埠有沖突。查看下:#netstat -utl |grep 21 是不是被佔用還真有耶。因為是redhat9所以想到了xinetd因為xinetd已經啟動了vsftpd,而vsftpd設置成了stardalone模式,所以,先停止xinetd服務, service xinetd stop ,然後:/usr/local/sbin/vsftpd &OK啟動正常。改埠:在vsftpd.conf最後加:listen_port=2121取消anonymous 登入 anonymous_enable=NO老大原文提到,讓用戶不能切換到別的目錄,需要添加一個文件:vim /etc/vsftpd/chroot_list 加入你所要限制的用戶vsftpd.conf也去掉相應的注釋:chroot_list_file=/etc/vsftpd/chroot_list
㈨ 怎麼在linux搭建web伺服器
1.開始說明
本教程中使用的IP地址是192.168.0.100,主機名稱為Server1.example.com 這些設置可能會有所不同,你需要根據不同情況進行修改。
CentOS 6.2下安裝MySQL
2.開始安裝MySQL5
首先我們應該先用下面的命令安裝MySQL:
yum install mysql mysql-server
然後我們需要創建MySQL系統的啟動鍵鏈接啟動MySQL伺服器,這樣以便於MySQL在系統啟動時自動啟動
chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start
為MySQL root帳戶設置密碼:
mysql_secure_installation
會出現下面的一系列提示:
root@server1 ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user. If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] <-- ENTER
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
proction environment.
Remove anonymous users? [Y/n] <-- ENTER
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] <-- ENTER
... Success!
By default, MySQL comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a proction environment.
Remove test database and access to it? [Y/n] <-- ENTER
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <-- ENTER
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
[root@server1 ~]#
CentOS 6.2下安裝Apache
3.安裝阿帕奇2
Apache2的是作為一個CentOS的軟體包,因此我們可以直接用下面命令安裝它:
yum install httpd
現在配置系統在引導時啟動Apache
chkconfig --levels 235 httpd on
並啟動Apache
/etc/init.d/httpd start
現在,您的瀏覽器到http://192.168.0.100,你應該看到Apache2的測試頁:
Apache 2測試網頁
Apache的默認文檔根目錄是在CentOS上的/var/www/html 目錄 ,配置文件是/etc/httpd/conf/httpd.conf。配置存儲在的/etc/httpd/conf.d/目錄。
4.安裝PHP5
我們可以用下面的命令來安裝PHP5
yum install php
安裝完需要重啟
/etc/init.d/httpd restart
CentOS 6.2下安裝PHP5
5.我們可以安裝PHP5和Apache的PHP5的模塊如下:
默認網站的文件根目錄是在/srv/www/html中。現在我們將在該目錄中創建一個小型PHP文件(info.php的)在瀏覽器中調用它。該文件將顯示很多關於我們的PHP安裝,如安裝的PHP版本和有用的一些細節。
vi /var/www/html/info.php
修改細節
現在,我們可以用瀏覽器訪問例如http://192.168.0.100/info.php文件
PHP頁面
正如你所看到的,PHP5的工作,它通過Apache 2.0的處理程序,在伺服器API線。如果你繼續向下滾動,你會看到所有在PHP5中已經啟用的模塊。MySQL是沒有列出,這意味著我們沒有在PHP5支持MySQL。
6.PHP5獲得MySOL的支持
讓PHP在MySQL中獲得支持,我們可以安裝的php-mysql軟體包。安裝一些其他的PHP5模塊,以及您可能需要的應用程序,這是一個好主意:
yum search php
還安裝需要安裝的
yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc
現在重新啟動Apache2的:
/etc/init.d/httpd restart
現在,重載http://192.168.0.100/info.php在您的瀏覽器,並再次向下滾動到模塊部分。現在,你應該找到許多新的模塊,包括MySQL模塊:
MySQL頁面
CentOS 6.2下安裝phpMyAdmin
7.安裝phpMyAdmin
phpMyAdmin是一個網路介面,通過它可以管理你的MySQL資料庫。
首先,我們使CentOS系統RPMForge軟體庫的phpMyAdmin,而不是官方的CentOS 6.2庫:
所以需要導入RPMForge的GPG密鑰:
rpm --import
x86_64系統:
yum install
在i386系統:
yum install
安裝phpmyadmin
yum install phpmyadmin
現在我們可以設置phpMyAdmin,了我們可以改變Apache的配置來讓phpMyAdmin不僅僅只能從localhost登錄。
vi /etc/httpd/conf.d/phpmyadmin.conf
配置
下一步,我們從HTTP改變的phpMyAdmin的cookie來身份驗證:
vi /usr/share/phpmyadmin/config.inc.php
修改身份驗證
重啟阿帕奇
/etc/init.d/httpd restart
在地址欄輸入http://192.168.0.100/phpMyAdmin/:你就可以訪問phpMyAdmin了。
phpmyadmin頁面
CentOS可以得到RHEL的所有功能,甚至是更好的軟體。但CentOS並不向用戶提供商業支持,當然也不負上任何商業責任。
如果你要將你的RHEL轉到CentOS上,因為不希望為RHEL升級而付費。當然,你必須有豐富linux使用經驗,因此RHEL的商業技術支持對你來說並不重要。但如果你是單純的業務型企業,那麼還是建議你選購RHEL軟體並購買相應服務。這樣可以節省你的IT管理費用,並可得到專業服務。
㈩ 如何在linux系統搭建http服務
1、安裝ftp服務端,方便你從客戶端上傳文件。linux上一般安裝vsftp.VSFTP的軟體安裝包是: vsftpd-2.2.2-12.el6_5.1.i686.rpm
查詢:#rpm -q vsftpd
安裝:#rpm -ivh vsftpd-2.2.2-12.el6_5.1.i686.rpm或者直接yum install vsftpd
啟動、停止及重啟VSFTP的命令: #service vsftpd start/stop/restart
配置文件:
/etc/vsftpd/vsftpd.conf //主配置文件
/etc/vsftpd.ftpusers //被禁止登錄FTP的用戶文件
/etc/vsftpd.user_list //允許登錄FTP的用戶文件
a、將登錄後的用戶限制在本地家目錄下:
#vi /etc/vsftpd/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
新建受限用戶的列表文件並加入受限用戶名
#vi /etc/vsftpd.chroot_list
raykeso
重啟ftp服務
#service vsftpd restart
2、安裝apache,開啟目錄索引,這樣你就可以瀏覽和下載文件。
apache配置文件
<Directory "I:/build/dist"> #設置瀏覽文件的目錄
Options Indexes #開啟目錄列表索引模式Order allow,deny
Allow from all
</Directory>