軟件測(cè)試 | FTP性能測(cè)試腳本開(kāi)發(fā)(1)
FTP是什么
FTP是File Transfer Protocol(文件傳輸協(xié)議)的英文簡(jiǎn)稱,而中文簡(jiǎn)稱為“文傳協(xié)議”,用于在Internet上控制文件的雙向傳輸。同時(shí),它也是一個(gè)應(yīng)用程序(Application)。用戶可以通過(guò)把自己的PC與世界各地所運(yùn)行FTP協(xié)議的服務(wù)器相連,訪問(wèn)服務(wù)器上的大量程序和信息。FTP的主要作用是讓用戶連接一個(gè)遠(yuǎn)程計(jì)算機(jī)(這些計(jì)算機(jī)上運(yùn)行著FTP服務(wù)器程序),查看遠(yuǎn)程計(jì)算機(jī)上有哪些文件,然后把文件從遠(yuǎn)程計(jì)算機(jī)上復(fù)制到本地計(jì)算機(jī),或把本地計(jì)算機(jī)的文件傳送到遠(yuǎn)程計(jì)算機(jī)上去。
1.工作原理
以下在文件為例,當(dāng)測(cè)試人員啟動(dòng)FTP從遠(yuǎn)程計(jì)算機(jī)復(fù)制文件時(shí),實(shí)際上啟動(dòng)了兩個(gè)程序:一個(gè)是本地文件上的FTP客戶程序,它向FTP服務(wù)器提出復(fù)制文件的請(qǐng)求;另一個(gè)是啟動(dòng)在遠(yuǎn)程計(jì)算機(jī)上的FTP服務(wù)器程序,它響應(yīng)測(cè)試人員的請(qǐng)求,把測(cè)試人員指定的文件傳送到測(cè)試人員的計(jì)算機(jī)中。FTP采用“客戶機(jī)/服務(wù)器”方式,用戶端要在自己的本地計(jì)算機(jī)上安裝FTP客戶程序。FTP客戶程序有字符界面和圖形界面兩種。字符界面的FTP的命令復(fù)雜、繁多,而圖形界面的FTP客戶程序操作上要簡(jiǎn)潔方便得多。
2.傳輸協(xié)議
簡(jiǎn)單地說(shuō),支持FTP協(xié)議的服務(wù)器就是FTP服務(wù)器,下面介紹一下什么是FTP協(xié)議(文件傳輸協(xié)議)。
一般來(lái)說(shuō),用互聯(lián)網(wǎng)的首要目的就是實(shí)現(xiàn)信息共享,文件傳輸是信息共享非常重要的一個(gè)內(nèi)容。早期在Interment上實(shí)現(xiàn)文件傳輸并不是一件容易的事。我們知道Internet是一個(gè)非常復(fù)雜的計(jì)算機(jī)環(huán)境,有PC,有工作站,有MAC,大型機(jī),而連接在Internet上的計(jì)算機(jī)有成千上萬(wàn)臺(tái),并且這些計(jì)算機(jī)可能運(yùn)行不同的操作系統(tǒng),有運(yùn)行UNIX的服務(wù)器,也有運(yùn)行DOS、Windows的PC和運(yùn)行Mac OS是蘋果機(jī)等,為解決各種操作系統(tǒng)之間的文件交流問(wèn)題,需要建立一個(gè)統(tǒng)一的文件傳輸協(xié)議,這就是所謂的FTP。基于不同的操作系統(tǒng)有不同的FTP應(yīng)用程序,而所有這些應(yīng)用程序都遵循同一種協(xié)議,這樣用戶就可以把自己的文件傳送給別人,或者從其他的用戶環(huán)境中獲得文件。
3.服務(wù)器系統(tǒng)
與大多數(shù)Internet服務(wù)一樣,F(xiàn)TP也是一個(gè)客戶機(jī)/服務(wù)器系統(tǒng)。用戶通過(guò)一個(gè)支持FTP協(xié)議的客戶機(jī)程序,連接到遠(yuǎn)程主機(jī)上的FTP服務(wù)器程序。用戶通過(guò)客戶機(jī)程序向服務(wù)器程序發(fā)出命令,服務(wù)器程執(zhí)行用戶所發(fā)出的命令,并將執(zhí)行的結(jié)果返貨到客戶機(jī)。比如說(shuō),用戶發(fā)出一條命令,要求服務(wù)器向用戶傳送某一個(gè)文件的一份備份,服務(wù)器會(huì)響應(yīng)這條命令,將制定文件送至用戶的機(jī)器上??蛻魴C(jī)程序代表用戶接受到這個(gè)文件,將其存放在用戶目錄中。
在FTP的使用中,用戶經(jīng)常遇到兩個(gè)概念:“下載(Download)”和“上傳(Upload)”?!跋螺d”文件就是從遠(yuǎn)程主機(jī)復(fù)制文件至自己的計(jì)算機(jī)上:“上傳”文件就是將文件從自己的計(jì)算機(jī)中復(fù)制至遠(yuǎn)程主機(jī)上。用Ineter語(yǔ)言來(lái)說(shuō),用戶可通過(guò)客戶機(jī)程序向(從)遠(yuǎn)程主機(jī)上傳(下載)文件。
使用FTP時(shí)必須首先登錄,在遠(yuǎn)程主機(jī)上獲得相應(yīng)的權(quán)限以后,方可下載或上傳文件。也就是說(shuō),想要同哪一臺(tái)計(jì)算機(jī)傳送文件,就必須具有一臺(tái)計(jì)算機(jī)的適當(dāng)授權(quán)。換言之,除非有用戶ID和口令,否則無(wú)法傳送文件。這種情況違背了Ineter的開(kāi)放性,Internet上的FTP主機(jī)何止千萬(wàn),不可能要求每個(gè)用戶在每一臺(tái)主機(jī)上都擁有賬號(hào)。匿名FTP就是為解決這個(gè)問(wèn)題而產(chǎn)生的。
匿名FTP是這樣一種機(jī)制,即用戶可通過(guò)它連接到遠(yuǎn)程主機(jī)上,并下載文件,而無(wú)須成為其注冊(cè)用戶。系統(tǒng)管理員建立了一個(gè)特殊的用戶ID,名為anonymous,Ineter上的任何人在任何地方都可使用該用戶ID。
通過(guò)FTP程序連接匿名FTP主機(jī)的方式同連接普通FTP主機(jī)的方式差不多,只是在要求提供用戶標(biāo)識(shí)ID時(shí),必須輸入“anonymous”,該用戶ID的口令可以是任意的字符串。習(xí)慣上,用自己的E-mail地址作為命令,使系統(tǒng)維護(hù)程序能夠記錄下來(lái)誰(shuí)在存取這些文件。
值得注意的是,匿名FTP不適用于所有Internet主機(jī),它只適用于那些提供這項(xiàng)服務(wù)的主機(jī)。
當(dāng)遠(yuǎn)程主機(jī)提供匿名FTP服務(wù)時(shí),會(huì)制定某些目錄向公眾開(kāi)發(fā),允許匿名存取,系統(tǒng)中的其余目錄則處于隱匿狀態(tài)。作為一種安全措施,大多數(shù)匿名FTP主機(jī)都允許用戶下載文件,而不允許用戶上傳文件,也就是說(shuō),用戶可將匿名FTP主機(jī)上的所有文件復(fù)制到自己的機(jī)器上,但不能將自己機(jī)器上的任何一個(gè)文件復(fù)制到匿名FTP主機(jī)上。即使有些匿名FTP主機(jī)確實(shí)允許用戶上傳文件,用戶也只能將文件上傳至某一指定目錄中。隨后,系統(tǒng)管理員會(huì)去檢查這些文件,將這些文件移至另一個(gè)公共下載目錄中,供其他用戶下載。利用這種方式,遠(yuǎn)程主機(jī)的用戶就得到了保護(hù),因?yàn)榭杀苊庥行┤松蟼饔袉?wèn)題的文件,如帶有病毒的文件。
作為一個(gè)Ineter用戶,可通過(guò)FTP在任意兩臺(tái)Ineter主機(jī)之間復(fù)制文件。實(shí)際上,多數(shù)人只有一個(gè)Ineter賬戶,F(xiàn)TP主要用戶下載公共文件,如共享軟件、各公司技術(shù)支持文件等。Ineter上有成千上萬(wàn)臺(tái)匿名FTP主機(jī),這些主機(jī)上存放著數(shù)不清的文件,供用戶免費(fèi)復(fù)制。實(shí)際上,幾乎所有類型的信息、所有類型的計(jì)算機(jī)程序都可以在Ineter上找到。這時(shí)Internet吸引我們的重要原因之一。
4.用戶分類
1)Real賬戶
這類用戶在FTP服務(wù)器上擁有賬號(hào)。當(dāng)這類用戶登錄FTP服務(wù)器時(shí),其默認(rèn)的主目錄就是以其賬號(hào)命名的目錄。但也可以變更到其他目錄中去,如系統(tǒng)的主目錄等。
2)Guest用戶
在FTP服務(wù)器中我們往往會(huì)為不同的部門或者某個(gè)特定的用戶設(shè)置一個(gè)賬戶。這個(gè)賬戶有個(gè)特點(diǎn),就是只能夠訪問(wèn)自己的主目錄。服務(wù)器通過(guò)這種方式來(lái)保障FTP服務(wù)器上其他的文件的安全。這類賬戶,在vsftpd軟件中就叫做Guest用戶。Guest用戶只能夠訪問(wèn)其主目錄下的目錄,而不得訪問(wèn)主目錄以外的文件。
3)Anonymous(匿名)用戶
這也是我們通常所說(shuō)的匿名訪問(wèn)。這類用戶在FTP服務(wù)器中沒(méi)有指定賬戶,但仍然可以匿名訪問(wèn)某些公開(kāi)的資源。
在組建FTP服務(wù)器的時(shí)候,我們就需要根據(jù)用戶的類型,對(duì)用戶進(jìn)行歸類。默認(rèn)情況下,Vsftpd服務(wù)器會(huì)把建立的所有賬戶都?xì)w屬為Real用戶。但是,這往往不符合企業(yè)安全的需求。因?yàn)檫@類用戶不僅可以訪問(wèn)自己的主目錄,而且還可以訪問(wèn)其他用戶的目錄,這就給其他用戶所在的空間帶來(lái)一定的安全隱患。所以,企業(yè)要根據(jù)實(shí)際情況,修改用戶所在的類別。
搜索微信公眾號(hào):TestingStudio霍格沃茲的干貨都很硬核