【Linux】FTP服務

Table of Contents

1.FTP協議

2.實驗環境

3.ftp服務的基本信息

3.1 搭建ftp服務器

3.2 ftp服務測試

3.2.1匿名用戶

3.2.2 本地用戶

4.ftp虛擬用戶的設定


1.FTP協議

FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一
FTP協議包括兩個組成部分,其一爲FTP服務器,其二爲FTP客戶端
其中FTP服務器用來存儲文件,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP服務器上的資源
在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web服務器上
由於FTP傳輸效率非常高,在網絡上傳輸大的文件時,一般也採用該協議
默認情況下FTP協議使用TCP端口中的 20和21這兩個端口,其中20用於傳輸數據,21用於傳輸控制信息
但是,是否使用20作爲傳輸數據的端口與FTP使用的傳輸模式有關
如果採用主動模式,那麼數據傳輸端口就是20;如果採用被動模式,則具體最終使用哪個端口要服務器端和客戶端協商決定

2.實驗環境

首先我們決定用server虛擬機作爲ftp服務端,所以首先我們要檢查他的網絡配置

然後我們配置對應版本的yum源

內核及防火牆關閉

3.ftp服務的基本信息

/var/ftp                  默認發佈目錄
/var/ftp/pub/             默認發佈目錄的子目錄
/etc/vsftpd/vsftpd.conf   服務配置文件

報錯id:

500 文件系統權限過大
530 用戶認證失敗
550 服務本身功能爲開放
553 本地文件系統權限過小

3.1 搭建ftp服務器

一臺主機可以同時做客戶端,也可以做服務端

第一步:安裝 ftp服務

第二步:打開ftp服務

第三步:查看該服務的安裝目錄

第四步:查看該服務的配置文件

第五步:防火牆通過ftp服務

3.2 ftp服務測試

3.2.1匿名用戶

1)匿名用戶登陸限制

anonymous_enable=YES|NO

2)匿名用戶上傳

anon_upload_enable=YES|NO

3)匿名用戶家目錄修改

anon_root=/westos

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

anon_umask=xxx

5)匿名用戶建立目錄

anon_mkdir_write_enable=YES|NO

6)匿名用戶下載

anon_world_readable_only=YES|NO 設定參數值爲no表示匿名用戶可以下載

7)匿名用戶刪除

anon_other_write_enable=YES|NO

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

chown_uploads=YES

chown_username=student

9)最大上傳速率

anon_max_rate=102400

dd if=/dev/zero of=/mnt/bigfile bs=1M count=1000 截取一個1G大的文件

10)最大鏈接數

max_clients=2最多鏈接兩臺主機

在這裏插入圖片描述

在這裏插入圖片描述

3.2.2 本地用戶

1)本地用戶限制登陸

local_enable=YES|NO

2)本地用戶寫權限

write_enable=YES|NO

3)本地用戶家目錄更改

local_root=/westos   將本地用戶登陸家目錄更改爲/westos

4)本地用戶上傳文件權限

local_umask=xxx

5)限制本地用戶瀏覽目錄

chroot_local_user=YES

chmod u-w /home/*

6)本地用戶黑名單建立

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 

7)本地用戶白名單建立

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

8)限制本地用戶登陸黑名單

vim /etc/vsftpd/ftpusers 只能爲黑名單

9)用戶臨時黑名單

vim /etc/vsftpd/user_list

10)用戶臨時白名單

userlist_deny=NO

vim /etc/vsftpd/user_list

4.ftp虛擬用戶的設定

1)給ftp服務器創建虛擬帳號身份,更加安全。

vim /etc/vsftpd/loginusers (虛擬賬戶名單)

2)虛擬用戶帳號身份指定

guest_username=ftpuser

chmod u-w /home/ftpuser

3)虛擬賬戶家目錄獨立設定

使虛擬用戶的登陸進去不再是ftp用戶的默認家目錄

vim /etc/vsftpd/vsftpd.conf

local_root=/ftpuserhome/$USER

user_sub_token=$USER

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

mkdir /ftpuserhome

chgrp ftpuser /ftpuserhome

chmod g+s /ftpuserhome

mkdir /ftpuserhome/ftpuser{1…3}

在這裏插入圖片描述

驗證:lftp 172.25.254.111 -u user1

ls 可以看到此時user1的家目錄是他自己的家目錄

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