Linux FTP 虛擬用戶linux
一:介紹用虛擬用戶登錄的好處數據庫
FTP 好多時候能夠用虛擬用戶來登錄,爲何要使用虛擬用戶???
ubuntu
匿名賬戶能夠很好的保證FTP服務器的安全性,可是,對匿名用戶的權限管理不夠靈活.若是想對訪問FTP的賬戶給予更多的權限,就能夠用本地賬戶來 實現.可是,本地賬戶默認狀況下是能夠登錄Linux系統的,這樣對Linux系統來講是一個安全隱患.那麼怎麼能在靈活的賦予FTP用戶權限的前提下, 保證FTP服務器乃至整個Linux系統的安全呢?使用虛擬用戶就是一種解決辦法.vim
下面,咱們就一塊兒來學習,該怎樣在Linux下配置FTP服務器的虛擬用戶.
centos
開始配置前,讓咱們先大概瞭解下FTP虛擬用戶的工做原理:安全
虛擬用戶,顧名思義,並非一個合法的Linux系統賬戶,可是他能夠用來登錄該系統上運行的FTP服務器.服務器
當用戶在鏈接上FTP服務器後,會被要求輸入用戶名和密碼.FTP服務器在拿到這個用戶名和密碼後,會調用相應的PAM認證模塊對,和系統中的 FTP認證文件進行相比較.若是該用戶名和密碼與FTP認證文件中的某條記錄相符,就經過認證,而後該賬戶就被映射成一個Linux下的本地賬戶,而後根 據使用該本地賬戶對FTP資源進行訪問.不然則斷開該鏈接請求.,瞭解了FTP虛擬用戶的工做原理後,咱們就能夠開始配置FTP虛擬用戶了.ide
2、安裝虛擬用戶學習
最簡單的辦法就是yum安裝:測試
安裝:yum install pure-ftpd -y
啓動:/etc/init.d/pure-ftpd start
修改配置文件:
vim /etc/pure-ftpd/pure-ftpd.conf
註釋打開
#PureDB /etc/pure-ftpd/pureftpd.pdb
其中stevenhu是虛擬用戶名,-u是設置使用哪一個系統用戶,-d是設置ftp目錄
建立用戶:pure-pw useradd stevenhu -u nobody -g nobody -d /data/steven
執行改命令後,會提示兩次輸入密碼。而後使用下面的命令生成數據庫
pure-pw mkdb (不可忘記)
重啓pure-ftpd: /etc/init.d/pure-ftpd restart
3、測試
測試的時候發現報530,認證錯誤
查看日誌
最後通過查證:MinUID 500
1. 將配置文件的MinUID設置成48,保存重啓pure-ftpd
2. 建立新ftp用戶,uid大於500的,從新分配虛擬用戶uid和gid
修改配置文件以後,重啓服務,從新登錄ok
4、ubuntu 安裝
ubuntu安裝與centos有一些區別,再也不詳細介紹,請參考下面連接
5、創建虛擬用戶
建立用戶:
pure-pw useradd user1 -u nobody -g nogroup -d /data/ftp/user1dir
生成數據文件:
pure-pw mkdb
pure-pw useradd 添加用戶
pure-pw userdel 刪除用戶
pure-pw usermod 修改用戶
pure-pw show 查看用戶詳細信息
pure-pw list 查看全部用戶設置
pure-pw mkdb 生成數據文件