vsftpd 配置

0、關(guān)于本文檔
本文檔是個(gè)人的學(xué)習(xí)整理。允許大家翻閱,摘抄,引用。更歡迎指出其中不對(duì)之處。文檔的內(nèi)容主要來自VSFTPD自身文檔、個(gè)人學(xué)習(xí)心得以及網(wǎng)絡(luò)資料,若有類同,實(shí)屬正常,∶)。
本文檔基于RedHat Linux 9和VSFTPD-1.1.3-8。如果有不同版本,則有專門文字說明。
1、VSFTPD簡(jiǎn)述
如果試問哪種FTP服務(wù)器最安全?那么在UNIX和Linux中,首推的就是VSFTP(Very Secure FTP Daemon,非常安全的FTP服務(wù)器)。顧名思義,VSFTPD設(shè)計(jì)的出發(fā)點(diǎn)就是安全性。同時(shí)隨著版本的不斷升級(jí),VSFTPD在性能和穩(wěn)定性上也取得了極大的進(jìn)展。象RedHat、SUSE、Debian、GNU、GNOME、KDE等一些大型站點(diǎn)都采用VSFTPD作為它們的FTP服務(wù)器。大家可以到http://vsftpd.beasts.org/了解它的最新情況。
2、VSFTPD的安裝
2.1、RHL9+vsftpd-.1.1.3-8.i386.rpm包的安裝
VSFTPD的安裝很簡(jiǎn)單。在RHL9中,在圖形界面下依次執(zhí)行“Main Menu”-“System Settings”-“Add/Remove Applications”-選擇FTP服務(wù)器-“更新”,或者在字符界面中執(zhí)行以下命令,就可以完成安裝。
rpm -ivh vsftpd-1.1.3-8.i386.rpm
2.2、vsftpd-1.2.0.tar.gz的安裝
?、艤?zhǔn)備條件
VSFTPD默認(rèn)配置中需要“nobody”用戶。在系統(tǒng)中添加此用戶,如果用戶已經(jīng)存在,useradd命令有相應(yīng)提示。
[root@hpe45 root]# useradd nobody
useradd: user nobody exists
VSFTPD默認(rèn)配置中需要“/usr/share/empty”目錄。在系統(tǒng)中此目錄,如果目錄已經(jīng)存在,mkdir命令有相應(yīng)提示。
[root@hpe45 root]# mkdir /usr/share/empty/
mkdir: cannot create directory '/usr/share/empty': File exists
VSFTPD提供匿名FTP服務(wù)時(shí),需要“ftp”用戶和一個(gè)有效的匿名目錄。
[root@hpe45 root]# mkdir /var/ftp/
[root@hpe45 root]# useradd -d /var/ftp ftp
接下來的操作對(duì)于ftp用戶是否已經(jīng)存在都是有用的。
[root@hpe45 root]# chown root.root /var/ftp
[root@hpe45 root]# chmod og-w /var/ftp
?、凭幾gVSFTPD
從官方站點(diǎn)下載到/root目錄,執(zhí)行以下命令:
[root@hpe45 root]# tar zxvf vsftpd-1.2.0.tar.gz
[root@hpe45 root]# cd vsftpd-1.2.0
[root@hpe45 vsftpd-1.2.0]# make
⑶安裝編譯好的VSFTPD
執(zhí)行“make install”將編譯好的二進(jìn)制文件、手冊(cè)等復(fù)制到相應(yīng)目錄。在RHL9上,可能需要手動(dòng)執(zhí)行以下復(fù)制:
[root@hpe45 vsftpd-1.2.0]# cp vsftpd /usr/local/sbin/vsftpd
[root@hpe45 vsftpd-1.2.0]# cp vsftpd.conf.5 /usr/local/share/man/man5
[root@hpe45 vsftpd-1.2.0]# cp vsftpd.8 /usr/local/share/man/man8
此外,“make install”沒有復(fù)制簡(jiǎn)單的配置文件,建議執(zhí)行以下命令:
[root@hpe45 vsftpd-1.2.0]# cp vsftpd.conf /etc
⑷為本地用戶設(shè)置PAM
如果允許本地用戶登錄VSFTPD,執(zhí)行以下操作:
[root@hpe45 vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
3、VSFTPD的文件結(jié)構(gòu)
VSFTPD的文件結(jié)構(gòu)是很簡(jiǎn)潔的,主要包括:
/usr/sbin/vsftpd ---- VSFTPD的主程序
/etc/rc.d/init.d/vsftpd ---- 啟動(dòng)腳本
/etc/vsftpd/vsftpd.conf ---- 主配置文件
/etc/pam.d/vsftpd ---- PAM認(rèn)證文件
/etc/vsftpd.ftpusers ---- 禁止使用VSFTPD的用戶列表文件
/etc/vsftpd.user_list ---- 禁止或允許使用VSFTPD的用戶列表文件
/var/ftp ---- 匿名用戶主目錄
/var/ftp/pub ---- 匿名用戶的下載目錄
此外,還有一些說明文檔和手冊(cè)文件。
此外VSFTPD的日志文件位于/etc/logrotate.d/vsftpd.log。
4、VSFTPD的啟動(dòng)與停止
VSFTPD可以單獨(dú)(Standalone)方式運(yùn)行,如同httpd、named這類的服務(wù)器的運(yùn)行方式,這是RHL9中默認(rèn)的方式;也可以采用xinetd方式運(yùn)行,這是RHL7.x、8中的默認(rèn)方式。具體的運(yùn)行方式由參數(shù)listen決定。從RHL中VSFTPD的運(yùn)行方式,也可以看出VSFTPD的逐步發(fā)展。
當(dāng)listen參數(shù)值為YES時(shí),RHL9中的默認(rèn)值,VSFTPD單獨(dú)運(yùn)行,我們可以使用腳本/etc/rc.d/init.d/vsftpd來啟動(dòng)、關(guān)閉以及重啟VSFTPD。命令如下:
/etc/rc.d/init.d/vsftpd start|stop|restart
如果說在RHL9上,您還希望使用Xinetd啟動(dòng)VSFTPD的運(yùn)行方式,那么首先要將vsftpd.conf配置文件中的listen參數(shù)值改為NO。其次,生成一個(gè)/etc/xinetd.d/vsftpd文件,內(nèi)容如下:
service vsftpd
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
port = 21
log_on_success += PID HOST DURATION
log_on_failure += HOST
}
通過修改disable值為no或yes,并重新啟動(dòng)xinetd,從而啟動(dòng)或停止VSFTPD。
由于VSFTPD的單獨(dú)模式已經(jīng)擁有足夠的能力,所以后面6中討論到的應(yīng)用,都是以單獨(dú)模式來運(yùn)行的,而非Xinetd方式。
注:還可以直接執(zhí)行vsftpd來啟動(dòng)FTP服務(wù),關(guān)閉時(shí)使用“kill”命令。
[root@hpe45 root]# /usr/local/sbin/vsftpd &
5、VSFTPD的設(shè)置選項(xiàng)
VSFTPD的配置文件/etc/vsftpd/vsftpd.conf是個(gè)文本文件。以“#”字符開始的行是注釋行。每個(gè)選項(xiàng)設(shè)置為一行,格式為“option=value”,注意“=”號(hào)兩邊不能留空白符。除了這個(gè)主配置文件外,還可以給特定用戶設(shè)定個(gè)人配置文件,具體介紹見后。
VSFTPD包中所帶的vsftpd.conf文件配置比較簡(jiǎn)單,而且非常偏執(zhí)狂的(文檔自稱:-))。我們可以根據(jù)實(shí)際情況對(duì)其進(jìn)行一些設(shè)置,以使得VSFTPD更加可用。
5.1、連接選項(xiàng)
相關(guān)文章
Fedora Linux 42 穩(wěn)定版發(fā)布: 帶來大量新功能和軟件更新
Fedora 42昨日發(fā)布,這是 Red Hat 贊助開發(fā)的杰出前沿 Linux 發(fā)行版的最新版,包含大量新功能和軟件更新,使其成為 2025 年上半年發(fā)布的一款出色的 Linux 操作系統(tǒng)之一,內(nèi)2025-04-16如何在Linux查看硬盤信息? 查看Linux硬盤大小類型和硬件信息的5種方法
使用Linux系統(tǒng)的過程中,查看和了解硬盤信息是非常重要的工作,尤其是對(duì)于系統(tǒng)管理員而言,那么在Linux系統(tǒng)中如何查看硬盤信息?以下是具體內(nèi)容介紹2025-03-12如何在 Linux 中查看 CPU 詳細(xì)信息? 3招輕松查看CPU型號(hào)、核心數(shù)和溫度
在日常運(yùn)維工作中,獲取 CPU 信息是系統(tǒng)運(yùn)維管理員常見的工作內(nèi)容,無論是為了性能調(diào)優(yōu)、硬件升級(jí)還是僅僅滿足好奇心2025-03-11什么是 Arch Linux? 獨(dú)樹一幟的Arch Linux發(fā)行版分析
Arch Linux是為簡(jiǎn)化,優(yōu)化,現(xiàn)代化,實(shí)用主義,用戶中心和多功能性而創(chuàng)建Linux發(fā)行版,究竟是什么讓 Arch 與眾不同?下面我們就來簡(jiǎn)要解讀2025-02-19如何在Linux環(huán)境下制作 Win11裝機(jī)U盤?
一直用的linux辦公,想要將筆記本電腦從 Linux 系統(tǒng)切換回 Windows 11,我們可以制作一個(gè)win11裝機(jī)u盤,詳細(xì)如下2025-02-17Rsnapshot怎么用? 基于Rsync的強(qiáng)大Linux備份工具使用指南
Rsnapshot 不僅可以備份本地文件,還能通過 SSH 備份遠(yuǎn)程文件,接下來詳細(xì)介紹如何安裝、配置和使用 Rsnapshot,包括創(chuàng)建每小時(shí)、每天、每周和每月的本地備份,以及如何進(jìn)2025-02-06Linux Kernel 6.13發(fā)布:附更新內(nèi)容及新特性解讀
Linux 內(nèi)核 6.13 正式發(fā)布,新版本引入了惰性搶占支持,簡(jiǎn)化內(nèi)核搶占邏輯,通過減少與調(diào)度器相關(guān)的調(diào)用次數(shù),讓內(nèi)核在運(yùn)行時(shí)表現(xiàn)更優(yōu),從而提高效率2025-01-23五大特性引領(lǐng)創(chuàng)新! 深度操作系統(tǒng) deepin 25 Preview預(yù)覽版發(fā)布
今日,深度操作系統(tǒng)正式推出deepin 25 Preview版本,該版本集成了五大核心特性:磐石系統(tǒng)、全新DDE、Treeland窗口合成器、AI For OS以及Distrobox子系統(tǒng)2025-01-18Linux Mint Xia 22.1重磅發(fā)布: 重要更新一覽
Beta 版 Linux Mint“Xia” 22.1 發(fā)布,新版本基于 Ubuntu 24.04,內(nèi)核版本為 Linux 6.8,這次更新帶來了諸多優(yōu)化和改進(jìn),進(jìn)一步鞏固了 Mint 在 Linux 桌面操作系統(tǒng)領(lǐng)域的2025-01-16LinuxMint怎么安裝? Linux Mint22下載安裝圖文教程
Linux Mint22發(fā)布以后,有很多新功能,很多朋友想要下載并安裝,該怎么操作呢?下面我們就來看看詳細(xì)安裝指南2025-01-16