PureFTPd是一款專注于程式健壯和軟體安全的免費FTP伺服器軟體(基于BSD License),目前常見的一鍵安裝包,如Oneinstack、lnmp.org、寶塔等服務都已內建PureFTPd服務,可見PureFTPd是一款非常流行的FTP服務軟體。
有些時候我們不需要過多的內建環境,就想簡簡單單的使用FTP服務,可以嘗試自行配置Pure-ftpd,分享一下CentOS 7安裝和配置Pure-ftpd的方法。
安裝Pure-ftpd
#安裝epel源
yum -y install epel-release
#安裝pureftpd
yum -y install pure-ftpd
複制
配置Pure-ftpd
Pure-ftpd預設配置檔案位于
/etc/pure-ftpd/pure-ftpd.conf
,常用的配置如下:
#指定路徑,PureDB使用者資料庫檔案
PureDB /etc/pure-ftpd/pureftpd.pdb
#開啟日志
VerboseLog yes
#拒絕匿名登入
NoAnonymous yes
#使用被動模式,并設定端口範圍
PassivePortRange 30000 50000
複制
建立系統使用者、FTP使用者,配置目錄權限
建立系統使用者的目的主要是讓FTP目錄繼承該使用者權限,下方指令添加了一個
www
使用者和一個
www
使用者組,使用者、使用者組請根據實際情況來建立。
#建立www使用者組
groupadd www
#建立一個www使用者
useradd -g www -s /sbin/nologin -d /dev/null www
複制
接下來建立FTP虛拟使用者,也就是經常用到的FTP賬号啦:
#建立一個FTP目錄
mkdir -p /data/wwwroot/ftp
#設定目錄權限
chown -R www:www /data/wwwroot/ftp
#建立一個FTP使用者xiaoz
pure-pw useradd xiaoz -u www -d /data/wwwroot/ftp -m
複制
解釋一下
pure-pw useradd xiaoz -u www -d /data/wwwroot/ftp -m
這一行的作用:
-
:添加一個FTP使用者pure-pw useradd xiaoz
xiaoz
-
:指定系統使用者為www-u www
-
:指定FTP路徑-d /data/wwwroot/ftp
-
:将使用者資訊寫入pureftpd.pdb資料庫-m
放行端口
FTP預設使用21端口,同時我們配置了被動端口(30000-50000),是以需要在防火牆或安全組放行這些端口,下方是firewalld放行端口方法,如果是iptables請參考:iptables防火牆,常用規則整理
#放行21端口
firewall-cmd --zone=public --add-port=21/tcp --permanent
#放行30000-50000端口範圍
firewall-cmd --zone=public --add-port=30000-50000/tcp --permanent
#重載firewalld
firewall-cmd --reload
複制
啟動Pure-ftpd
要啟動Pure-ftpd直接執行
systemctl start pure-ftpd
指令,一些常用的操作指令如下。
#啟動pure-ftpd
systemctl start pure-ftpd
#設定開機啟動
systemctl enable pure-ftpd
#停止pure-ftpd
systemctl stop pure-ftpd
#禁止開機啟動
systemctl disable pure-ftpd
複制
如果需要擷取pure-ftpd的使用方法可以輸入
pure-pw -h
檢視幫助。
驗證
輸入指令
netstat -apn|grep 'pure-ftpd'
可以檢視Pure-ftpd是否正常監聽,如果監聽成功,可使用FTP用戶端(如Filezilla)進行連接配接,來確定上傳、下載下傳沒有問題。
其它
由xiaoz開發的ImgURL Pro專業版圖床程式支援FTP上傳圖檔,有需要的可以通路:https://www.xiaoz.me/archives/13225 檢視,目前6折促銷中。
此文部分内容參考了:CentOS7 YUM 安裝 Pure-ftpd