linux基礎學習【13】

FTP(File Transfer Protocol)

文本傳輸協議


ftp啓用

yum install -y vsftpd ##安裝服務
systemctl start vsftpd ##開啓服務
systemctl enable vsftpd ##開機開啓


安裝成功

linux基礎學習【13】


開啓並設置開機啓動

linux基礎學習【13】


ftp基本信息

訪問數據的端口:21
數據傳輸端口:>1024的隨即端口
默認發佈目錄:/var/ftp
普通用戶訪問默認訪問頁面爲家目錄
匿名用戶訪問默認訪問頁面爲/var/lftp/
訪問方式:
lftp 172.25.254.100     ##當前用戶登錄
lftp 172.25.254.100 -u student  ##普通用戶登錄

vsftpd開放的21端口

linux基礎學習【13】


匿名用戶默認訪問目錄爲/var/ftp/

linux基礎學習【13】


普通用戶默認訪問目錄爲家目錄

linux基礎學習【13】


ftp的安全部署

錯誤報告:
500 權限過大
530 認證失敗
550 服務本身不允許
553 文件系統權限過小

匿名用戶上傳

chmod 775 /var/ftp/pub      ##修改目錄權限
chgrp ftp /var/ftp/pub      ##修改目錄屬組
vim /etc/vsftpd/vsftpd.conf ##修改配置文件
anon_upload_enable=YES      ##添加語句:允許匿名用戶上傳

默認無法上傳

linux基礎學習【13】


1.修改發佈目錄內目錄權限及屬組
2.配置文件修改後重啓服務

linux基礎學習【13】

3.匿名用戶上傳測試

linux基礎學習【13】


匿名用戶下載

anon_world_readable_only=NO

默認無法下載

linux基礎學習【13】


1.修改配置文件

linux基礎學習【13】


匿名用戶新建目錄

anon_mkdir_write_enable=YES

默認無法創建目錄

linux基礎學習【13】


 1.編輯配置文件添加語句

linux基礎學習【13】


2.配置後重啓
3.連接測試創建成功

linux基礎學習【13】


匿名用戶刪除和重命名

anon_other_write_enable=YES

默認無法刪除和重命名

linux基礎學習【13】


1.編輯配置文件添加語句

linux基礎學習【13】


2.配置後重啓服務
3.連接測試重命名和刪除成功

linux基礎學習【13】


匿名用戶默認訪問目錄

anon_root=/mnt

默認用戶訪問的目錄爲/var/ftp

linux基礎學習【13】


1.配置文件添加語句,修改默認訪問目錄爲/mnt

linux基礎學習【13】


2.配置後重啓服務
3.測試發現目錄更改成功

linux基礎學習【13】


匿名用戶默認上傳文件權限修改

anon_umask=xxx

1.配置文件中添加語句,設置匿名用戶上傳文件的umask值

linux基礎學習【13】


2.配置後重啓服務
3.測試上傳文件權限爲644(文件默認去除執行權限)

linux基礎學習【13】


匿名用戶使用的用戶身份修改

chown_uploads=YES
chown_username=student

匿名用戶默認的登入身份爲ftp

linux基礎學習【13】


1.修改配置文件,用戶登入身份修改爲student,並允許上傳

linux基礎學習【13】


2.配置後重啓服務
3.上傳測試uid=1000(student)

linux基礎學習【13】
linux基礎學習【13】

最大上傳速率

anon_max_rate=102400    單位爲字節

未限速時速度較快

linux基礎學習【13】


1.配置文件添加語句,限速102400Byte/s(100KB/s)

linux基礎學習【13】


2.配置後重啓服務
3.測試上傳速度穩定後約爲100KB/s

linux基礎學習【13】


最大鏈接個數

max_clients=x

 1.配置文件添加語句,限制最大連接1個

linux基礎學習【13】


2.配置後重啓服務
3.連接一個後開啓另一個窗口嘗試連接失敗

linux基礎學習【13】


本地用戶家目錄修改

local_root=/westos
功能與匿名用戶限制相同,主要針對本機用戶

本地用戶上傳文件權限

local_umask=xxx
功能與匿名用戶限制相同,主要針對本機用戶

家目錄鎖定

chroot_local_user=YES   ##需要去除用戶對家目錄的寫權限
chmod u-w /home/*   ##去除用戶對家目錄的寫權限 

未進行鎖定前,用戶可以跳出家目錄訪問其他位置

linux基礎學習【13】


1.添加語句,開啓家目錄鎖定,但要關閉用戶對家目錄的寫權限
2.配置後重啓服務,撤去student用戶對家目錄的寫權限
3.測試,無法跳出家目錄

linux基礎學習【13】


家目錄鎖定的白名單/黑名單

chroot_list-enable=YES/NO
vim /etc/vsftp/chroot_list

1.配置文件中開啓白名單

linux基礎學習【13】


2.編輯白名單,添加student

linux基礎學習【13】


3.重啓服務,測試
4.student被鎖定,leo可以訪問其他位置

linux基礎學習【13】


限制本地用戶登錄

vim /etc/vsftpd/ftpusers    ##永久黑名單
vim /etc/vsftpd/user_list   ##臨時黑名單

在黑名單中添加leo

linux基礎學習【13】


leo無法登入ftp

linux基礎學習【13】


白/黑名單設定

userlist_deny=NO    ##user_list爲白名單
userlist_dent=YES   ##user_list爲黑名單

配置文件中添加語句,編輯/etc/vsftpd/user_list來確定限制對象。
NO時爲白名單,YES時爲黑名單

linux基礎學習【13】


ftp虛擬用戶的添加

vim /etc/vsftpd/vir_user    ##編輯用戶賬戶和密碼
user1   ##用戶1
123 ##密碼1
user2   ##用戶2
123 ##密碼2

創建用戶數據庫

linux基礎學習【13】


db_load -T -t hash -f /etc/vsftpd/vir_user /etc/vsftpd/vir_user.db      ##加密生成westos.db文件
vim /etc/pam.d/vir_user                             ##編輯對應pam配置文件
account     required    pam_userdb.so   db=/etc/vsftpdvir_user  ##賬戶
auth        required    pam_userdb.so   db=/etc/vsftpd/vir_user ##密碼

配置pam文件

linux基礎學習【13】


vim /etc/vsftpd/vsftpd.conf ##編輯服務配置文件
pam_service_name=vir_user       ##選擇pam的服務名
guest_enable=YES        ##允許虛擬用戶訪問

linux基礎學習【13】


1.創建用戶數據庫
2.更改配置文件
3.生成加密文件
4.配置pam文件
5.重啓服務

linux基礎學習【13】


6.測試

linux基礎學習【13】


虛擬用戶身份指定

guest_username=westos

1.配置文件中添加語句,指定虛擬用戶登入身份爲student

linux基礎學習【13】


2.配置後重啓服務
3.測試

linux基礎學習【13】


虛擬用戶家目錄獨立設定

vim /etc/vsftpd/vsftpd.conf     ##編輯配置文件
local_root=/ftphome/$USER       ##設定用戶家目錄
user_sub_token=$USER            ##識別$USER爲用戶名

mkdir -p /ftphome/user1/user1dir    ##創建用戶家目錄
mkdri -p /ftphome/user2/user2dir    ##創建用戶家目錄

1.添加配置文件,指定用戶家目錄

linux基礎學習【13】


2.配置後重啓
3.測試,家目錄指定成功

linux基礎學習【13】


虛擬用戶獨立配置

獨立配置文件中沒有寫到的權限自動從vsftpd.conf中尋找

chgrp ftp /ftphome -R           ##更改屬組
chmod 775 /ftphome/user1/user1dir   ##更改權限
chmod 775 /ftphome/user2/user2dir   ##更改權限

vim /etc/vsftpd/vsftpd.conf     ##編輯配置文件
user_config_dir=/etc/vsftpd/userconf    ##設定配置文件目錄爲userconf
mkdir -p /etc/vsftpd/userconf       ##創建配置文件目錄

vim /etc/vsftpd/userconf/user1      ##編輯user1的配置文件
anon_upload_enable=YES          ##允許上傳

允許tom上傳

linux基礎學習【13】


1.更改屬組
2.更改目錄權限
3.修改配置文件
4.編輯tom/jerry的單獨配置文件

linux基礎學習【13】


 5.重啓服務後,測試tom可以上傳

linux基礎學習【13】

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