Centos7 vsftpd安裝配置以及使用 阿里雲

一、vsftpd簡介

FTPFile transfer protocol的縮寫,中文叫文本傳輸協議,是用於在網絡上進行文件傳輸的一套標準協議,屬於網絡傳輸協議的應用層。注意,它是協議,不是軟件,今天搭建的vsftpd是基於FTP開發的一套程序,也是一款在Linux發行版中最受推崇的FTP服務器程序,特點是小巧輕快,安全易用。

二、安裝vsftpd

1:安裝vsftpd
[root@iZbp1f0xuq9rc41s6gdvfyZ ~]# yum install vsftpd

2:準備好其他資料,後面需要使用到
//創建系統用戶vftp,並制定其家目錄爲/var/vusers
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# useradd -d /var/vusers -s /sbin/nologin vftp 
//修改目錄的權限使得其他用戶也可以訪問。
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# chmod -Rf 755 /var/vusers/

3:創建好ftp根目錄,初始化數據授權
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# cd /
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# mkdir /ftpDir
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# chgrp vftp -R ftpDir/
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# chown vftp -R ftpDir/

三、配置文件vsftpd.conf

[root@iZbp1f0xuq9rc41s6gdvfyZ ftpDir]# cd /etc/vsftpd/
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# mv vsftpd.conf vsftpd.conf.bak
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# vi vsftpd.conf

# Example config file /etc/vsftpd/vsftpd.conf
#
anonymous_enable=NO
#
local_enable=YES
#
write_enable=YES
#
local_umask=022
#
anon_mkdir_write_enable=YES
#
dirmessage_enable=YES
#
connect_from_port_20=YES
#配置的日誌信息
xferlog_file=/var/log/xferlog
#
xferlog_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
#
xferlog_std_format=YES
dual_log_enable=YES
#
chroot_local_user=YES
#
listen=NO
#
listen_ipv6=YES
#虛擬用戶的賬戶密碼等信息引用,一般登錄不了都是這個地方的問題
pam_service_name=vsftpd.mysql
#
userlist_enable=YES
tcp_wrappers=YES

####激活虛擬賬戶
guest_enable=YES
####把虛擬賬戶綁定爲系統賬戶vftp,這是我們第二步時創建的系統賬戶,使用虛擬的賬戶時,最終會用vftp實體賬戶操作系統
guest_username=vftp
#設置虛擬用戶的主配置文件,第四步需要用到
user_config_dir=/etc/vsftpd/vsftpd_user_conf

###設置FTP服務器同一時刻最大的連接數
max_clients=200
###設置每ip的最大連接數
max_per_ip=10
###設置匿名用戶最大的下載速率(單位字節)
anon_max_rate=1536000                                         
###設置本地用戶最大的下載速率
local_max_rate=1536000
allow_writeable_chroot=YES
use_localtime=NO

##開啓被動模式		服務器的端口有限,控制有限的端口
pasv_enable=YES
#被動模式最低端口
pasv_min_port=19000
#被動模式最高端口
pasv_max_port=19050

四、創建虛擬賬戶信息,並配置響應的信息

#創建虛擬賬戶以及密碼
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# vi vuser.account
#第一行是賬戶、第二行是密碼
sigma
os3McXi2020
//生成虛擬賬戶的數據庫信息
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# yum install db4*
//生成用戶加密文件
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# db_load -T -t hash -f vuser.account vuser.account.db
//敏感文件限制只允許屬主讀寫
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# chmod 600 vuser.account.db
//給新虛擬賬戶配置信息,第三步提示了第四步需要做的事情
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# mkdir vsftpd_user_conf
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# cd vsftpd_user_conf
//創建一個我們的虛擬賬戶自己的配置文件,這樣每個虛擬賬戶的配置信息可以不一樣
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd_user_conf]# vi sigma
####配置信息如下
anon_world_readable_only=NO
###允許上傳
anon_upload_enable=YES
###建立和刪除目錄
anon_mkdir_write_enable=YES
####改名和刪除文件
anon_other_write_enable=YES
#### 指定虛擬用戶在系統用戶下面的路徑,限制虛擬用戶的家目錄,虛擬用戶登錄後的主目錄。
local_root=/ftpDir/

###這個sigma是我們在上一級目錄的vuser.account裏面的賬戶哈,一定記得
###虛擬用戶的PAM認證文件
###vsftpd的pam文件在/etc/pam.d/目錄下
[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd_user_conf]# cd /etc/pam.d/
[root@iZbp1f0xuq9rc41s6gdvfyZ pam.d]# vi vsftpd.mysql 
##第三步我們在/etc/vsftpd裏面生成了一個db文件:vuser.account.db,這裏的配置就是去掉.db的配置
#%PAM-1.0
auth       required     /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser.account
account    required     /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser.account
###日誌地址
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# tail -f /var/log/vsftpd.log

第五步、可以重啓服務使用了

[root@iZbp1f0xuq9rc41s6gdvfyZ vsftpd]# systemctl restart vsftpd

第六步、阿里雲的配置21端口、19000/19050端口分配

大家不要給我的系統上傳東西哦,我指不定什麼時候就停服務器了,到時候有文件丟失我不管的。

 

 

不推薦使用,VSFTPD 一旦傳輸大量文件,會導致服務器崩潰。我沒有測試是否是阿里雲的原因,但是出現了多次多臺服務器的此種情況,請知曉!!!

問題解決了:

我的服務安裝了安全狗,安全狗限制了每秒的訪問量,需要開啓超級白名單,這樣你IP就可以暢通無阻了!!!
啊 啊 啊 ,焦頭爛額的事情原來問題在這裏,真是狗帶呀

 

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