pureftpd使用詳解

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0


 
 目錄:
 一、安裝
 二、啟動
 三、匿名登錄
 
  
 
 一、安裝
 我是以FreeBSD為平台的,其它Unix/Linux平台請參考相關shell命令。在shell提示符下輸入:
 
 # cd /usr/ports/ftp/pure-ftpd
 
 # make install clean
 
 # rehash
 
 FreeBSD會以ports方式安裝pureftpd。其它平台的安裝方法參看相關文章。
 
 
 
 
 
 二、啟動
 將配置文件的樣例文件複製為配置文件:
 
 # cp /usr/local/etc/pure-ftpd.conf.sample /usr/local/etc/pure-ftpd.conf
 
 用配置文件啟動 PureFTPd :
 
 # /usr/local/sbin/pure-config.pl /usr/local/etc/pure-ftpd.conf
 
 
 
 注意:如果是其它平台,或者採用編譯方式安裝,路徑可能與上面的不同。
 
 
 
 
 
 
 
 三、匿名登錄
 用 flashfxp 連接,只能系統用戶連接(用「/etc/passwd」文本文件中的用戶認證)。 這是因為默認的配置文件中是允許匿名用戶和系統用戶(根帳號 root 除外)都可以訪問的。但這時匿名用戶還無法訪問,出現「421 無法建立安全匿名 FTP」錯誤。還需要幾個步驟才能實現匿名登錄。
 
 pureftpd 的官方文件(http://download.pureftpd.org/pub/pure-ftpd/doc/README)說:
 
 ------------------------ SETTING UP AN ANONYMOUS FTP ------------------------
 
 If a 'ftp' user exists and its home directory is reachable, Pure-FTPd will
 accept anonymous login, as 'ftp' or 'anonymous'. Files have to be located in
 the home FTP directory. There's no need for 'bin', 'lib', 'etc' and 'dev'
 directories, nor any external program. Don't chown the public files to
 'ftp', just writable directories ('incoming') .
 
 就是說需要存在一個名稱必須為「ftp」的系統用戶,並且它的主目錄可用。就可以實現匿名用戶登錄了。
 
 
 
 心得:很多人在問為什麼不能匿名登錄,原因就在於沒有「ftp」系統帳號,以及沒有創建主目錄。
 
 
 
 
 1、為匿名用戶添加系統帳號和組。
 
 增加一個「ftp」組:
 
 # pw groupadd ftp
 
 如果組存在,直接添加用戶即可。
 
 添加「ftp」系統用戶:
 
 # pw useradd ftp -g 14 -d /var/ftp -s /sbin/nologin
 
 其中的 「/var/ftp」就是匿名用戶的主目錄,你可以指定為其它目錄,比如「/home/ftp」等。
 
 14是「ftp」組的組id 。其它的 www 系統用戶的 uid/gid 是:「80/80」,等等(見 /etc/passwd )。
 
 如果發現帳號是存在的,那麼請檢查帳號的主目錄是否存在,如果不存在,也會提示上述錯誤。
 
 
 
 2、建立匿名用戶的主目錄。
 
 # mkdir /var/ftp
 
 # mkdir /var/ftp/readme
 
 其中「mkdir /var/ftp/readme」是給個參照,因為「/var/ftp」是空的。
 
 3、測試。
 
 馬上用 flashfxp 匿名登錄,見到 readme 文件夾了,成功,激動!但是上傳、下載、建目錄什麼的都不允許,要實現這些功能需要進一步修改配置文件,這個在我後續文章中有詳細講解。
 
 
 
 
 
 
 
 ~ 全文完~
 
 
 
 
 
           印第安
 
       2008年10月11日15:44:17 v1.0 初稿
 
       2008年10月11日18:56:40 更新
 
       2008年10月11日19:09:57 更新
 
       2008年10月11日21:13:46 更新
 
       2008年10月13日20:36:10 v1.1 更新,添加虛擬用戶認證。
 
       2008年10月14日15:12:47 更新,排版美化。
 
       2008年10月15日14:15:21 更新
 
       2008年10月16日13:40:00 更新
 
       2008年10月16日19:05:06 v1.2 更新,加入 pure-pw 語法。
 
       2008年10月17日14:48:59 更新
 
       2009年7月25日15:01:17 更新為1.3
 
 
 
 
 
 ( 聲明:原創文章,未經授權,不得轉載。作者:印第安 http://blog.kysf.net )

[ 本帖最後由 wolfg 於 2009-8-20 17:46 編輯 ]

《解決方案》

 

[原創]FreeBSD學習筆記18-pureftpd使用詳解(2)-用shell用戶或虛擬用戶登錄pureftpd

  排版美觀的版本,請看我博客中的日誌,出處哪裡的鏈接即是。
 
 
 
 ( 聲明:原創文章,未經授權,不得轉載。作者:印第安 http://blog.kysf.net )
 
 
 
 作者:indian
 
 版本:v1.3
 
 出處:http://indian.blog.163.com/blog/static/1088158200891621053789
 
 版權:作者保留對本文的一切修改、發布等權力。任何人未經允許不得轉載或複製本文部分或全部內容。
 
 
 
 關鍵詞:ftp, pureftpd, pureftpd虛擬用戶
 
 
 
 摘要:講解了Unix系統下pureftpd如何用shell用戶登錄,以及如何用虛擬用戶登錄。
 
 
 
 目錄:
 一、系統真實(shell)用戶登錄
 二、puredb虛擬用戶支持
 三、技巧
 
 
 
 ------------------------------------------------------------------分 割 線-----------------------------------------------------------------
 
 
 
 一、系統真實(shell)用戶登錄
 默認配置文件允許匿名用戶登錄,同時允許系統真實用戶登錄。經過上面的步驟后(詳情見我的前一篇文章《pureftpd基礎:安裝、配置、實現匿名登錄》),這時我們用系統用戶登錄,是可以登錄,並且可以上傳、下載、建目錄和刪除等。
 
 如果要讓 FTP 只支持系統真實用戶登錄,你只要稍微修改一下 pureftpd 的配置文件就可以了。
 
 # ee /usr/local/etc/pure-ftpd.conf
 
 ChrootEveryone yes
 
 NoAnonymous  yes
 
 UnixAuthentication yes //用「/etc/passwd」中的用戶認
 
 只需以上三行就可以實現只允許系統真實用戶登錄 FTP 。系統真實用戶會登陸到自己的系統主目錄中,可下載,可上傳,可刪除,沒有任何限制。但是由於有 chroot 的限制,所以無法去真實系統的其它目錄而已。在實際應用中,這種用法並不多見,我也就不費篇幅介紹了。
 
 
 
 
 
 
 
 二、puredb虛擬用戶支持
 1、建立 FTP 專用的系統用戶。
 
 自從 0.99.2  版本開始,pure-ftpd 就開始支持虛擬用戶。
 
 虛擬用戶方式是一個簡單的用戶列表機制,類似於「/etc/passwd」,它將用戶的相關信息,如口令、姓名、 uid、gid、主目錄等,存入一個文本文件。但是該文本文件文件只適用於 FTP 。這意味著,你可以很容易地設置 FTP 虛擬帳號,而不需要在系統中添加系統用戶,以免和系統用戶混淆在一起。
 
 同時,可以為這些虛擬用戶單獨設置配額、ratio、帶寬等限制,這些功能是系統用戶認證無法實現的。很多虛擬用戶可以共享同一個系統用戶的屬性,因此建議為這些虛擬用戶單獨創建一個系統用戶,從而方便管理。
 
 你可以使用系統已經存在的帳號,比如「nobody」用戶,作為虛擬用戶的系統帳號。但最好使用一個單獨的帳號,專門對應 FTP 。我們選擇新建系統用戶(經測試,在 linux 系統中如果用 linux 系統自帶的 ftp 用戶,在用虛擬用戶登陸時會出現不被信任的提示。大家也可以做做實驗,看是不是這樣)。建立方法如下:
 
 對於 Linux/OpenBSD/NetBSD/Solaris/HPUX/ 或其它的類 Unix 系統,使用下面的命令:
 
 groupadd ftpgroup
 
 useradd -g ftpgroup -d /home/ftp -s /sbin/nologin ftpuser
 
 對於 FreeBSD ,用下面的命令:
 
 # pw groupadd ftpgroup
 
 # pw useradd ftpuser -g ftpgroup -d /home/ftp -s /sbin/nologin
 
 系統帳號建立好后,我們就開始著手準備虛擬用戶了。
 
 
 
 
 
 2、建立虛擬用戶。
 
 使用 」pure-pw」命令實現創建、修改和刪除虛擬用戶等操作。虛擬用戶的信息以每個用戶一行的方式存放在相應的文本文件中。你也可以手工編輯這個文件。其存儲格式如下:
 
 

:::::::::::::::::




[火星人 ]

來源:
連結:http://indian.blog.163.com/blog/static/1088158200891134536877
pureftpd使用詳解已經有532次圍觀

http://coctec.com/docs/service/show-post-14077.html