vsftpd 配置
本站整理 發(fā)布時間:2009-03-10 14:59:42 作者:jb51.net
我要評論
0、關(guān)于本文檔
本文檔是個人的學(xué)習(xí)整理,允許大家翻閱,摘抄,引用,更歡迎指出其中不對之處,文檔的內(nèi)容主要來自VSFTPD自身文檔、個人學(xué)習(xí)心得以及網(wǎng)絡(luò)資料,若有類同,實屬正常,∶),
本文檔基于RedHat Linux 9和VSFTPD-1.1.3-8,如果有不同版本,則有專門文字
#使用ftpd_banner取代VSFTPD默認(rèn)的歡迎詞,免得泄漏相關(guān)信息
ftpd_banner=Welcome to this FTP Server
#只讓匿名用戶瀏覽可閱讀的文件,不可以瀏覽整個系統(tǒng)
anon_world_readable_only=YES
#隱藏文件的所有者和組信息,匿名用戶看到的文件的所有者和組全變?yōu)閒tp
hide_ids=YES
#取消寫權(quán)限
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
#使用單獨模式,并指定的IP地址
listen_address=ip address
#對連接進(jìn)行控制,還有超時時間,那就根據(jù)具體情況再說了。
connect_from_port_20=YES
pasv_min_port=50000
pasv_max_port=60000
#控制并發(fā)數(shù),限定每個IP地址的并發(fā)數(shù),這個嘛,根據(jù)用戶自已定了。
max_clients=numerical value
max_per_ip=numerical value
#限定下載速度,具體限多大,就由用戶自己定了,80KB/s,也很快了吧。
anon_max_rate=80000
#啟用詳細(xì)的日志記錄格式
xferlog_enable=YES
6.4、基于IP地址的虛擬FTP服務(wù)器
假定服務(wù)器有兩個IP地址,192.168.0.1和192.168.0.2。VSFTPD是建立在192.168.0.1上的,現(xiàn)在我們在192.168.0.2上再提供一個虛擬FTP服務(wù)器。如何在一臺服務(wù)器上使用多個IP 地址,請參考相關(guān)文檔。
1、創(chuàng)建虛擬FTP服務(wù)器的根目錄。
mkdir -p /var/ftp2/pub
確保/var/ftp2和/var/ftp2/pub目錄的擁有者和組均為root,掩碼為755。
2、增加虛擬FTP服務(wù)器的匿名用戶帳號。原先的FTP服務(wù)器使用系統(tǒng)用戶ftp作為其匿名用戶帳號。我們要增加一個ftp2用于虛擬FTP服務(wù)器。
useradd -d /var/ftp2 -M ftp2
3、創(chuàng)建虛擬FTP服務(wù)器的配置文件。復(fù)制原來的vsftpd.conf作為虛擬FTP服務(wù)器的配置文件,并修改相關(guān)參數(shù)。
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
新添或修改以下參數(shù):
listen=YES
listen_address=192.168.0.2
ftp_username=ftp2
注:由于VSFTPD默認(rèn)是所有的IP地址,當(dāng)我們設(shè)定基于IP的虛擬FTP服務(wù)器時,為防止原來的FTP服務(wù)器與虛擬FTP服務(wù)器發(fā)生上的沖突,原FTP服務(wù)器需要指定的IP地址。在這里,原來的配置文件中就要設(shè)置listen_address=192.168.0.1。
4、啟動虛擬FTP服務(wù)器。
/etc/rc.d/init.d/vsftpd腳本在啟動時,掃描/etc/vsftpd/目錄下所有的*.conf文件,按照*.conf文件的先后,依次啟用vsftpd進(jìn)程,每個vsftpd進(jìn)程對應(yīng)一個.conf文件。即,“ls /etc/vsftpd/”列表的次序與“ps -aux |grep vsftpd”中的順序一樣。當(dāng)然了,“ps -aux | grep vsftpd”中也顯示出vsftpd所使用的配置文件,從中也可以看哪個vsftpd進(jìn)程對應(yīng)哪個FTP服務(wù)器。如果沒有列出配置文件,那就是默認(rèn)的vsftpd.conf,那么該進(jìn)程也就是原來的FTP服務(wù)器進(jìn)程。
由于第3步中虛擬FTP服務(wù)器的配置文件被命名為vsftpd2.conf文件,所以我們可以用/etc/rc.d/init.d/vsftpd腳本同時啟動或關(guān)閉原FTP服務(wù)器和新加的虛擬FTP服務(wù)器。
以下命令單獨啟動虛擬FTP服務(wù)器:
/usr/sbin/vsftpd /etc/vsftpd/vsftpd2.conf &
單獨關(guān)閉虛擬FTP服務(wù)器,用“ps -aux | grep vsftpd”查出進(jìn)程號,再用kill指令殺死虛擬FTP的進(jìn)程。
6.5、虛擬用戶的配置
6.5.1、VSFTPD的虛擬用戶介紹
VSFTPD的本地用戶本身是系統(tǒng)的用戶,除了可以登錄FTP服務(wù)器外,還可以登錄系統(tǒng)使用其他系統(tǒng)資源,而VSFTPD的虛擬用戶則是FTP服務(wù)的專用用戶,虛擬用戶只能訪問FTP服務(wù)器資源。對于只需要通過FTP對系統(tǒng)有讀寫權(quán)限,而不需要其他系統(tǒng)資源的用戶或情況來說,采用虛擬用戶方式是很適合的。
VSFTPD的虛擬用戶采用單獨的用戶名/口令保存方式,與系統(tǒng)賬號(passwd/shadow)分離,這大大增強(qiáng)了系統(tǒng)的安全性。VSFTPD可以采用數(shù)據(jù)庫文件來保存用戶/口令,如hash;也可以將用戶/口令保存在數(shù)據(jù)庫服務(wù)器中,如MySQL等。VSFTPD驗證虛擬用戶,則采用PAM方式。由于虛擬用戶的用戶名/口令被單獨保存,因此在驗證時,VSFTPD需要用一個系統(tǒng)用戶的身份來讀取數(shù)據(jù)庫文件或數(shù)據(jù)庫服務(wù)器以完成驗證,這就是guest用戶,這正如同匿名用戶也需要有一個系統(tǒng)用戶ftp一樣。當(dāng)然,guest用戶也可以被認(rèn)為是用于映射虛擬用戶。
配置虛擬用戶分為幾部分:guest用戶的創(chuàng)建、用戶/口令的保存、PAM認(rèn)證配置、vsftpd.conf文件設(shè)置等。具體的配置方法,參考下面小節(jié)。注:在后面的例子中,假定存在虛擬用戶xiaotong和xiaowang。
6.5.2 用戶創(chuàng)建和目錄設(shè)置
在系統(tǒng)中添加vsftpdguest用戶,作為虛擬用戶在系統(tǒng)中的代表。
useradd vsftpdguest
當(dāng)虛擬用戶登錄后,所在的位置為vsftpdguest的自家目錄/home/vsftpdguest。如果要讓虛擬用戶登錄到/var/ftp等其他目錄,修改vsftpdguest的自家目錄即可。
6.5.3、配置文件的設(shè)置
6.5.3.1、基本設(shè)置。
在vsftpd.conf配置文件中,加入以下參數(shù):
guest_enable=YES
guest_username=vsftpdguest
6.5.3.2、虛擬用戶的權(quán)限配置。
VSFTPD-1.2.0添加了virtual_use_local_privs參數(shù),當(dāng)該參數(shù)激活(YES)時,虛擬用戶使用與本地用戶相同的權(quán)限。當(dāng)此參數(shù)關(guān)閉(NO)時,虛擬用戶使用與匿名用戶相同的權(quán)限,這也就是VSFTPD-1.2.0之前版本對虛擬用戶權(quán)限的處理方法。這兩者種做法相比,后者更加嚴(yán)格一些,特別是在有寫訪問的情形下。默認(rèn)情況下此參數(shù)是關(guān)閉的(NO)。
下面先介紹virtual_use_local_privs=NO時,即VSFTPD-1.2.0之前版本對虛擬用戶權(quán)限的配置方法:
?、倏刂铺摂M用戶瀏覽目錄
如果讓用戶不能瀏覽目錄,但仍可以對文件操作,那么需要執(zhí)行以下二個步驟:一,配置文件中,anon_world_readable_only=YES。二,虛擬用戶目錄的權(quán)限改為只能由vsftpdguest操作:
[root@hpe45 vsftpd]# chown vsftpdguest.vsftpdguest /home/vsftpdguest
相關(guān)文章

集成系統(tǒng)級Claw模式! Deepin 官宣發(fā)布 25.1 版本
deepin操作系統(tǒng)發(fā)布了最新的 25.1 版本更新,該版本基于 deepin 25 正式版積累的多輪內(nèi)測成果,在 AI 能力、內(nèi)核版本、桌面環(huán)境、文件管理器以及系統(tǒng)安全等方面進(jìn)行了更新2026-04-13
又一代老硬件退場! Linux 內(nèi)核正式放棄Intel 486 CPU
在過去的幾十年間,CPU 的架構(gòu)已經(jīng)經(jīng)歷了飛速發(fā)展,x86 系列就是其中之一,而 i486 則屬于該系列中的一個,當(dāng)前,i486 的CPU處理器已經(jīng)夠老,從 Linux 7.1 開始將不再有對2026-04-09
趕緊收藏! 全網(wǎng)最全 Linux 命令總結(jié)
我把 Linux 中最常用、最實用、最常被問到的命令按照實際使用場景分類整理,方便你快速查閱和記憶,內(nèi)容覆蓋日常運維、開發(fā)調(diào)試、性能分析、文件處理、網(wǎng)絡(luò)、安全、系統(tǒng)管2026-04-08
一分鐘內(nèi)檢查Linux服務(wù)器性能? 9個性能檢測常用的基本命令
今天我們來看看Linux系統(tǒng)中用于性能監(jiān)控的一系列命令,這些命令可以快速查看機(jī)器的負(fù)載情況,詳細(xì)請看下文介紹2026-03-18
從零基礎(chǔ)到精通! 適合高級用戶的15款Linux發(fā)行版推薦
Linux作為操作系統(tǒng)領(lǐng)域靈活性和可定制性的基石,提供了大量滿足不同用戶需求的發(fā)行版,今天分享適合高級用戶的15款Linux發(fā)行版2026-03-10
開箱即用? 這4個高手級Linux發(fā)行版遠(yuǎn)沒你想象的那么安全易用
如果你正在糾結(jié)用哪個發(fā)行版?零基礎(chǔ)新手別被“高端”“極客”“聲明式”這些詞沖昏頭腦,先用好用的,再慢慢進(jìn)階2026-03-10
這幾款SSH工具真的夠用了! Linux好用的ssh工具推薦
在Linux上使用SSH,您需要安裝一個SSH客戶端,今天整理找到的8 款 SSH / 終端工具,從免費開源到企業(yè)級商用,從輕量化命令行到一站式工具箱,每款都做了介紹與對比,希望能2026-03-09
在Linux系統(tǒng)下有兩種用戶,即高級用戶root,普通用戶,高級用戶root可以在系統(tǒng)中做任何事情,普通用戶僅可在Linux系統(tǒng)中做有限的事情,下面我們就來看看切換方法2026-02-28
揭秘當(dāng)前登錄用戶的身份! Linux中使用logname命令的技巧
logname命令就是這樣一個簡單但強(qiáng)大的工具,它能幫助我們輕松獲取當(dāng)前登錄用戶的用戶名,今天,我們就來深入探索一下這個命令的工作原理、使用方法和最佳實踐2026-02-26
在 Linux 系統(tǒng)中,DNS 緩存是一種將域名和 IP 地址映射關(guān)系緩存在本地的機(jī)制,可以加快域名解析速度,并減輕 DNS 服務(wù)器的負(fù)載2026-02-26



