您好,登錄后才能下訂單哦!
小編給大家分享一下在Ubuntu中pure-ftpd是什么樣,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Pureftpd是一款快速,高質量,功能齊全的ftp服務器,最重要的是可以支持設置客戶端默認編碼,Ubuntu Server 10.04下pure-ftpd的配置過程如下。
在Ubuntu中pure-ftpd是什么樣
Ubuntu/Debian 提供了三個不同的 Pure-FTPd 的 deb 安裝包,分別是 pure-ftpd、pure-ftpd-ldap 和 pure- ftpd-mysql,其中 ldap 和 mysql 分別表示 Pure-FTPd 跟 ldap 和 mysql 集成,另外這三個包都依賴于 pure-ftpd-common。如果我們不需要 ldap 和 mysql 的話,選擇 pure-ftpd 就可以了。
配置方式
不同于其他的多數守護進程(daemon),Pure-FTPd 的配置比較特別:它不讀取任何的配置文件,配置選項都是通過命令行參數來實現的。例如:參數 '-H' 被設計為通過避免 DNS 查詢來加快服務器的速度。要啟用該特性,我們只需要將其加到命令行中: pure-ftpd -H 。備選的長參數也被支持的,下面是一個等價的命令 pure-ftpd --dontresolve
針對喜歡配置文件的用戶,Pure-FTPd 官方給出了一種方案:通過一個封裝(wrapper)工具,將配置文件解析并將其轉換成命令行參數。首先根據自己的需要編輯配置文件 pure-ftpd.conf,而后通過下面的命令啟動 pure-config.pl /etc/pure-ftpd.conf。pure-config.pl 是一個 perl 腳本,它根據配置文件采用合適的命令行選項來調用 pure-ftpd。
在 Ubuntu/Debian 中,開發人員采用了另外的一種 wrapper 方式:它沒有采用單一的配置文件,而是在/etc下建立一個pure-ftpd的目錄,其下又有 conf、auth、db 這三個目錄和一個名為 pureftpd-alias-dir 的文件。每一個配置選項都以一個文件的形式存在于 /etc/pure-ftpd/conf 目錄中,而且是以選項為文件名,選項值為文件內容。例如如果想配置AnonymousOnly=yes(只允許匿名用戶),則在 /etc/pure-ftpd/conf 中創建一個名為 AnonymousOnly 的文件,里面只有一行內容:yes。
在 Ubuntu 中,我們只關注***一種配置方式。
環境:
1,在一臺Ubuntu server 10.4 服務器上安裝pure-ftpd配置成FTP服務器
2,在客戶端上用FileZilla Client登錄測試
操作:
1,安裝pure-ftpd
#sudo apt-get install pure-ftpd
#sudo netstat –nl
查看21端口是否已開啟。
2,在FileZilla Client用本地一賬號登錄,會 出現如下錯誤
解決:在/etc/pure-ftpd/conf下創建DontResolve文件內容為yes,即可解決。這時本地賬戶已經可以使用FTP服務了。
3,利用虛擬賬戶的方式管理用戶。
(1)手動創建主目錄
#sudo mkdir /var/ftp #sudo mkdir /var/ftp/js
(2)創建組及用戶
#sudo groupadd ftpadmins #sudo groupadd ftpusers #sudo useradd –g ftpadmins –d /dev/null –s /bin/false ftpadmin #sudo useradd –g ftpusers –d /dev/null –s /bin/false js
(3)改變相應的訪問權限
#sudo chown –R ftpadmin /var/ftp/ #sudo chmod -R 775 /var/ftp/js
*:為了防止同組中的一個用戶刪除另一個用戶的文件作以下設置
在/etc/pure-ftpd/conf下建KeepAllFiles文件內容為yes #禁止用戶刪除文件,TrustedGID組中的除外
在/etc/pure-ftpd/conf下建TrustedGID文件內容為2002 #管理員組ftpadmins的GID,允許管理員刪除文件,此處的2002是ftpadmins的GID
(4)增加虛擬用戶
#sudo pure-pw useradd admin –u ftpadmin –d /var/ftp #sudo pure-pw useradd js001 –u js –d /var/ftp/js
這時會在/etc/pure-ftpd/下新增pureftpd.passwd及pureftpd.pdb兩個文件
#sudo pure-pw list #sudo pure-pw show js001
用以上兩個命令查看相應用戶信息,更多的pure-pw用法可以 man pure-pw查看
(5)使虛擬用戶生效
#sudo pure-pw mkdb
(6)使用pureDB驗證方式,如果沒有以下步驟,虛擬用戶是無法登錄的,會出現530的錯誤信息。
#cd /etc/pure-ftpd/auth #sudo ln –s ../conf/PureDB 60puredb
(7)重啟pure-ftpd服務
#sudo /etc/init.d/pure-ftpd restart
總結:pure-ftpd配置完成了,簡單的一個FTP搭建起來了。
可是權限問題來了,在pure-ftpd的配置中沒有看到嚴格的權限設置,相關的有:
1,如果你的 pure-ftpd 編譯時加入了 pure-uploadscript 支持,這個指令將會使 pure-ftpd
發送關于新上傳的情況信息到 /var/run/pure-ftpd.upload.pipe,這樣 pure-uploadscript
就能讀然后調用一個腳本去處理新的上傳。
在/etc/pure-ftpd/conf下建CallUploadScript內容為 yes 就會在/var/run下產生pure-ftpd.upload.pipe,pure-ftpd.upload.lock
這個方法我還沒試用。
2,KeepAllFiles=yes #禁止用戶刪除文件,TrustedGID組中的除外
TrustedGID=1001 #管理員組ftpadmins的GID,允許管理員刪除文件
ChrootEveryone=yes #把所有用戶限制在其homedir下
3,把虛擬用戶映射到不同的本地用戶上,這樣就可控制權限了。缺點是要建不同本地組和用戶。
以上是“在Ubuntu中pure-ftpd是什么樣”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。