vsftp服務簡單配置!

1.vsftpd 服務軟件包
vsftpd-2.0.5-10.el5.i386.rpm:vsftpd 主程序包
2.vsftpd 相關文檔
/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件
/etc/vsftpd/ftpusers:用於指定哪些用戶不能訪問FTP 服務器
/etc/vsftpd/user_list:指定允許使用 vsftpd 的用戶列表文件
/etc/vsftpd/vsftpd_conf_migrate.sh:是 vsftpd 操作的一些變量和設置腳本 /var/ftp/:默認情況下匿名用戶的根目錄

(1)配置 vsftpd.conf 主配置文件(服務器配置支持上傳)
允許匿名用戶訪問
anonymous_enable=YES
允許匿名用戶上傳文件並可以創建目錄
anon_upload_enable=YES  
anon_mkdir_write_enable=YES

大家注意,默認匿名用戶家目錄的權限是 755,這個權限是不能改變的。切記!切記!!



2FTP 常規配置應用案例:
需求:
公司內部現在有一臺FTP和 WEB 服務器,FTP 的功能主要用於維護公司的網站內容,包括上傳文件、創建目錄、更新網頁等等哈~公司現有兩個部門負責維護任務,他們分別適用 team1和team2帳號進行管理。先要求僅允許 team1和team2 帳號登錄 FTP 服務器,但不能登錄本地系統,並將這兩個帳號的根目錄限制爲/var/www/html,不能進入該目錄以外的任何目錄。
分析:
將 FTP和 WEB服務器做在一起是企業經常採用的方法,這樣方便實現對網站的維護,爲了增強安全性,首先需要使用僅允許本地用戶訪問,並禁止匿名用戶登錄。其次使用chroot 功能將team1和 team2 鎖定在/var/www/html目錄下。如果需要刪除文件則還需要注意本地權限~
解決方案:
(1)建立維護網站內容的 ftp 帳號 team1 和team2 並禁止本地登錄,然後設置其密碼
useradd -s /sbin/nologin 用戶名
(2)配置 vsftpd.conf 主配置文件並作相應修改
vim /etc/vsftpd/vsftpd.conf  
anonymous_enable=NO:禁止匿名用戶登錄
local_enable=YES:允許本地用戶登錄
local_root=/var/www/html:設置本地用戶的根目錄爲/var/www/html  
chroot_list_enable=YES:激 chroot 功能  
chroot_list_file=/etc/vsftpd/chroot_list:設置鎖定用戶在根目錄中的列表文件
(3)建立/etc/vsftpd/chroot_list 文件,添加team1 和team2 帳號 touch /etc/vsftpd/chroot_list
(6)修改本地權限
chmod -R o+w /var/www/html

(7)測試
3企業環境
公司爲了宣傳最新的產品信息,計劃搭建FTP服務器,爲客戶提供相關文檔的下載。對所有權互聯網開放共享目錄,允許下載產品信息,禁止上傳。公司的合作單位能夠使用 FTP服務器進行上傳和下載,但不可以刪除數據。並且保證服務器的穩定性,進行適當優化設置哈~ 需求分析
根據企業的需求,對於不同用戶進行不同的權限限制,FTP服務器需要實現用戶的審覈。需考慮到服務器的安全性,所以關閉實體用戶登錄,使用虛擬帳號驗證機制,並對不同虛擬帳號設置不同的權限。爲了保證服務器的性能,還需要根據用戶的等級,限制客戶端的連接數及下載速度。  
解決方案
1、創建用戶數據庫
(1)創建用戶文本文件
先建立用戶文本文件vsftpd_virtualuser.txt,添加兩個虛擬帳號,公共帳號ftp 及客戶帳號vip
touch /etc/vsftpd/vsftpd_virtualuser.txt
vim /etc/vsftpd/vsftpd_virtualuser.txt
格式:
虛擬帳號 1
密碼
虛擬帳號 2
密碼
(2)生成數據庫
保存虛擬帳號和密碼的文本文件無法被系統帳號直接調用哈~我們需要使用db_load命令生成db數據庫文件
db_load -T -t hash -f /etc/vsftpd/vsftpd_virtualuser.txt
/etc/vsftpd/vsftpd_virtualuser.db
注意:
rhel5 默認只安裝db4-4.3.29-9.fc6.i386.rpm 和db4-devel-4.3.29-9.fc6.i386.rpm, 要使用db_load 需要將db4-utils-4.3.29-9.fc6.i386.rpm 包安裝上哈~否則會出現下圖的錯誤:找不到 db_load 命令。
(3)修改數據庫文件訪問權限
數據庫文件中保存着虛擬帳號的密碼信息,爲了防止非法用戶盜取哈,我們可以修改該文件的訪
問權限。生成的認證文件的權限應設置爲只對root 用戶可讀可寫,即 600
chmod 600 /etc/vsftpd/vsftpd_virtualuser
2、配置PAM 文件
爲了使服務器能夠使用數據庫文件,對客戶端進行身份驗證,需要調用系統的 PAM模塊.PAM(Plugable  Authentication  Module)爲可插拔認證模塊,不必重新安裝應用系統,通過修改指定的配置文件,調整對該程序的認證方式。PAM模塊配置文件路徑爲/etc/pam.d/目錄,此目錄下保存着大量與認證有關的配置文件,並以服務名稱命名。
修改vsftpd對應的PAM 配置文件/etc/pam.d/vsftpd,將默認配置使用“#”全部註釋,添加相應字段。
auth   required  /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_virtualuser
Accout
required
/lib/security/pam_userdb.sodb=/etc/vsftpd/vsftpd_virtualuser
3、創建虛擬帳號對應的系統用戶
對於公共帳號和客戶帳號,因爲需要配置不同的權限,所以可以將兩個帳號的目錄進行隔離,控制用戶的文件訪問。公共帳號 ftp 對應系統帳號ftpuser,並指定其主目錄爲/var/ftp/share,而客戶帳號vip 對應系統帳號ftpvip,指定主目錄爲/var/ftp/vip
chmod -R 500 /var/ftp/share/ :公共帳號ftp只允許下載,修改 share目錄其他用戶權限爲
rx 可讀可執行。  
chmod -R 700  /var/ftp/vip/ : 客戶帳號vip允許上傳和下載, 所以對 vip 目錄權限設置爲 rwx,可讀可寫可執行。  
Useradd -d /var/ftp/share/ftpuser
Useradd -d /var/ftp/vip/ftpvip
Chmod  -R 500 /var/ftp/share
Chmod  -R 700 /var/ftp/vip
4、建立配置文件
設置多個虛擬帳號的不同權限,若使用一個配置文件無法實現此功能,需要爲每個虛擬帳號建立獨立的配置文件,並根據需要進行相應的設置。
(1)修改 vsftpd.conf 主配置文件
配置主配置文件/etc/vsftpd/vsftpd.conf添加虛擬帳號的共同設置並添加user_config_dir字段,定義虛擬帳號的配置文件目錄
禁用匿名用戶登錄並啓用本地用戶登錄設置
anonymous_enable=NO  
local_enable=YES
將所有本地用戶限制在家目錄中,NO 則不限制
chroot_local_user=YES
pam_service_name=vsftpd:配置vsftpd 使用的PAM 模塊爲vsftpd  
user_config_dir=/etc/vsftpd/vuserconfig:設置虛擬帳號的主目錄爲/vuserconfig  
max_clients=300:設置FTP 服務器最大接入客戶端數爲 300 個  
max_per_ip=10:設置每個IP 地址最大連接數爲 10個


(2)建立虛擬帳號配置文件
在 user_config_dir 指定路徑下,建立與虛擬帳號同名的配置文件並添加相應的配置字段


首先建立公共帳號ftp、以及vip的配置文件
Mkdir /etc/vsftpd/vuserconfig
Touch /etc/vsftpd/vuserconfig/ftp
Touch /etc/vsftpd/vuserconfig/vip



Vi /etc/vsftpd /vuserconfig/ftp:      #在此文件下寫入以下內容
guest_enable=yes:開啓虛擬帳號登錄  
guest_username=ftpuser:設置ftp 對應的系統帳號爲 ftpuser  
anon_world_readable_only=no:允許匿名用戶瀏覽器整個服務器的文件系統
anon_max_rate=50000:限定傳輸速率爲 50KB/s
注意:
vsftpd 對於文件傳輸速度限制並不是絕對鎖定在一個數值上哈,而是在80%~120%之間變化
比如設置100KB/s 則實際是速度在80KB/s~120KB/s 之間變化



下面是客戶帳號vip的配置文件  :#將這些寫入/etc/vsftpd/vuserconfig/vip下
guest_enable=yes:開啓虛擬帳號登錄  
guest_username=ftpvip:設置ftp 對應的系統帳號爲 ftpvip  
anon_world_readable_only=no:允許匿名用戶瀏覽器整個服務器的文件系統  
write_enable=yes:允許在文件系統寫入權限  
anon_mkdir_write_enable=yes:允許創建文件夾  
anon_upload_enable=yes:開啓匿名帳號的上傳功能  
anon_max_rate=100000:限定傳輸速度爲 100KB/s

5、重啓vsftpd 使配置生效

6、測試
(1)公共帳號 ftp 測試
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章