掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
FTP(File Transfer Protocol)是一種用于在網(wǎng)絡(luò)上進(jìn)行文件傳輸?shù)膮f(xié)議。在Linux操作系統(tǒng)中,F(xiàn)TP是一個(gè)非常重要的組成部分,用戶可以通過(guò)FTP上傳和下載文件。而FTP源代碼則是其中非常重要的一部分,這篇文章將對(duì)linux ftp源代碼進(jìn)行概述。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了遼源免費(fèi)建站歡迎大家使用!
1. FTP源代碼結(jié)構(gòu)
FTP源代碼由多個(gè)文件組成,主要包括以下幾個(gè)文件:
1) ftp.h:定義了FTP中使用的各種數(shù)據(jù)類型、結(jié)構(gòu)體和函數(shù)原型。
2) ftp.c:包含F(xiàn)TP服務(wù)器的主要實(shí)現(xiàn)代碼。
3) cmd.h:定義了FTP中支持的各種命令類型。
4) cmd*.c:包含F(xiàn)TP中支持的各種命令的具體實(shí)現(xiàn)。
5) data.h:定義了數(shù)據(jù)傳輸相關(guān)的結(jié)構(gòu)體和函數(shù)原型。
6) data.c:包含數(shù)據(jù)傳輸?shù)木唧w實(shí)現(xiàn)代碼。
7) log.h:定義了日志管理相關(guān)的結(jié)構(gòu)體和函數(shù)原型。
8) log.c:包含日志管理的具體實(shí)現(xiàn)代碼。
2. FTP源代碼主要功能
FTP源代碼主要實(shí)現(xiàn)了FTP協(xié)議中客戶端和服務(wù)器之間的數(shù)據(jù)傳輸和管理功能,主要包括以下幾個(gè)方面:
1) 用戶登陸:
FTP服務(wù)器需要保證只有合法的用戶才能夠登陸進(jìn)來(lái),因此FTP源代碼中實(shí)現(xiàn)了用戶身份驗(yàn)證的功能。當(dāng)客戶端之一次連接服務(wù)器時(shí),服務(wù)器會(huì)先發(fā)送一個(gè)歡迎信息,然后要求用戶輸入用戶名和密碼。如果用戶名和密碼正確,那么就允許用戶進(jìn)行后續(xù)的操作;否則用戶將被禁止訪問(wèn)FTP服務(wù)器。
2) 文件上傳和下載:
FTP協(xié)議的主要作用之一就是實(shí)現(xiàn)文件的上傳和下載。FTP源代碼實(shí)現(xiàn)了基于TCP的數(shù)據(jù)傳輸功能,可以實(shí)現(xiàn)文件的上傳和下載。FTP客戶端在向FTP服務(wù)器發(fā)送文件時(shí),首先需要發(fā)送STOR(存儲(chǔ)文件)命令告訴服務(wù)器即將要傳輸?shù)奈募H缓驠TP服務(wù)器在接收到STOR命令后會(huì)創(chuàng)建一個(gè)新的數(shù)據(jù)連接,F(xiàn)TP客戶端就可以使用該數(shù)據(jù)連接向服務(wù)器發(fā)送文件內(nèi)容。FTP客戶端向FTP服務(wù)器下載文件時(shí),需要發(fā)送RETR命令告訴FTP服務(wù)器即將要下載的文件名。然后FTP服務(wù)器在接收到該命令后會(huì)創(chuàng)建一個(gè)新的數(shù)據(jù)連接,F(xiàn)TP客戶端就可以使用該數(shù)據(jù)連接從服務(wù)器下載文件內(nèi)容。
3) 目錄列表:
FTP客戶端可以通過(guò)發(fā)送LIST命令來(lái)獲取FTP服務(wù)器中某個(gè)目錄的文件列表。FTP源代碼中實(shí)現(xiàn)了LIST命令,可以按照固定的格式返回FTP服務(wù)器中指定目錄的文件列表,支持按名稱、時(shí)間、大小等多種方式排序展示文件列表。
4) 被動(dòng)模式:
FTP協(xié)議支持主動(dòng)模式和被動(dòng)模式,F(xiàn)TP源代碼中實(shí)現(xiàn)了被動(dòng)模式的功能。在被動(dòng)模式下,F(xiàn)TP服務(wù)器會(huì)向客戶端發(fā)送固定端口的數(shù)據(jù)連接地址,等待客戶端建立數(shù)據(jù)連接。被動(dòng)模式的實(shí)現(xiàn)要求FTP服務(wù)器必須有固定的可用端口。
3. FTP源代碼實(shí)現(xiàn)問(wèn)題
在使用FTP源代碼的過(guò)程中,可能會(huì)遇到以下一些問(wèn)題:
1) 速度慢:
雖然FTP協(xié)議可以實(shí)現(xiàn)文件的快速傳輸,但是使用FTP源代碼并不一定能夠保證傳輸速度。一方面,源代碼可能存在實(shí)現(xiàn)上的問(wèn)題,導(dǎo)致數(shù)據(jù)傳輸效率低下;另一方面,F(xiàn)TP服務(wù)器和FTP客戶端之間的網(wǎng)絡(luò)環(huán)境也會(huì)影響FTP傳輸速度。
2) 安全問(wèn)題:
FTP協(xié)議以明文的形式傳輸用戶身份驗(yàn)證信息,容易被黑客截取并惡意使用。為了保障數(shù)據(jù)的安全,在實(shí)際使用FTP時(shí),應(yīng)該使用SFTP(Secure File Transfer Protocol)或者FTP over SSL/TLS,也就是FTPS協(xié)議,這些協(xié)議實(shí)現(xiàn)了對(duì)數(shù)據(jù)的加密傳輸,提高了數(shù)據(jù)傳輸?shù)陌踩浴?/p>
4.
使用FTP源代碼可以實(shí)現(xiàn)文件的上傳、下載以及目錄列表等基本功能,對(duì)于初學(xué)者而言是非常有用的。但是,F(xiàn)TP源代碼在實(shí)現(xiàn)和安全方面都存在一定的問(wèn)題,因此,建議在使用FTP源代碼前盡量了解其實(shí)現(xiàn)原理,必要時(shí)結(jié)合其他協(xié)議或安全機(jī)制加強(qiáng)FTP協(xié)議的安全性。
相關(guān)問(wèn)題拓展閱讀:
1,Linux下架FTP!!
Linux下一般最常用的工具wu-ftpd.
wu-ftpd的安裝非常容易,大多數(shù)版本的Linux中都包含了wu-ftpd的rpm軟件包,你可以在安裝Linux時(shí)指定裝入。如果你想自行編譯源代碼,也可以到
安裝好以后,可以用ckconfig命令來(lái)檢查是否已經(jīng)正確安裝。友手在/etc/passwd中可以指定ftp用戶的登入目錄。
wu-ftpd主要有以下6個(gè)配置文件:
ftpaccess(主要配置文件,控制存取權(quán)限)
ftpconvertions(配置文件壓縮/解壓逗罩縮轉(zhuǎn)換)
ftpgroups(設(shè)定ftp自己定義的群組)
ftphosts(設(shè)定個(gè)別的用戶權(quán)限)
ftpservers(設(shè)定不同IP/Domain Name以對(duì)應(yīng)到不同的虛擬主機(jī))
ftpusers(設(shè)定哪些帳號(hào)不能用ftp連線)
下面我們來(lái)一一介紹。
⒈/etc/ftpaccess(wu-ftpd的主要配置文件)
class–定義群組,用法如下:
class;;
由class定義的群組用戶才可以連線進(jìn)來(lái),可以使用多層式的class來(lái)規(guī)范哪些群組的用戶能夠從哪些地方上來(lái)。這里有三個(gè)重要的種類,real、anonymous個(gè)guest。real如果沒(méi)有列在定義中,那么這臺(tái)機(jī)器中任何真實(shí)的一般用戶都無(wú)法用自己的帳號(hào)連上來(lái)。anonymous如果沒(méi)有在定義,就表示不讓沒(méi)有帳號(hào)的的人連上來(lái)。如果有定義guest,那么guest群組的人就可以上來(lái)。另外;是指ftp上來(lái)的用戶會(huì)用到的IP地址,則可自行設(shè)定。以下是一些例子:
class all real,guest,anonymous *
定義了一個(gè)名為all的class,包含三種人,所有IP的連線用戶(也就是所有人都包括了)
class local real localhost loopback
local這個(gè)class說(shuō),只有real的用戶可以從本機(jī)機(jī)器連上來(lái)
class remote guest,anonymous *
remote這個(gè)class包含了從任何地方上來(lái)的guest和anonymous用戶,但是real用戶不算
class rmtuser real !*.example.com
rmtuser這個(gè)class包含了從外面來(lái)的(除了example.com)真實(shí)用戶
autogroup–自動(dòng)對(duì)應(yīng)群組,用法如下:
autogroup
當(dāng)你定義好的那些同屬于一個(gè)class的用戶,一旦連線上來(lái)就會(huì)被對(duì)應(yīng)到一個(gè)相應(yīng)的群組下面,這樣你就可以用Unix的文件權(quán)限對(duì)某一群人做限制。
deny–拒絕某些地址連線,用法如下:
deny;;
禁止某些機(jī)器連線,并顯示;。例如:
deny 210.62.146.*:255.255.255.254 /etc/reject.msg
guestgroup–設(shè)定訪客群
guestuser–設(shè)定訪客帳號(hào)
realgroup–設(shè)定真實(shí)群組
realuser–設(shè)定真實(shí)帳號(hào)
nice–設(shè)定給某些class多少優(yōu)先權(quán),用法如下:
nice
在Linux中,nice的值是-20(更優(yōu)先)到19(最后處理),這里你可以指定負(fù)的值來(lái)提高某class的優(yōu)先順序。
defumask–設(shè)定某class的umask,用法如下:
defumask
umask是建立文件時(shí)該文件的的權(quán)限掩碼
tcpwindow–設(shè)定tcpwindow的大小
keepalive–設(shè)定是否使用TCP SO_KEEPALIVE來(lái)控制斷線情形
timeout–設(shè)定連線超時(shí),用法如下:
timeout accept;
接受連線超時(shí),預(yù)設(shè)120秒
timeout connect;
連線建立超時(shí),預(yù)設(shè)120秒
timeout data;
數(shù)據(jù)傳送超時(shí),預(yù)設(shè)1200秒
timeout idle;
用戶發(fā)呆超時(shí),預(yù)設(shè)900秒
file-limit–限制某class只能傳幾個(gè)文件,用法如下:
file-limit
對(duì)某個(gè)class限制存取文件的數(shù)目,包含了in(上傳)、out(下載),total raw代表整個(gè)傳輸?shù)慕Y(jié)果,不光是數(shù)據(jù)文件。例如:
file-limit out 20 lvfour
限制lvfour這個(gè)class的用戶最多只能下載20個(gè)文件
byte-limit–限制某class只能傳幾個(gè)字節(jié),用法跟file-limit相似
limit-time–限制一個(gè)連線只能持續(xù)多久,用法如下:
limit-time{*|anonymous|guest};
為了避免有人掛在站上不下來(lái),可以用這個(gè)方法限制用戶的上線時(shí)間,例如:
limit-time guest 5
讓guest帳號(hào)的用戶只能用5分鐘
limit–限制某class能同時(shí)幾人上線,用法如下:
limit;;;
設(shè)定某個(gè)class在某一時(shí)間區(qū)段內(nèi)最多能夠幾人同時(shí)上線,后面是當(dāng)超過(guò)連線數(shù)目時(shí)要顯示的信息。例如:
limit all 32 Any /home/ftp/etc/toomanyuser.msg
限制所有連線在任何時(shí)間只能有32個(gè)用戶,超過(guò)則拒絕連線并顯示信息
limit levellone 5 Any/home/ftp/etc/toomanyuser.msg
限制levellone這個(gè)class的用戶在23:00到6:00這段時(shí)間內(nèi)只能有5人連線
noretrieve–設(shè)定哪些文件不可下載
noretrieve…
absolute或relative指文件是用絕對(duì)路徑還是相對(duì)路徑
allow=retrieve–設(shè)定哪些文件可以下載
allow…
loginfails–設(shè)置登入錯(cuò)誤可嘗試的次數(shù)
當(dāng)用戶連線時(shí)可能打錯(cuò)ID或密碼,這個(gè)設(shè)定可以讓他打錯(cuò)幾次以后就斷線,避免有人用窮舉法猜測(cè)密碼。
private–設(shè)定線上是否可以執(zhí)行SITE GROUP/SITE GPASS
當(dāng)開(kāi)放SITE GROUP與SITE GPASS指令時(shí),可以用這兩個(gè)指令切換到/etc/ftpgroup的群組。一般而言我們不會(huì)用到這個(gè)功能,以避免安全漏洞。
greeting–顯示Server的版本信息,用法如下:
greeting
當(dāng)用戶登入畫面顯示的server信息,full是預(yù)設(shè)值,包含版本號(hào)以及hostname,brief只有hostname,而terse只有“FTP server ready”的信息。
barnner–設(shè)定未進(jìn)入Login畫面之前用戶看到的信息,用法如下:
banner;
這里敘述了在用戶登入時(shí),在還沒(méi)打ID/Password之前要出現(xiàn)的信息。文件路徑指的是相對(duì)于真實(shí)的路徑,而不是相對(duì)于ftp的根目錄。
host–設(shè)定ftp主機(jī)名
email–指定ftp管理者的email地址
message–信息文件的設(shè)定,用法如下:
message;{;{……}}
這里的文件的路徑是相對(duì)于ftp的根目錄的,“何時(shí)”是指當(dāng)你做了什么動(dòng)作之后的反應(yīng),有幾個(gè)選擇:
login(登入時(shí))
cwd=;(進(jìn)入某目錄時(shí))
class 名稱是前面已經(jīng)定義過(guò)的,允許你的信息只對(duì)哪些人發(fā)出。
而信息文件的內(nèi)容除了文字以外,還可以使用以下一些事先定義好的代號(hào):
%T(本機(jī)時(shí)間)
%F(目前分區(qū)所剩余的空間)
%C(目前所在的目錄)
%E(管理者的E-mail)
%R(客戶端主機(jī)名稱)
%L(本機(jī)主機(jī)名稱)
%U(用戶名稱)
%M(與我相同class用戶允許多少人連線)
%N(與我相同class用戶目前有多少人連線)
%B(絕對(duì)磁盤限制大小,目前分區(qū)(單位blocks))
%b(preferred磁盤限制大小,目前分區(qū)(單位blocks))
%Q(目前已使用的blocks)
%I(更大可使用的inodes(+1))
%i(Preferred inodes限制)
%q(目前使用的indoes)
%H(超量使用磁盤空間的時(shí)間限制)
%h(超量使用文件數(shù)目的時(shí)間限制)
readme–通知用戶哪些README文件已經(jīng)更新
log commands–記錄用戶所使用過(guò)的命令,用法如下:
log commands;
log transfers–記錄用戶所傳輸?shù)奈募梅ㄈ缦拢?/p>
log transfers;;
設(shè)定有哪些類型的用戶傳輸文件需要記錄,包含了inbound(用戶上傳)和outbound(用戶下載),例如:
log transfers anonymous,guest inbound,outbound
log security–記錄安全性,用法如下:
log security;
特別用于記錄某類用戶關(guān)于noretrive、notar等有關(guān)安全性的記錄
log syslog–記錄到系統(tǒng)的syslog文件
alias–設(shè)定目錄別名,用法如下:
alias;;
cdpath–設(shè)定cd更換目錄搜索順序
compress,tar–設(shè)定是否自動(dòng)壓縮,用法如下:
compress
tar
定義哪些人可以執(zhí)行壓縮以及tar
shutdown–通知用戶要關(guān)站了
shutdown;
如果信息文件存在的話,當(dāng)這個(gè)文件指定的某時(shí)間以后,就會(huì)拒絕連線并切斷已有的連線,等時(shí)間一到就關(guān)機(jī)。這個(gè)信息文件的格式如下:
;;;;;;;;
daemon address–指定只監(jiān)聽(tīng)某個(gè)IP地址,用法如下:
daemon address
當(dāng)你有許多IP的時(shí)候,使用這個(gè)選項(xiàng)將會(huì)取消其它任何虛擬FTP主機(jī)的設(shè)定。不設(shè)定的話,監(jiān)聽(tīng)所有IP。
virtual–設(shè)定虛擬FTP站臺(tái)
wu-ftpd提供了虛擬主機(jī)的功能,也就是說(shuō),在同一臺(tái)機(jī)器上提供了不同F(xiàn)TP站臺(tái),以主機(jī)名稱或IP來(lái)區(qū)分;當(dāng)然你要用名稱的話,還需要跟DNS配合才行。virtual有很多個(gè)設(shè)定:
virtual
;
可以是主機(jī)名或IP地址
root指的是ftp的根目錄,banner是歡迎信息,logfile指的是這個(gè)虛擬站臺(tái)的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
virtual
allow;
virtual
deny;
很明顯,以上兩個(gè)選項(xiàng)是設(shè)定是否允許連線的,以下是一些例子:
virtual virtual.site.com.bj allow *
virtual virtual.site.com.bj deny badman
virtual
private
本虛擬站臺(tái)拒絕anonymous用戶
defaultserver deny ;
defaultserver allow ;
當(dāng)我們使用了虛擬主機(jī),原先的deny,allow設(shè)定不知道要設(shè)哪個(gè)server,所以會(huì)無(wú)效,用defaultserver代表原來(lái)的主機(jī)
defaultserver private
主站臺(tái)拒絕anonymous用戶
passive address–轉(zhuǎn)換IP數(shù)值
passive address;/cidr
passive ports–passive的ports范圍
passive ports
pasv-allow–允許使用pasv
pasv-allow
port-allow–允許使用port
port-allow
mailserver–指定Upload通知的mail服務(wù)器
incmail–指定anonymous upload的email通知地址
virtual incmail–指定虛擬主機(jī)anonymous upload的email通知地址
defaultserver incmail–指定預(yù)設(shè)主機(jī)anonymous upload的email通知地址
mailfrom–通知的寄信人upload
virtual mailfrom–虛擬主機(jī)upload通知的寄信人
defaultserver mailfrom–預(yù)設(shè)主機(jī)upload通知的寄信人
chmod–設(shè)定是否可以改變文件權(quán)限
delete–設(shè)定是否可以刪除文件
overwrite–覆蓋文件
rename–重命名文件
umask–允許設(shè)定umask
passwd-check–設(shè)定anonymous FTP的密碼檢查程度,用法如下:
passwd-check()
設(shè)定對(duì)anonymous ftp用戶的密碼是否檢查,none表示不檢查,trivial為包含@的任意密碼,rfc822則表示密碼要遵循RFC822格式,enforce表示密碼檢查不過(guò)不允許進(jìn)入,warn表示密碼檢查不過(guò)只出現(xiàn)警告信息。
deny=email–拒絕特定的email當(dāng)密碼
path-filer–攝定哪些文件名不可使用
path-filer;;;
upload–設(shè)定upload權(quán)限
upload…; >;
用來(lái)對(duì)我們要設(shè)定的目錄做權(quán)限設(shè)定:
absoulte/relative使用絕對(duì)路徑或是相對(duì)路徑
class=指定某個(gè)class
root-dir指的是對(duì)哪些root-dir的人,也就是chroot后的登入目錄,應(yīng)用這個(gè)規(guī)則
設(shè)定的目錄指的就是我們要限制的目錄
yes/no指得是能否在此目錄下開(kāi)新文件
owner,group指出是開(kāi)出來(lái)的文件擁有者及群組
Mode指的是文件權(quán)限
dirs/nodirs指的是能否開(kāi)新目錄
d_mode設(shè)定建立新目錄時(shí)目錄的權(quán)限,如果不設(shè)定會(huì)根據(jù)mode來(lái)設(shè)定
thoughput–控制
thoughput;;;
對(duì)遠(yuǎn)端的地址,控制他抓某個(gè)子目錄下的某些文件時(shí)的速度,例如:
thoughput /e/ftp * * oo – *
thoughput /e/ftp /sw* *.5 *
thoughput /e/ftp sw* readme oo – *
thoughput /e/ftp sw* * oo – *.foo.com
以上的設(shè)定你是否能夠看出來(lái)呢?“oo”表示不限制bytes/sec,“-”或是“1.0”都是代表一倍。之一行的意思是說(shuō),在/e/ftp下面的文件不限制;第二行說(shuō),在/sw*下面的任何文件限速為1024bytes/sec*
0.5=512bytes/sec;第三行又把readme文件的限速取消;最后一行則對(duì)*.foo.com開(kāi)放全速。
anonymous-root–對(duì)某class設(shè)定匿名用戶的根目錄
anonymous-root
guest-root–預(yù)設(shè)一個(gè)guest用戶根目錄
guest-root
其中用于指定uid的范圍
deny-uid,deny-gid–拒絕某段UID(GID)范圍
allow-uid,allow-gid–允許某段UID(GID)范圍
restricted-uid,restricted-gid–限制用戶不能離開(kāi)他的登錄目錄
unrestricted-uid,unrestricted-gid–用戶可以離開(kāi)他的登錄目錄
dns refuse_miatch–設(shè)定DNS查到名稱與用戶設(shè)定不符的動(dòng)作
dns refuse_miatch;
當(dāng)用戶使用未注冊(cè)IP時(shí),拒絕他的連線,override則是不理會(huì)錯(cuò)誤而讓他連線,信息文件則是我們要給用戶看的。
dns refuse_no_reverse–設(shè)定無(wú)反查記錄拒絕連線
dns refuse_no_reverse;
當(dāng)用戶的IP反查無(wú)記錄時(shí),拒絕他的連線
dns resolveoptions–設(shè)定DNS解析選項(xiàng)
dns resolveoptions
這里可以設(shè)定DNS解析選項(xiàng)
⒉/etc/ftphosts
ftphosts文件其實(shí)跟ftpaccess里面的access,deny很像,它是特別用來(lái)設(shè)定某些ID的連線,它沒(méi)有class定義,所以必須是真實(shí)用戶。
allow|deny;;
以下是一些例子:
allow rose 140.0.0/8
deny jack 140.123.0.0:255.255.0.0
允許rose從140.*.*.*進(jìn)來(lái),拒絕jack從140.123.*.*上來(lái)
⒊/etc/ftpservers
這個(gè)文件控制了當(dāng)你有不同的IP/hostname的時(shí)候,進(jìn)來(lái)的連線使用哪一個(gè)配置文件。例如:
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
在這個(gè)文件里記錄的用戶禁止使用FTP
⒌/etc/ftpgroups
給SITE GROUP指令使用,線上切換group。SITE EXEC容易造成安全漏洞,一般我們都不開(kāi)放。
⒍/etc/ftpconversions
用來(lái)做tar、compress、gzip等動(dòng)作指令配置文件,只要用預(yù)設(shè)即可,如果你不開(kāi)放即時(shí)壓縮打包,也可以把內(nèi)容清除。
2,Linux操作系統(tǒng)近幾年有了蓬勃的發(fā)展,在整個(gè)世界范圍內(nèi)得到了越來(lái)越多公司和團(tuán)體的支持,尤其是最近IBM公司的鼎力支持,更是使Linux服務(wù)器如虎添翼,更上一層樓
Linux操作系統(tǒng)近幾年有了蓬勃的發(fā)展,在整個(gè)世界范圍內(nèi)得到了越來(lái)越多公司和團(tuán)體的支持,尤其是最近IBM公司的鼎力支持,更是使Linux服務(wù)器如虎添翼,更上一層樓。而在國(guó)內(nèi),Linux的應(yīng)用也是方興未艾,眾多公司已經(jīng)投入到Linux系統(tǒng)的研發(fā)和推廣工作中。一些優(yōu)秀的Linux操作系統(tǒng)相繼出現(xiàn),比如紅旗Linux等。但是我國(guó)的Linux應(yīng)用水平還很低,熟悉Linux的人員嚴(yán)重缺乏,Linux專業(yè)人才的缺乏已成為L(zhǎng)inux在國(guó)內(nèi)應(yīng)用和普及的瓶頸問(wèn)題。據(jù)《開(kāi)放系統(tǒng)世界》2023年第八期介紹,中國(guó)五年內(nèi)Linux人才需求量將會(huì)超過(guò)120萬(wàn)。而“1+1+1”工程的實(shí)施,也是間接地告訴我們這個(gè)問(wèn)題的嚴(yán)重性。如此大好時(shí)機(jī),我們干嗎還愣著不動(dòng)呢!如果你是一位Linux愛(ài)好者,你可能已經(jīng)掌握了基本的Linux的知識(shí)與操作,毫無(wú)疑問(wèn),你并不會(huì)去滿足這樣小小的成就。Linux為何如此的流行?其更大的特點(diǎn)莫過(guò)于功能強(qiáng)大,性能穩(wěn)定的服務(wù)器應(yīng)用了。像WWW,MAIL,FTP,DNS和B等。在這篇文章中,我將以Redhat Linux 9為藍(lán)本,從Web服務(wù)器的一些最基本的操作入手,從初學(xué)者使用的態(tài)度,讓讀者正確充分的認(rèn)識(shí)Apache。好,現(xiàn)在就讓我們一起踏上征服Apache的自由之路吧。
Apache的主要特征是:
. 可以運(yùn)行上所有計(jì)算機(jī)平臺(tái);
. 支持最新的HTTP 1.1協(xié)議;
. 簡(jiǎn)單而強(qiáng)有力的基于文件的配置;
. 支持通用網(wǎng)關(guān)接口CGI;
. 支持虛擬主機(jī);
. 支持HTTP認(rèn)證;
. 集成Perl腳本編程語(yǔ)言;
. 集成的代理服務(wù)器;
. 具有可定制的服務(wù)器日志;
. 支持服務(wù)器端包含命令(SSI)
. 支持安全Socket層(SSL)
. 用戶會(huì)話過(guò)程的跟蹤能力;
. 支持FastCGI;
. 支持Java Servlets。
安裝Apache
下面我們就開(kāi)始漫漫征服Apache之旅,通過(guò)循序漸進(jìn)的需求實(shí)例,一步步地學(xué)習(xí)使用Apache,從入門到精通。
系統(tǒng)需求
運(yùn)行Apache不需要太多的計(jì)算資源。它在有6-10MB硬盤空間和8MB RAM的Linux系統(tǒng)上運(yùn)行得很好。然而,只運(yùn)行Apache可能不是你想做的事情。更可能的是,你想運(yùn)行Apache來(lái)提供WWW服務(wù)、啟動(dòng)CGI進(jìn)程以及充分利用所有WWW能夠提供的令人驚奇的功能。在這種情況下,你需要提供反映負(fù)載要求的額外的磁盤空間和內(nèi)存空間。也就是說(shuō),如果僅僅是啟動(dòng)WWW服務(wù)并不需要太多的系統(tǒng)資源,但是想要能為大量的客戶提供服務(wù)就需要更多的系統(tǒng)資源。
獲取軟件
你可以在
中獲得Apache的最新版。而幾乎所有的Linux發(fā)行版中均包含有Apache軟件包,你也可以直接使用它。
需要注意的是,Apache軟件包有兩種:一種是源代碼,下載后需要自己重新編譯;另一種是可執(zhí)行文件,下載后只需解壓就可以使用。
安裝軟件
你可以通過(guò)以下三種方法安裝Apache服務(wù)器。
1.如果你安裝的Linux版本中帶用Apache的話,就在選擇所要安裝的服務(wù)器的時(shí)候,將httpd這個(gè)服務(wù)選上,Linux安裝程序?qū)⒆詣?dòng)完成Apache的安裝工作,并做好基本的配置。
2.使用可執(zhí)行文件軟件包,這比較適合那些對(duì)編譯工作不是太熟悉的初級(jí)用戶,因?yàn)樗鄬?duì)比較簡(jiǎn)單。
下載軟件包apache_1.2.4.e.tar.gz
tar xvzf apache_1.2.4.e.tar.gz
這就完成了安裝工作,簡(jiǎn)單吧!
如果你使用的是RedHat Linux的話,你也可以下載apache_1.2.4.rpm軟件安裝包,然后使用rpm -ivh apache_1.2.4.rpm命令安裝。
3.如果你想把Apache服務(wù)器充分利用起來(lái)的話,就一定要自己編譯Apache定制其功能。
下載包含Apache源代碼的軟件包apache_1.2.4.tar.gz; 然后用tar命令將它解開(kāi); 將當(dāng)前目錄改變?yōu)锳pache源代碼發(fā)行版的src目錄; 將配置樣本文件(Configuration.tmpl)復(fù)制為Configuration文件;
編輯Configuration文件中的配置選項(xiàng):
Makefile配置選項(xiàng):一些編譯選項(xiàng):
. “CC=”一行指定用什么編譯軟件編譯,一般為”CC=gcc”;
. 如果需要將額外的標(biāo)志(參數(shù))指定給C編譯軟件,可以使用:
EXTRA_CFLAGS=
EXTRA_LFLAGS=
. 如果系統(tǒng)需要特殊的庫(kù)和包含文件,可以在這里指定它們:
EXTRA_LIBS=
EXTRA_INCLUDES=
. 如果你要改變代碼優(yōu)化設(shè)置的話,你須將下面一句去掉注釋,然
后改成你所需要的值:
#OPTIM=-O2
Rule配置選項(xiàng):用來(lái)決定需要什么功能,一般情況下無(wú)需改變。
模塊配置:模塊是Apache的組成部分,它為Apache內(nèi)核增加新功能。通過(guò)使用模塊配置,可以自定義在Apache服務(wù)器中需要什么功能,這個(gè)部分也是Apache靈活性的表現(xiàn)。模塊配置行如下所示:
AddModule modules/standard/mod_env.o
如果你需要Apache服務(wù)器具備什么功能,就將那個(gè)模塊用AddModule語(yǔ)句加到配置文件Configuration中去。
3,一、 MYSQL的基本概念
1、MYSQL的定義
MYSQL一種多用戶、多任務(wù)的數(shù)據(jù)庫(kù)服務(wù)器軟件
2、MYSQL的特點(diǎn)
支持多平臺(tái),沒(méi)有內(nèi)存漏洞,分布式處理
支持JAVA、PHP、PERL、支持?jǐn)?shù)據(jù)類型
支持ODBC,支持SQL查詢
二、 安裝MYSQL的服務(wù)器
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 初始數(shù)據(jù)庫(kù)系統(tǒng)。
系統(tǒng)庫(kù)作用:記錄服務(wù)器的設(shè)置參數(shù),存放用戶庫(kù)信息
安全選項(xiàng)
ftp服務(wù)器的配置
ftp 叫做文件傳輸協(xié)議 他已經(jīng)有40年的歷史了 它以明文的形式進(jìn)行傳輸?shù)?/p>
ftp的端口號(hào)是21
當(dāng)端口號(hào)為21 時(shí):是以命令控制. 發(fā)送命令來(lái)執(zhí)行的
時(shí): 是數(shù)據(jù)控制 ,提供數(shù)據(jù)的下載上傳
ftp的模式: 分為 主的模式 與控制模式
ftp數(shù)據(jù)的傳輸格式 accii 二進(jìn)制
ftp的用戶類型 :匿名用戶:anonymous或ftp
本地用戶:帳號(hào)名稱、密碼等信息保存在passwd、shadow文件中
虛擬用戶:使用獨(dú)立的賬號(hào)/密碼數(shù)據(jù)文件
常見(jiàn)的ftp服務(wù)器程序
iis serv-u wu-ftpd proftpd
vsftpd rery ecare ftp daemon 這幾種是linux常用的
常見(jiàn)的ftp客戶端程序
GuteFTP Flashftf leapFTP FILEzilla
gftp kufp
在linux中我們常用的一款ftp服務(wù)器軟件就是vsftp 現(xiàn)在我們就介紹一下它的用法
vsftp的官方站點(diǎn)時(shí)
主程序在/usr/in/vsftpd
服務(wù)器名是vsftpd
如果你的l主機(jī)沒(méi)有vsftpd這款軟件 你可以到官方進(jìn)行下載安裝,安裝的方法我們?cè)谶@里不提了。linux人都知道
vsftpd的配置 其中vsftpd的主配置文件在 /usr/in/vsftpd
用戶控制列表文件:
/etc/vsftpd/ftpusers 禁止登陸的ftp 用戶列表
/etc/viftpd/user_list 僅提供一份ftp用戶列表,是否禁止登陸取決于主配置文件中的設(shè)置
下面我們介紹一下構(gòu)建基于虛擬用戶的vsftpd服務(wù)器 它大體分為7部
1.建立虛擬FTP用戶的帳卜銷逗號(hào)數(shù)據(jù)庫(kù)文件
2.創(chuàng)建FTP根目錄及虛擬用戶映射的系統(tǒng)用戶
3.建立支持虛擬用戶的PAM認(rèn)證文件
4.在vsftpd.conf文件中添加支持配置
5.為個(gè)別虛擬用戶建立獨(dú)立的配置文件
6.重新加載vsftpd配置
7.使用虛擬FTP賬戶訪問(wèn)測(cè)試
1:建立虛擬ftp用戶的賬號(hào)數(shù)據(jù)庫(kù)文件
建立虛擬用戶的賬號(hào)名 密碼列表
vim /etc/vsftpd/vusers.list
隨便填寫幾組密碼 定義可以訪問(wèn)的ftp賬號(hào)
如型賣:AA //賬號(hào)
124密碼
BB
321
但是ftp并不認(rèn)識(shí)這些虛擬賬戶密碼 我們要用一款軟件把它轉(zhuǎn)換成,這款軟件是db4-utils 如果你的機(jī)子沒(méi)有。去網(wǎng)上下載安裝一下,安裝方法很簡(jiǎn)單
yum install –y db4-utils 安裝完了,我們就可以用它了
db_load -T -t hash -f vusers.list vusers.db
更改文件的權(quán)限 chown 600 /etc/vsftpd/vusers.*
2創(chuàng)建ftp 根目錄及虛擬用戶映射的系統(tǒng)用戶
新建目錄 mkdir /var/ftproot
創(chuàng)建用戶 useradd –d /var/ftproot –s /in/nologin virtual
chmod 755 /var/ftproot./
3建立支持虛擬用戶的pam 認(rèn)證文件
vim /etc/pam.d/vsftpd.vu
寫入下面內(nèi)容
#%PAM-1.0
auth requirel pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
4.在vsftpd.conf文件中添加支持配置
# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_umask=022
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd.vu
5.為個(gè)別虛擬用戶建立獨(dú)立的配置文件
在vsftpd.conf文件中添加用戶配置目錄支持
user_config_dir=/etc/vsftpd/vusers_dir
為用戶mike、john建立獨(dú)立的配置目錄及文件
配置文件名與斗余用戶名同名
# mkdir /etc/vsftpd/vusers_dir/
# cd /etc/vsftpd/vusers_dir/
# touch mike
# vi john
anon_upload_enable=YES
anon_mkdir_write_enable=YES
6.重新加載vsftpd配置
service vsftpd reload
7.使用虛擬FTP賬戶訪問(wèn)測(cè)試
分別用mike、john用戶登錄FTP服務(wù)器進(jìn)行下載、上傳測(cè)試
mike用戶可以登錄,并可以瀏覽、下載文件,但無(wú)法上傳
john用戶可以登錄,并可以瀏覽、下載文件,也可以上傳
匿名用戶或其他系統(tǒng)用戶將不能登錄
linux 下FTP安裝及配置
一、FTP的安裝
1、檢測(cè)是否安裝了FTP :# rpm -q vsftpd
如果安裝了會(huì)顯示版本信息:
# vsftpd-2.0.5-16.el5_5.1
否則顯示:# package vsftpd is not installed
2、如果沒(méi)安裝FTP,運(yùn)行yum install vsftpd命令
具體的細(xì)節(jié)如下:(如果無(wú)法更新,你先配置能訪問(wèn)互聯(lián)網(wǎng),我有文檔叫 CentOS 在 VMware下,如何聯(lián)網(wǎng)到Internet的解決辦法 可以解決無(wú)法上網(wǎng)的問(wèn)題)
# yum install vsftpd
#
3、完成ftp安裝后,將 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers文件中的root這一行注釋掉
# root
4、執(zhí)行以下命令
# setsebool -P ftpd_disable_trans=1
修改/etc/vsftpd/vsftpd.conf,在最后一行處添加local_root=/
5、重啟ftp進(jìn)程 #service vsftpd restart
注:每次修改過(guò)ftp相關(guān)的配置文件,都需要重啟ftp進(jìn)程來(lái)生效。
ftp服務(wù)器就可以使用了。
*********************************************************************
二、vsftpd的配置文件說(shuō)明:
vsftpd.ftpusers:位段讓于/etc目錄下。它指定了哪些用戶賬戶不能訪問(wèn)FTP服務(wù)器,例如root等。
vsftpd.user_list:位于/etc目錄下。該文件里的用戶賬戶在默認(rèn)情況下也不能訪問(wèn)FTP服務(wù)器,僅當(dāng)vsftpd .conf配置文件里啟用userlist_enable=NO選項(xiàng)時(shí)才允許訪問(wèn)。
vsftpd.conf:位于/etc/vsftpd目錄下。來(lái)自定義用戶登錄控制、用戶權(quán)限控制、超時(shí)設(shè)置、服務(wù)器功能選項(xiàng)、塌燃搏服務(wù)器性能選項(xiàng)、服務(wù)器響應(yīng)消息等FTP服務(wù)器的配置。
(1)用戶登錄控制
anonymous_enable=YES,允許匿名用戶登錄。
no_anon_password=YES,匿名用戶登錄時(shí)不需要輸入密碼。
local_enable=YES,允許本地用戶登錄。
deny_email_enable=YES,可以創(chuàng)建一個(gè)文件保存某些匿名電子郵件的黑名單,以防止這些人使用Dos攻擊。
banned_email_file=/etc/vsftpd.banned_emails,當(dāng)啟用deny_email_enable功能時(shí),所需的電子郵件黑名單保存路徑(默認(rèn)為/etc/vsftpd.banned_emails)。
(2)用戶權(quán)限控制
write_enable=YES,開(kāi)啟全局上傳權(quán)限。
local_umask=022,本地用戶的上傳文件的umask設(shè)為022(系統(tǒng)默認(rèn)是077,一般都可以團(tuán)祥改為022)。
anon_upload_enable=YES,允許匿名用戶具有上傳權(quán)限,很明顯,必須啟用write_enable=YES,才可以使用此項(xiàng)。同時(shí)我們還必須建立一個(gè)允許ftp用戶可以讀寫的目錄(前面說(shuō)過(guò),ftp是匿名用戶的映射用戶賬號(hào))。
anon_mkdir_write_enable=YES,允許匿名用戶有創(chuàng)建目錄的權(quán)利。
chown_uploads=YES,啟用此項(xiàng),匿名上傳文件的屬主用戶將改為別的用戶賬戶,注意,這里建議不要指定root賬號(hào)為匿名上傳文件的屬主用戶!
chown_username=whoever,當(dāng)啟用chown_uploads=YES時(shí),所指定的屬主用戶賬號(hào),此處的whoever自然要用合適的用戶賬號(hào)來(lái)代替。
chroot_list_enable=YES,可以用一個(gè)列表限定哪些本地用戶只能在自己目錄下活動(dòng),如果chroot_local_user=YES,那么這個(gè)列表里指定的用戶是不受限制的。
chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,則指定該列表(chroot_local_user)的保存路徑(默認(rèn)是/etc/vsftpd.chroot_list)。
nopriv_user=ftpsecure,指定一個(gè)安全用戶賬號(hào),讓FTP服務(wù)器用作完全隔離和沒(méi)有特權(quán)的獨(dú)立用戶。這是vsftpd系統(tǒng)推薦選項(xiàng)。
async_abor_enable=YES,強(qiáng)烈建議不要啟用該選項(xiàng),否則將可能導(dǎo)致出錯(cuò)!
ascii_upload_enable=YES;ascii_download_enable=YES,默認(rèn)情況下服務(wù)器會(huì)假裝接受ASCⅡ模式請(qǐng)求但實(shí)際上是忽略這樣的請(qǐng)求,啟用上述的兩個(gè)選項(xiàng)可以讓服務(wù)器真正實(shí)現(xiàn)ASCⅡ模式的傳輸。
注意:?jiǎn)⒂胊scii_download_enable選項(xiàng)會(huì)讓惡意遠(yuǎn)程用戶們?cè)贏SCⅡ模式下用“SIZE/big/file”這樣的指令大量消耗FTP服務(wù)器的I/O資源。
這些ASCⅡ模式的設(shè)置選項(xiàng)分成上傳和下載兩個(gè),這樣我們就可以允許ASCⅡ模式的上傳(可以防止上傳腳本等惡意文件而導(dǎo)致崩潰),而不會(huì)遭受拒絕服務(wù)攻擊的危險(xiǎn)。
(3)用戶連接和超時(shí)選項(xiàng)
idle_session_timeout=600,可以設(shè)定默認(rèn)的空閑超時(shí)時(shí)間,用戶超過(guò)這段時(shí)間不動(dòng)作將被服務(wù)器踢出。
data_connection_timeout=120,設(shè)定默認(rèn)的數(shù)據(jù)連接超時(shí)時(shí)間。
(4)服務(wù)器日志和歡迎信息
dirmessage_enable=YES,允許為目錄配置顯示信息,顯示每個(gè)目錄下面的message_file文件的內(nèi)容。
ftpd_banner=Welcome to blah FTP service,可以自定義FTP用戶登錄到服務(wù)器所看到的歡迎信息。
xferlog_enable=YES,啟用記錄上傳/下載活動(dòng)日志功能。
xferlog_file=/var/log/vsftpd.log,可以自定義日志文件的保存路徑和文件名,默認(rèn)是/var/log/vsftpd.log。
anonymous_enable=YES 允許匿名登錄local_enable=YES 允許本地用戶登錄
write_enable=YES 開(kāi)放本地用戶寫權(quán)限
local_umask=022 設(shè)置本地用戶生成文件的掩碼為022
#anon_upload_enable=YES 此項(xiàng)設(shè)置允許匿名用戶上傳文件
#anon_mkdir_write_enable=YES 開(kāi)啟匿名用戶的寫和創(chuàng)建目錄的權(quán)限
dirmessage_enable=YES 當(dāng)切換到目錄時(shí),顯示該目錄下的.message隱藏文件的內(nèi)容
xferlog_enable=YES 激活上傳和下載日志
connect_from_port_20=YES 啟用FTP數(shù)據(jù)端口的連接請(qǐng)求
#chown_uploads=YES 是否具有上傳權(quán)限. 用戶由chown_username參數(shù)指定。
#chown_username=whoever 指定擁有上傳文件權(quán)限的用戶。此參數(shù)與chown_uploads聯(lián)用。
#xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES 使用標(biāo)準(zhǔn)的ftpd xferlog日志格式
#idle_session_timeout=600 此設(shè)置將在用戶會(huì)話空閑10分鐘后被中斷
#data_connection_timeout=120 將在數(shù)據(jù)連接空閑2分鐘后被中斷
#ascii_upload_enable=YES 啟用上傳的ASCII傳輸方式
#ascii_download_enable=YES 啟用下載的ASCII傳輸方式
#ftpd_banner=Welcome to blah FTP service 設(shè)置用戶連接服務(wù)器后顯示消息
#deny_email_enable=NO 此參數(shù)默認(rèn)值為NO。當(dāng)值為YES時(shí),拒絕使用banned_email_file參數(shù)指定文件中所列出的e-mail地址用戶登錄。
#banned_email_file=/etc/vsftpd.banned_emails 指定包含拒絕的e-mail地址的文件.
#chroot_list_enable=YES 設(shè)置本地用戶登錄后不能切換到自家目錄以外的別的目錄
#chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
pam_service_name=vsftpd 設(shè)置PAM認(rèn)證服務(wù)的配置文件名稱,該文件存放在/etc/pam.d/
userlist_enable=YES 此項(xiàng)配置/etc/vsftpd.user_list中指定的用戶也不能訪問(wèn)服務(wù)器,若添加userlist_deny=No,則僅僅/etc/vsftpd.user_list文件中的用戶可以訪問(wèn),其他用戶都不可以訪問(wèn)服務(wù)器。如過(guò)userlist_enable=NO,userlist_deny=YES,則指定使文件/etc/vsftpd.user_list中指定的用戶不可以訪問(wèn)服務(wù)器,其他本地用戶可以訪問(wèn)服務(wù)器。
listen=YES 指明VSFTPD以獨(dú)立運(yùn)行方式啟動(dòng)
tcp_wrappers=YES 在VSFTPD中使用TCP_Wrappers遠(yuǎn)程訪問(wèn)控制機(jī)制,默認(rèn)值為YES
三、舉例建立一個(gè)名為test的賬戶并進(jìn)行配置
根據(jù)實(shí)際情況對(duì)FTP進(jìn)行配置后,下面舉例介紹建立一個(gè)FTP賬戶并進(jìn)行簡(jiǎn)單的配置:
1、創(chuàng)建一個(gè)賬號(hào)為test的賬戶:
#mkdir /tmp/test//首先創(chuàng)建好目錄
#adduser -d /tmp/test -g ftp -s /in/nologin test //-s /in/nologin是讓其不能登陸系統(tǒng),-d 是指定用戶目錄為/opt/sran ,即該賬戶只能登陸ftp,卻不能用做登陸系統(tǒng)用。
#passwd test
Changing password for user beinan.//接下來(lái)會(huì)出現(xiàn)讓你設(shè)置新的密碼
New password:
Retype new password:
passwd: all authentication tokens updated successfully
創(chuàng)建賬戶成功!
2、限制用戶目錄,不得改變目錄到上級(jí)
修改/etc/vsftpd/vsftpd.conf
將這兩行
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
注釋去掉
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
新增一個(gè)文件: /etc/vsftpd/chroot_list
內(nèi)容寫需要限制的用戶名:
test
重新啟動(dòng)vsftpd
# service vsftpd restart
3、最后為了防止服務(wù)器由于斷電、重啟等現(xiàn)象發(fā)生,導(dǎo)致ftp進(jìn)程在開(kāi)機(jī)后未啟動(dòng),將其添加到開(kāi)機(jī)啟動(dòng)文件中:
(1)找到/etc/rc.local文件
(2)打開(kāi)該文件,在最后一行添加:service vsftpd start
(3)保存,退出
4、通過(guò)在“我的電腦”中輸入ftp://192.168.179.30(填該ftp服務(wù)器ip地址)進(jìn)入ftp服務(wù)器,輸入設(shè)置好的賬戶登陸即可。
5、CMD-》ftp 192.168.1.2
Cd /soft
Put c:\sss.log //這樣可以成功上傳, VSFTP不支持絕對(duì)目錄上傳,只能夠到當(dāng)前目錄下上傳
如果是紅帽的linux,service vsftpd start就宏纖可以開(kāi)啟ftp服務(wù),/var/ftp/pub/路徑下的東西就可被別蔽坦仿人信御下載了。
可以做的,,,ip的話 自己找電信運(yùn)營(yíng)商購(gòu)買一個(gè)固定的,或者 用花生殼
linux ftp源代碼的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux ftp源代碼,Linux FTP源代碼概述,怎么樣在Redhat Linux 下配置FTP,Web,MySql服務(wù)(要具體的,更好完整的),如何在linux 服務(wù)器上做FTP。請(qǐng)指教。的信息別忘了在本站進(jìn)行查找喔。
成都網(wǎng)站營(yíng)銷推廣找創(chuàng)新互聯(lián),全國(guó)分站站群網(wǎng)站搭建更好做SEO營(yíng)銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽(yáng)服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽(yáng)服務(wù)器機(jī)房服務(wù)器托管租用。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流