步驟1:背景信息
為什么使用VSFTPD?
VSFTPD代表非常安全的FTP守護(hù)程序,所以我想這很明顯,對(duì)吧?老實(shí)說,我無法驗(yàn)證它是否確實(shí)是目前最安全的FTP服務(wù)器,但是我可以告訴您的是它是輕量級(jí)的,具有非常低的功能,最重要的是沒有問題。請(qǐng)注意,根據(jù)您的發(fā)行版和執(zhí)行的安裝類型,您很有可能已經(jīng)擁有了它。在這種情況下,您顯然不需要重新安裝。
為什么使用Ubuntu?
從技術(shù)上講,不是我的計(jì)算機(jī)上安裝了Ubuntu,而是PepperMint。 PepperMint是Mint Linux的簡化版,后者又基于Ubuntu。我選擇Ubuntu的唯一原因是因?yàn)檫@是我過去使用過的并且我更加熟悉。如果您使用的是其他類型的Linux,那么按照此說明進(jìn)行操作不會(huì)有任何問題。我將嘗試突出顯示您需要進(jìn)行更改的所有部分。
先決條件
如果您已閱讀本文,我認(rèn)為您使用計(jì)算機(jī)的目的不只是Farm ville。顯然需要有可用的Linux機(jī)器。如果您正在尋找基于Windows的解決方案,我會(huì)推薦FileZilla,它易于設(shè)置和維護(hù)。除此之外,您唯一需要的就是要使用的計(jì)算機(jī)上的Internet訪問。您可以選擇將FTP服務(wù)器設(shè)置為僅供內(nèi)部使用,但在這種情況下,您將必須手動(dòng)下載并安裝所需的軟件包。
免責(zé)聲明
設(shè)置FTP服務(wù)器(出于安全考慮)僅允許匿名訪問,只能下載。甚至系統(tǒng)管理員也不能在服務(wù)器上上傳內(nèi)容。應(yīng)使用其他方法將內(nèi)容放在FTP目錄中。從理論上講,我將在這里向您展示的內(nèi)容會(huì)損害您系統(tǒng)的安全性,因?yàn)槲覍?chuàng)建一個(gè)具有上傳特權(quán)的用戶。盡管我已經(jīng)采取了額外的預(yù)防措施以使其盡可能安全,但是如果您對(duì)安全性抱有偏執(zhí),請(qǐng)不要遵循這些說明。
步驟2:安裝
Linux中的軟件包含在我們稱為軟件包中。在這里,我將不做太多詳細(xì)介紹,有無數(shù)的地方可以閱讀。但是,如果有您不了解的地方或需要幫助的地方,請(qǐng)?zhí)岢鰡栴},我將盡力回答。
為此,您需要Internet訪問。如果要設(shè)置僅在LAN中使用的計(jì)算機(jī),則必須使用另一臺(tái)可以訪問,手動(dòng)下載和安裝軟件包的計(jì)算機(jī)。
在終端(控制臺(tái)-命令行)上,鍵入以下內(nèi)容:
sudo apt-get install vsftpd
然后會(huì)要求您輸入密碼。輸入它,它將連接到互聯(lián)網(wǎng)并搜索您告訴它的包裹。一段時(shí)間后,它將告訴您確切打算安裝什么,并等待確認(rèn)。按下鍵盤上的 Y ,等待安裝完成。
恭喜!您已經(jīng)安裝了VSFTPD。
如果您使用的是其他發(fā)行版,則可能需要調(diào)整以上命令。例如,在Gentoo Linux中,出現(xiàn)了apt-get等效項(xiàng),在Suse中,您使用zypper命令,依此類推。由于sudo可能不存在,您可能會(huì)想知道如何在自己的發(fā)行版中以root特權(quán)執(zhí)行命令。
步驟3:創(chuàng)建FTP用戶。
我已經(jīng)說過,F(xiàn)TP服務(wù)器的最安全配置是只允許匿名訪問而沒有寫權(quán)限。我們將偏離這一點(diǎn)。我們將創(chuàng)建兩個(gè)用戶,一個(gè)只能下載,另一個(gè)可以充當(dāng)管理員,即上載和下載特權(quán)。請(qǐng)注意,這些用戶也將是系統(tǒng)用戶。因此,我們必須采取一些額外的步驟,以使整個(gè)過程變得更加安全。
首先,您必須確定FTP文件夾的位置。我選擇了/home/ftp。因此,在終端類型中:
sudo mkdir/home/ftp
現(xiàn)在,我們需要添加用戶,但首先要確保唯一新用戶可以登錄到我們的FTP服務(wù)器。每當(dāng)您創(chuàng)建一個(gè)新的Linux用戶時(shí),就為他分配一個(gè)將要使用的默認(rèn)Shell。如果您不確定我在說什么,請(qǐng)花一點(diǎn)時(shí)間閱讀有關(guān)Shell的內(nèi)容。使用您喜歡的編輯器,打開/etc/shells文件并添加一個(gè)不存在的文件。我將我的命名為“ dummy”,如下圖所示。
計(jì)劃是添加兩個(gè)FTP用戶,一個(gè)FTP用戶既具有寫訪問權(quán),又具有讀取訪問權(quán),而一個(gè)簡單的用戶只能下載文件。這樣,如果要讓您的朋友下載文件,則不必授予他對(duì)服務(wù)器的寫訪問權(quán)限。
在創(chuàng)建用戶之前,必須創(chuàng)建一個(gè)用戶所屬的組。 。默認(rèn)情況下,Linux創(chuàng)建一個(gè)與用戶同名的用戶組,但是我們不希望這樣。因此,在終端類型中:
sudo groupadd ftp-users
現(xiàn)在我們可以添加用戶:
sudo useradd --home/home/ftp --group ftp用戶--shell/bin/dummy ftpadmin
sudo passwd ftpadmin 《為用戶提供密碼后,就完成了。對(duì)第二個(gè)用戶重復(fù)相同的過程。我命名為ftpguest。您可以選擇所需的任何名稱。嘗試使用您創(chuàng)建的任一新用戶登錄系統(tǒng)。如果您做對(duì)了所有事情,則應(yīng)該無法登錄。
我們快完成了。我們只需要向用戶授予我們?cè)谏厦鎰?chuàng)建的FTP目錄的正確權(quán)限。首先,我們將目錄的所有者從根目錄更改為ftpadmin:
sudo chown -R ftpadmin/home/ftp
然后:
sudo chmod 755/home/ftp
這兩個(gè)命令的結(jié)果是目錄所有者(ftpadmin)將擁有對(duì)該目錄及其中文件的完全訪問權(quán)限而世界其他地區(qū)則只能讀取訪問權(quán)限。執(zhí)行l(wèi)s -l,您應(yīng)該會(huì)看到類似第三張圖片的畫面(這也使我忘記了對(duì)ls命令:P的正確切換)。
您可以在此處閱讀有關(guān)文件權(quán)限的更多信息。
步驟4:編輯配置文件
與Windows不同,Linux沒有注冊(cè)表文件。就我個(gè)人而言,我認(rèn)為這是一種祝福,因?yàn)闆]有諸如注冊(cè)表太大之類的事情,這意味著您的系統(tǒng)變慢且不穩(wěn)定。每個(gè)程序都有自己的包含配置選項(xiàng)的文件。在這一步中,我們將對(duì)VSFTPD的配置文件進(jìn)行一些調(diào)整。
我認(rèn)為這很明顯,但是我必須指出,在開始使用它之前,我們需要首先進(jìn)行復(fù)制,以防萬一出了問題。 。如果您發(fā)現(xiàn)自己經(jīng)常弄亂配置文件,那么創(chuàng)建一個(gè)目錄來存儲(chǔ)所有這些文件的備份并不是一個(gè)壞主意。假設(shè)此目錄為/home/cfgbackup,請(qǐng)?jiān)诮K端中鍵入以下命令:
sudo cp/etc/vsftpd.conf/home/cfgbackup
現(xiàn)在,使用您喜歡的編輯器(您可能已經(jīng)注意到,我更喜歡nano)打開vsftpd.conf。
令人難以置信的是,有許多設(shè)置可供您使用,我只會(huì)指出我所做的更改。
首先,請(qǐng)找到標(biāo)有anonymous_enable的行,并確保其為 anonymous_enable = NO 。請(qǐng)注意,此處以#開頭的行是注釋,因此,刪除#時(shí),您可以激活這些行(這稱為取消注釋)。 br》找到顯示local_enable的行,并將其更改為 local_enable = YES 。使用 write_enable 執(zhí)行相同的操作。到目前為止,您已經(jīng)禁止匿名用戶訪問服務(wù)器,并且僅允許系統(tǒng)用戶登錄。根據(jù)配置文件,每個(gè)用戶都具有寫權(quán)限,但是我們?cè)谏弦徊街幸呀?jīng)處理了此權(quán)限,還記得嗎?
下一步是將我們的FTP用戶包含到其主目錄中。此方法稱為“ Root jail”,它使用chroot命令。檢查下面的圖片,并相應(yīng)地更改您自己的文件。接下來的兩行是我添加的,因此不要嘗試在您自己的文件中找到它們(至少它們?cè)谖业奈募胁淮嬖冢?。添加它們以僅允許一部分用戶登錄到您的服務(wù)器。請(qǐng)注意,我們?cè)诖颂幝暶髁宋募簐sftpd.chroot_list,由于該文件不存在,我們現(xiàn)在必須創(chuàng)建該文件。創(chuàng)建它并添加您創(chuàng)建的兩個(gè)用戶,每個(gè)用戶都在自己的行中。創(chuàng)建另一個(gè)名為vsftpd.user_list的文件,并在其中也添加這兩個(gè)用戶。這兩個(gè)文件都應(yīng)該在/etc目錄中。
在終端中鍵入:
sudo服務(wù)vsftpd restart
新設(shè)置將生效您的新FTP服務(wù)器就可以使用了!
步驟5:結(jié)束語
您已經(jīng)成功設(shè)置了自己的FTP服務(wù)器。它具有盡可能高的安全性(當(dāng)然要考慮我們的要求),它使您可以從世界任何地方傳輸文件,與朋友共享文件以及更接近可怕的Linux終端。
看到配置文件中有關(guān)chroot的“警告”的警告,讓我告訴你,無論我多么努力地搜索,我發(fā)現(xiàn)的唯一內(nèi)容是“如果有人知道他在做什么,他也許可以繞過它”,但是什么也沒有更加具體。我已經(jīng)告訴過您,我們將偏離建議的FTP安全性明智使用,因此這是我愿意承擔(dān)的風(fēng)險(xiǎn)之一。
我在本指南中未涉及的唯一部分是如何訪問您的服務(wù)器是來自外部的,但基本上是從路由器轉(zhuǎn)發(fā)端口22(或在配置文件中選擇的端口),如果沒有靜態(tài)IP地址,則可能會(huì)設(shè)置一個(gè)動(dòng)態(tài)dns帳戶。我敢肯定那里有很多關(guān)于如何執(zhí)行此操作的教程,所以我在這里沒有包含這樣的說明。
責(zé)任編輯:wv
-
Linux
+關(guān)注
關(guān)注
87文章
11212瀏覽量
208723 -
vsftpd
+關(guān)注
關(guān)注
0文章
3瀏覽量
1718
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論