centos_vsftp服務器搭建

1. 安裝CentOS release 6.9 (Final)操作系統,用yum安裝vsftpd

2. 查看系統中是否存在db4。如果沒有則進行安裝。

#rpm -qa | grep db4

db4-devel-4.7.25-19.el6_6.x86_64
db4-4.7.25-19.el6_6.x86_64
db4-utils-4.7.25-19.el6_6.x86_64
db4-cxx-4.7.25-19.el6_6.x86_64

3. 添加虛擬用戶口令文件

#vi /etc/vsftpd/login.txt

test
password0
test1
password1
test2
password2

4. 生成虛擬用戶口令認證文件

#db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db

#chmod 600 /etc/vsftpd/vsftpd_login.db

5. 編輯vsftpd的PAM認證文件

#vi /etc/pam.d/vsftpd

將裏面其他的都註釋掉,添加下面這兩行:

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login


6. 建立本地映射用戶並設置宿主目錄權限

#useradd vsftpd -s /sbin/nologin

#useradd virtusers  -s /sbin/nologin


7. 配置vsftpd.conf(設置虛擬用戶配置項)

#vi /etc/vsftpd/vsftpd.conf

#設置爲NO代表不允許匿名
anonymous_enable=YES
 
#設定本地用戶可以訪問,主要是虛擬宿主用戶,如果設爲NO那麼所欲虛擬用戶將無法訪問。
local_enable=YES
 
#可以進行寫的操作
write_enable=YES
 
#設定上傳文件的權限掩碼
local_umask=022
 
#禁止匿名用戶上傳
anon_upload_enable=NO
 
#禁止匿名用戶建立目錄
anon_mkdir_write_enable=NO
 
# 設定開啓目錄標語功能
dirmessage_enable=YES
 
# 設定開啓日誌記錄功能
xferlog_enable=YES
 
#設定端口20進行數據連接
connect_from_port_20=YES
 
#設定禁止上傳文件更改宿主
chown_uploads=NO
 
#設定vsftpd服務日誌保存路勁。注意:改文件默認不純在,需手動touch,且由於這裏更改了vsftpd服務的宿主用戶爲手動建立的vsftpd,則必
須注意給予該用戶對日誌的讀取權限否則服務啓動失敗。
xferlog_file=/var/log/vsftpd.log
 
#設定日誌使用標準的記錄格式
xferlog_std_format=YES
 
#設定空閒鏈接超時時間,這裏使用默認/秒。
#idle_session_timeout=600
 
#設定最大連接傳輸時間,這裏使用默認,將具體數值留給每個用戶具體制定,默認120/秒
data_connection_timeout=3600
 
#設定支撐vsftpd服務的宿主用戶爲手動建立的vsftpd用戶。注意:一旦更改宿主用戶,需一起與該服務相關的讀寫文件的讀寫賦權問題.
nopriv_user=vsftpd
 
#設定支持異步傳輸的功能
#async_abor_enable=YES
 
#設置vsftpd的登陸標語
ftpd_banner=hello 歡迎登陸
 
#禁止用戶登出自己的ftp主目錄
chroot_list_enable=NO
 
#禁止用戶登陸ftp後使用ls -R 命令。該命令會對服務器性能造成巨大開銷,如果該項運行當多個用戶使用該命令會對服務器造成威脅。
ls_recurse_enable=NO
 
#設定vsftpd服務工作在standalone模式下。所謂standalone模式就是該服務擁有自己的守護進程,在ps -A可以看出vsftpd的守護進程名。如果
不想工作在standalone模式下,可以選擇SuperDaemon模式,註釋掉即可,在該模式下vsftpd將沒有自己的守護進程,而是由超級守護進程Xinetd全權代理,>與此同時,vsftpd服務的許多功能,將得不到實現。
listen=YES
 
#設定userlist_file中的用戶將不能使用ftp
userlist_enable=YES
 
 
#設定pam服務下的vsftpd驗證配置文件名。因此,PAM驗證將參考/etc/pam.d/下的vsftpd文件配置。
pam_service_name=vsftpd
 
#設定支持TCPwrappers
tcp_wrappers=YES
 
#################################################以下是關於虛擬用戶支持的重要配置項目,默認.conf配置文件中是不包含這些項目的,需手動添加。
#啓用虛擬用戶功能
guest_enable=YES
 
#指定虛擬的宿主用戶
guest_username=virtusers
 
#設定虛擬用戶的權限符合他們的宿主用戶
virtual_use_local_privs=YES
 
#設定虛擬用戶個人vsftp的配置文件存放路勁。這個被指定的目錄裏,將被存放每個虛擬用戶個性的配置文件,注意的地方是:配置文件名必須
和虛擬用戶名相同。
user_config_dir=/etc/vsftpd/vconf
 
#禁止反向域名解析,若是沒有添加這個參數可能會出現用戶登陸較慢,或則客戶鏈接不上ftp的現象
reverse_lookup_enable=NO

 

8. 重啓vsftpd服務

9. 測試虛擬用戶登錄FTP


虛擬用戶的配置

 1.)定製虛擬用戶模板配置文件

vim /etc/vsftpd/vconf/test

local_root=/opt/vsftp/file
#指定虛擬用戶倉庫的具路徑
anonymous_enable=NO
#設定不允許匿名訪問
write_enable=YES
#允許寫的操作
virtual_use_local_privs=NO
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#允許上傳
anon_other_write_enable=YES
local_umask=022
#上傳文件的權限掩碼
chroot_list_enable=NO
idle_session_timeout=300
#設定空閒鏈接超時時間
data_connection_timeout=1000
#設定單次傳輸最大時間
max_clients=0
#設定併發客戶端的訪問數量
max_per_ip=0
#設定客戶端的最大線程數
local_max_rate=0
#設定用戶的最大傳輸速率,單位b/s

 

2.)建立虛擬用戶的倉庫目錄並更改相應屬主/組且賦予相應權限

mkdir -p /opt/vsftpd/file

chown virtusers.virtusers /opt/vsftpd/file

chmod 755 /opt/vsftpd/file

===================以上操作完成虛擬用戶的設置========================

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章