1. 程式人生 > >linux下的ftp服務管理

linux下的ftp服務管理

################################
1怎麼用ftpd連線服務端
################################
yum install vsftpd安裝
在這裡插入圖片描述
systemctl start vsftpd開啟服務
在這裡插入圖片描述
firewall-cmd --permanent --add-service=ftp新增火牆策略
在這裡插入圖片描述
firewall-cmd --reload
getenforce檢視核心

在這裡插入圖片描述
如果核心開啟修改這個檔案
vim /etc/sysconfig/selinux
SELINUX=disabled

用模擬客戶端的虛擬機器輸入命令lftp (ip)


在這裡插入圖片描述
進入後可以輸入?檢視能打什麼命令
在這裡插入圖片描述
此時使用者預設登陸在
在這裡插入圖片描述
在服務端建立一個使用者
在這裡插入圖片描述
在ip後-u westos可以以普通使用者身份登陸,在新建使用者家目錄裡建立一個檔案來驗證

在這裡插入圖片描述
##########################
2安全部署
##########################
檢視vsftp配置檔案
在這裡插入圖片描述
服務端vim /etc/vsftpd/vsftpd.conf修改這個檔案內容
注意每次修改都要重讀systemctl restart vsftpd

12行控制是否能匿名登陸,注意此時能登陸但是不能有任何操作
在這裡插入圖片描述
16行控制能否用本地使用者登陸
在這裡插入圖片描述
19行控制本地使用者能否寫檔案
在這裡插入圖片描述


可能會產生的報錯有

500 #檔案系統許可權過大修改服務端檔案許可權
530 #使用者認證失敗
550 #服務未開啟
553 #本地檔案系統許可權過小chmod修改服務端檔案許可權

為了避免553和500我們需要修改許可權
在這裡插入圖片描述

新增anon_upload_enable=YES修改匿名使用者能否上傳檔案
在這裡插入圖片描述
anon_root=/direcotry修改匿名登陸位置
在根下建立一個目錄666在裡面建立一個檔名為hello的檔案
在這裡插入圖片描述
修改配置檔案後客戶端登陸驗證
在這裡插入圖片描述
anon_umask=xxx修改匿名使用者預設許可權
在這裡插入圖片描述
anon_world_readable_only=NO使使用者能下載檔案注意這裡是NO


在這裡插入圖片描述
anon_other_write_enable=YES使使用者能刪除檔案
在這裡插入圖片描述
如何限制下載速度
dd if=/dev/zero of=/tmp/file bs=1M count=1000建立一個1g的檔案
在這裡插入圖片描述
put file上傳看速度
在這裡插入圖片描述
anon_max_rate=102400限制最大下載速度為102400k
此時正常速度為227.2k
在這裡插入圖片描述
anon_mkdir_write_enable=YES使使用者能建立路徑
在這裡插入圖片描述
max_clients=2設定最大同時連線使用者的數量
在這裡插入圖片描述
/查詢chown
chown_uploads=YES開啟這個功能
chown_username=(whoever)設定匿名使用者變為什麼身份建立和修改檔案

在這裡插入圖片描述
####################################
3.限制本地使用者登陸
####################################
vim /etc/vsftpd/ftpusers
使用者永久黑名單
這裡我將westos寫入黑名單,用westos登陸失敗

在這裡插入圖片描述
vim /etc/vsftpd/user_list
使用者臨時黑名單
將westos使用者從永久黑名單刪除,寫入臨時黑名單,發現登陸被拒絕

在這裡插入圖片描述
使用者白名單設定
vim /etc/vsftpd/vsftpd.conf
userlist_deny=NO
systemctl restart vsftpd記得重讀
在這裡插入圖片描述
vim /etc/vsftpd/user_list
引數設定,臨時黑名單變成使用者白名單,只有在名單中出現的使用者可以登陸ftp

在這裡插入圖片描述
若在名單中的使用者同時也出現在永久黑名單中,則該使用者也不能登陸
在這裡插入圖片描述

##########################################
4.設定虛擬使用者
##########################################

把源配置檔案恢復成預設狀態

vim /etc/vsftpd/loginusers編輯這個檔案儲存虛擬使用者的帳號和密碼
在這裡插入圖片描述
db_load -T -t hash -f loginusers loginusers.db設定雜湊加密會生成一個雜湊加密的檔案
在這裡插入圖片描述
vim /etc/pam.d/ftpauth設定認證方式帳號或者密碼錯誤登陸就失敗
account(使用者)
required(表示強制)
pam_userdb.so(表示認證程式)
db=/etc/vsftpd/westosfile(表示使用者所在檔案)
auth(表示密碼)
在這裡插入圖片描述
vim /etc/vsftpd/vsftpd.conf
如圖設定以虛擬使用者以什麼身份登陸
儲存後重讀
在這裡插入圖片描述
在student下建立一個hello
客戶端登陸-u westos1
發現報錯500
在這裡插入圖片描述
此時我們需要去除student的寫許可權
在這裡插入圖片描述
ls檢視
在這裡插入圖片描述

#################################
5.單獨配置虛擬使用者的許可權
#################################

mkdir /ftphome/westos{1…3}

mkdir /ftphome/westos1/westos1date#分別設定虛擬使用者的家目錄
在這裡插入圖片描述
mkdir /etc/vsftpd/user_conf
touch /etc/vsftpd/user_conf/westos1
#建立虛擬使用者配置目錄並且建立配置檔案

anon_upload_enable=YES
#新增許可權設定westos1能上傳檔案
在這裡插入圖片描述
修改vsftpd.conf
注意註釋掉把westos變為student的設定
在這裡插入圖片描述

此時登陸上傳報錯553
這是因為許可權太小
在這裡插入圖片描述
chmod 777 /ftphome/westos*/* #修改許可權再次上傳
在這裡插入圖片描述