1 這里講的是已經安裝好了vsftpd服務的前提下
1.1 配置文件/etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 不允許匿名訪問,禁用匿名登錄
chroot_local_user=YES # 啟用限定用戶在其主目錄下
use_localtime=YES # 使用本地時(自行添加)
chroot_list_enable=YES
local_enable=YES # 允許使用本地帳戶進行FTP用戶登錄驗證
allow_writeable_chroot=YES # 如果啟用了限定用戶在其主目錄下需要添加這個配置,解決報錯 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
xferlog_enable=YES # 啟用上傳和下載的日志功能,默認開啟。
local_umask=022 # 設置本地用戶默認文件掩碼022
# FTP上本地的文件權限,默認是077,不過vsftpd安裝后的配置文件里默認是022
1.2 虛擬用戶高級參數
•當virtual_use_local_privs=YES 時,虛擬用戶和本地用戶有相同的權限;
•當virtual_use_local_privs=NO 時,虛擬用戶和匿名用戶有相同的權限,默認是NO。
•當virtual_use_local_privs=YES,write_enable=YES時,虛擬用戶具有寫權限(上傳、下載、刪除、重命名)。
•當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,anon_upload_enable=YES時,虛擬用戶不能瀏覽目錄,只能上傳文件,無其他權限。
•當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=NO時,虛擬用戶只能下載文件,無其他權限。
•當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=YES時,虛擬用戶只能上傳和下載文件,無其他權限。
•當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_mkdir_write_enable=YES時,虛擬用戶只能下載文件和創建文件夾,無其他權限。
•當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_other_write_enable=YES時,虛擬用戶只能下載、刪除和重命名文件,無其他權限。
2 配置用戶名和密碼
2.1 編輯和配置用戶名和密碼
vim /etc/vsftpd/passwd
2.2 在passwd里面輸入用戶名密碼
test 用戶名
test 密碼
.... 注 :如果想要繼續增加用戶和密碼則繼續輸入
2.3 保存退出
:wq
3 生成虛擬用戶數據文件
db_load -T -t hash -f /etc/vsftpd/passwd /etc/vsftpd/passwd.db
4 在配置文件/etc/vsftpd/chroot_list里面追加用戶 用來管理用戶只能訪問自己的目錄
vim /etc/vsftpd/chroot_list 注這里這個路徑需要在/etc/vsftpd/vsftpd.conf里面去配置
4.1在配置文件chroot_list里面追加用戶名即可
用戶名
4.2 保存退出
:wq
5, 創建用戶的虛擬用戶配置
touch /etc/vsftpd/vconf/用戶名
6 在文件里面追加
local_root=/data/vsftp/目錄名 #這里用來指定訪問哪個目錄
anonymous_enable=no #不允許匿名用戶登錄
write_enable=YES #全局配置
local_umask=000
anon_world_readable_only=YES #允許匿名用戶下載文件
anon_upload_enable=NO # 允許匿名用戶上傳文件(須將全局的write_enable=YES,默認YES)
anon_mkdir_write_enable=NO #不允許匿名用戶創建目錄
idle_session_timeout=300 #如果使用者在 300 秒內都沒有命令動作,強制脫機
data_connection_timeout=1000 #傳輸文件不順利時,timeout設定(默認是300秒
max_clients=0 #如果 vsftpd 是以 stand alone 方式啟動的,那么這個設定項目可以設定同一
時間,最多有多少 client 可以同時連上 vsftpd !限制使用 FTP 的用量!
max_per_ip=0 #與上面 max_clients 類似,這里是同一個 IP 同一時間可允許多少聯機
local_max_rate=0 #實體用戶的傳輸速度限制,單位為 bytes/second, 0 為不限制。
anon_other_write_enable=YES # 允許匿名用戶刪除和重命名權限(自行添加)
7 創建虛擬用戶訪問目錄
mkdir /data/vsftpd/目錄名
8 建立虛擬用戶的倉庫目錄並更改相應屬組
chown virtusers:virtusers /data/vsftpd/目錄名
9 賦權限
chmod 777 /data/vsftpd/目錄名
10用ftp工具連接登陸默認端口21