Debian 9 vsftpd: version 3.0.3 配置


現在網上關於vsftpd的資料不少,但是版本已經比較老,配置起來各種錯誤,耽誤不少時間,現將配置步驟更新如下,配置環境版本:Debian 9 + vsftpd: version 3.0.3

1.apt install vsftpd

2.安裝完成后,vsftpd自動添加了ftp用戶和ftp用戶組

3.mkdir /ftp,添加ftp根目錄

4.vi /etc/passwd || usermod -d /ftp ftp

修改ftp主目錄 原:/srv/ftp 新 /ftp

5.修改/ftp目錄所屬組為ftp

chgrp ftp /ftp

6.創建vsftp用戶目錄

mkdir /ftp/vsftp

7.添加vsftp用戶

useradd -g ftp -d /ftp/vsftp -s /sbin/nologin vsftp
passwd vsftp
******

8.添加FTP配置文件目錄

mkdir /etc/vsftpd/
mkdir /etc/vsftpd/vconf

9.創建用戶和密碼文件

創建用戶和密碼文件,然后用db4工具把用戶名和密碼轉換成系統識別的格式。
vi vftpuser.txt //新建文件寫入用戶名和密碼
注:第一行寫用戶名,第二行寫密碼,以此類推,要創建多少虛擬用戶,依次寫下去。
例如:

abcd
*****
dcba
*****

創建了兩個用戶abc和cba密碼分別為****和*****

接着使用工具將其轉換,並且存放在適當的位置,如:、
db5.3_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db
命名為vsftpd_login.db。
注意:此時如果沒有安裝db4工具會出現錯誤。
解決方法:
apt install db5.3-util
db5.3_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db

10.設置PAM驗證文件,並制定虛擬用戶數據庫文件進行讀取

使用find / -name 'pam_userdb.so'查找
結果:/lib/x86_64-linux-gnu/security/pam_userdb.so
修改/etc/pam.d/vsftpd

添加:

auth    sufficient    /lib/x86_64-linux-gnu/security/pam_userdb.so    db=/opt/vsftp/vsftpd_login
account    sufficient    /lib/x86_64-linux-gnu/security/pam_userdb.so    db=/opt/vsftp/vsftpd_login

auth    include    system-auth
account    include    system-auth
session    include    system-auth
session    required    pam_loginuid.so

 

11.創建虛擬用戶配置文件:

12.配置vsftpd參數 ,vi /etc/vsftpd.conf

vconf/default文件內容:

local_root=/home/ftp/ftpdir
#指定虛擬用戶倉庫的具路徑
anonymous_enable=NO
#設定不允許匿名訪問
write_enable=YES
#允許寫的操作
local_umask=022
#上傳文件的權限掩碼
anon_upload_enable=YES
#不允許匿名上傳
anon_mkdir_write_enable=YES
#不允許匿名用戶建立目錄
idle_session_timeout=300
#設定空閑鏈接超時時間
data_connection_timeout=1000
#設定單次傳輸最大時間
max_clients=0
#設定並發客戶端的訪問數量
max_per_ip=0
#設定客戶端的最大線程數
local_max_rate=0
#設定用戶的最大傳輸速率,單位b/s
cmds_allowed=ABOR,CWD,LIST,MDTM,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,REST,SIZE,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST
#這里是你給他設的權限,我這里給的權限符合上頭所說的要求,可以上傳下載,但不能刪除文件,也不能創建文件夾
#完整權限:cmds_allowed=ABOR,CWD,LIST,DELE,RMD,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,REST,RNFR,RNTO,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST

新用戶配置文件通過默認直接復制(注意復制完修改local_root參數):

cp default abc
cp default cba

mkdir /ftp/abc
mkdir /ftp/cba
修改屬主/組信息
chown abc:ftp /ftp/abc

13.配置vsftpd參數:

vi /etc/vsftpd

write_enable=YES
local_umask=022

# 手動添加以下項目

#啟用虛擬用戶功能
guest_enable=YES

#指定虛擬的宿主用戶
guest_username=vsftp

#設定虛擬用戶的權限符合他們的宿主用戶
virtual_use_local_privs=YES

#設定虛擬用戶個人vsftp的配置文件存放路勁。這個被指定的目錄里,將被存放每個虛擬用戶個性的配置文件,注意的地方是:配置文件名必須和虛擬用戶名相同。
user_config_dir=/etc/vsftpd/vconf

listen_port=21
pasv_enable=YES
pasv_min_port=13031
pasv_max_port=13051
pasv_promiscuous=YES
ftpd_banner=FTP service

 

 vsftpd配置附件:vsftpd.rar

vsftpd參數參考:http://www.cnblogs.com/9426yu/p/4835443.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM