一、安裝vsftpd和LeapFTP,並做相關配置
1、先掃盲(1)何為vsftpd?如果你想在你的Linux/Unix伺服器上搭建一個安全、高效能、穩定性好的FTP伺服器,那麼vsftpd可能是你的首選應用。vsftpd意思為“very secure FTP daemon(非常安全的FTP進程)”,是一個基於GPL發布的類UNIX類作業系統上啟動並執行伺服器的名字(是一種守護進程),可以運行在諸如Linux、BSD、Solaris、HP-UX以及Irix等系統上面。vsftpd支援很多其他傳統的FTP伺服器不支援的良好特性。(2)何為ftp?FTP的全稱是File Transfer Protocol(檔案傳輸通訊協定),顧名思義,就是專門用來傳輸檔案的協議。FTP的主要作用,就是讓使用者串連上一個遠端電腦(這些電腦上運行著 FTP伺服器程式)察看遠端電腦有哪些檔案,然後把檔案從遠端電腦上拷到本機電腦,或把本機電腦的檔案送到遠端電腦去。2、驗證vsftpd是否安裝在安裝redhat的時候,如果我們勾選了vsftpd相關選項,那麼系統中這個時候已經帶了vsftp,就不需要再手動安裝了,否則,我們需要手動安裝。如何驗證?開啟putty(上節介紹過,不懂點我),串連上遠端linux伺服器命令列下輸入:rpm -qa| grep vsftpd如果已經安裝就會出現vstfp的版本號碼相關的資訊,如果沒有出現就是沒有安裝
如果未安裝,那就得選擇安裝方式了。(1)用安裝盤安裝插入Red Hat Enterprise Linux 5安裝光碟片(第二張光碟片) ,使用如下命令 :1)先把光碟片掛載到系統上:mount /dev/cdrom /mnt
這樣光碟片的內容就被掛載到/mnt的裝置上,現在可以通過/mnt訪問光碟片上的內容了2)在光碟片上安裝vsftp,並且啟動vsftprpm -ivh vsftpd*3)修改啟動方式,改為系統啟動時,自動啟動chkconfig vsftpd on
也可以查看啟動方式
chkconfig --list |grep vsftpd
只要在第2--5為on就能隨機啟動4)啟動ftpservice vsftpd start5)串連測試windows+r開啟windows的命令列,輸入ftp 伺服器ip,例如ftp192.168.40.128如果出現“串連到……等字樣,說明安裝成功。(2)用下載包安裝(註:該方法摘自http://os.51cto.com/art/201008/221989.htm,由於方法1很容易安裝,所以並未驗證該方法,但理論可行)比如我們下載的是 vsftpd-2.0.3.tar.gz ;[root@localhost ~]# tar zxvf vsftpd-2.0.3.tar.gz[root@localhost ~]# cd vsftpd-2.0.3[root@localhost ~]# make ;make install (這裡應該需要GCC,後面我們會提到它的安裝方式)[root@localhost ~]# cp vsftpd.conf /etc然後修改/etc/vsftpd.conf ,在設定檔的最後一行加入下面一行;listen=yes源碼包安裝的方法,如果您的系統是RPM包管理的系統,可以刪除/etc/xinetd.d/vsftpd 這個檔案;然後啟動xinetd 伺服器;[root@localhost ~]# /etc/init.d/xinetd restart停止 xinetd: [ 確定 ]啟動 xinetd: [ 確定 ]vsFTPd運行有兩種模式,在RPM包管理的系重審統,大多是由Fedora/Redhat 開發而來,對於這樣的系統有xinted伺服器一說;對於非RPM包管理的系統,一般沒有xinted這一說。為了保證本文檔的統一,我們都不要用xinetd模式,而用initd運行模式來啟動和管理伺服器,也就是獨立運行模式。相關閱讀:什麼是xinetd模式和initd模式?像其它精靈一樣,vsftpd提供了standalone和inetd(inetd或xinetd)兩種運行模式。簡單解釋一下, standalone一次性啟動,運行期間一直駐留在記憶體中,優點是對接入訊號反應快,缺點是損耗了一定的系統資源,因此經常應用於對即時反應要求較高的專業FTP伺服器。inetd恰恰相反,由於只在外部串連發送請求時才調用FTP進程,因此不適合應用在同時串連數量較多的系統。此外,inetd模式不佔用系統資源。除了反應速度和佔用資源兩方面的影響外,vsftpd還提供了一些額外的進階功能,如inetd模式支援per_IP(單一IP)限制,而
standalone模式則更有利於PAM驗證功能的應用。xinetd模式和standalone模式的區別以xinetd模式啟動並執行服務表示該服務進程並不以守護進程執行,以FTPD進程為例吧,以xinetd模式運行這個服務,情況是這樣的,本身FTP服務是會監聽21號連接埠的,但是以這種模式運行這個服務的話,21號連接埠則由xinetd進程來監聽(此時FTPD服務並沒有運行),如果你的網卡接收到有21號連接埠請求,則有xinetd進程會去調用FTPD程式,將在21號連接埠接收到的請求資料移交給FTPD進程去處理,處理完後FTPD進程退出,而xinetd進程繼續監聽21號連接埠,這有點類似windows的svhost進程;而以
standalone模式啟動並執行服務則是服務進程,如ftpd以守護進程在記憶體中運行,接收到21號連接埠的請求後由FTPD進程fork出一個子進程進行處理,而原進程繼續監聽21號連接埠。¥xinetd運行模式大多數較新的系統採用的是xinetd超級服務守護進程。使用“vi /etc/xinetd.d/vsftpd” 看一下它的內容,如下:disable = no socket_type = streamwait = no# 這表示裝置是啟用的,它正在使用標準的TCP Sockets。如果“/etc/vsftpd.conf”中的有選項為“listen=YES”,登出它最後,重啟xinetd,命令如下:$ /etc/rc.d/init.d/xinetd restart需要注意的是,“/etc/xinetd.d”目錄中僅能開啟一個FTP服務。¥standalone模式standalone模式便於實現PAM驗證功能。進入這種模式首先要關閉xinetd下的vsftpd,設定“disable = yes”,或者登出掉“/etc/inetd.conf”中相應的行。然後修改“/etc/vsftpd.conf”中的選項為“listen=YES”。如果是standlone模式,那麼它是作為單獨的一個服務啟動的,不需要系統協作,不作為系統服務, 如果要是成為xinetd模式,那麼它的服務就要受系統服務的限制,比如建立一個新的服務進程,但是也有缺點,如果xinetd服務本身出了問題,那麼相關的服務也是會受到影響的。 --------------------------------------------------------------------------可能會遇到的問題¥vsftpd匿名使用者不能上傳檔案和刪除¥root使用者無法登陸這就需要我們vsftp進行簡單的配置3、vsftpd配置
主設定檔有三個:
/etc/vsftpd/vsftpd.conf
/etc/vsftpd.ftpusers
/etc/vsftpd.user_list
修改前建議使用“cp”命令備份這三個檔案,修改完成後需要重啟vsftpd服務才能使設定生效。
匿名使用者存取配置
¥啟動後FTP伺服器就可以登陸了
匿名使用者在text模式下,要用使用者名稱ftp,密碼也是ftp,來進行登陸;如果是用FTP工具來匿名登陸的話,使用者名稱和密碼都為:anonymous。預設情況下匿名使用者可以訪問和下載,但不能進行上傳、刪除、建立目錄、執行檔案等操作!
本機使用者可以登陸,並可以離開自家目錄至有權訪問的其他目錄,並在許可權允許的情況下進行上傳和下載,寫在檔案/etc/vsftpd.ftpusers中的本機使用者禁止登入。
¥允許匿名使用者上傳檔案
需要修改/etc/vsftpd/vsftpd.conf檔案,把以下兩項前的“#”去掉。
anon_upload_enable=YES
anon_mkdir_write_enable=YES
重啟vsftpd服務。
¥僅允許匿名使用者存取
指需要限制本地帳號訪問,修改/etc/vsftpd/vsftpd.conf檔案,把以下兩項前的“#”去掉。
local_enable=YES
write_enable=YES
重啟vsftpd服務。
¥設定歡迎資訊
修改/etc/vsftpd/vsftpd.conf檔案
ftpd_banner=*****
*****即為設定的歡迎資訊。
重啟vsftpd服務。
¥設定最大傳輸率
修改/etc/vsftpd/vsftpd.conf檔案
設定匿名使用者的最大傳輸速率為20Kbps,應添加以下語句:
anon_max_rate=20000
設定本地帳號的最大傳輸速率為1Mbps,應添加以下語句:
local_max_rate=1000000
¥設定伺服器最大並發數和使用者最大線程數
修改/etc/vsftpd/vsftpd.conf檔案
設定伺服器最大並發數為99,應添加以下語句:
max_clients=99
設定使用者同一時段的最大串連數,應添加以下語句:
max_per_ip=5
¥禁止某些IP段的主機匿名訪問伺服器
修改vsftpd.conf檔案,確認有如下語句:
tcp_wrappers=YES
修改/etc/hosts.allow檔案,增加1行命令:
vsftpd:192.168.1.1:DENY
表示限制IP為192.168.1.1的主機訪問FTP伺服器。
重啟vsftpd服務。
¥用ASCII方法傳送資料
修改/etc/vsftpd/vsftpd.conf檔案,
ascii_upload_enable=YES
ascii_download_enable=YES
重啟vsftpd服務。
¥設定資料轉送中斷間隔時間
修改/etc/vsftpd/vsftpd.conf檔案,
idle_session_timeout=600
表明空閑會話時間為600秒。
data_connection_timeout=120
表明資料連線逾時時間為120秒。
重啟vsftpd服務。
本機使用者訪問配置
¥使用使用者列表進行存取控制
修改/etc/vsftpd/vsftpd.conf檔案,按以下語句設定:
userlist_enable=NO
表明vsftpd.ftpuser檔案中的使用者將被禁止訪問FTP伺服器。
userlist_enable=YES
userlist_deny=NO
表明僅允許vsftpd.user_list檔案中的使用者訪問FTP伺服器。
userlist_enable=YES
userlist_deny=YES
表明vsftpd.ftpuser和vsftpd.user_list檔案中的使用者都不能訪問FTP伺服器。
¥限制使用者目錄的存取權限
修改/etc/vsftpd/vsftpd.conf檔案
chroot_local_user=YES
表明使用者登入後不能訪問自己目錄以外的其它目錄或檔案。
¥修改預設連接埠
FTP伺服器預設的連接埠是21,如需要修改連接埠,請修改/etc/vsftpd/vsftpd.conf檔案,以下語句:
listen_port=4444
表明FTP伺服器的連接埠號碼為4444,應該盡量大於4000
3、安裝leapFtp接著掃盲(1)何為LeapFTP?LeapFTP是一款小巧強大的FTP工具之一,友好的使用者介面,穩定的傳輸速度,LeapFTP與FlashFXP 、CuteFTP堪稱FTP 三劍客。FlashFXP傳輸速度比較快,但有時對於一些教育網FTP網站卻無法串連;LeapFTP傳輸速度穩定,能夠串連絕大多數FTP網站(包括一些教育網網站);CuteFTP雖然相對來說比較龐大,但其內建了許多免費的FTP網站,資源豐富。總之來說,三者各有所長。
google下,下載綠色版,直接解壓即可。
使用起來很簡單。