1. 程式人生 > >Linux,FTP伺服器配置

Linux,FTP伺服器配置

FTP伺服器配置

FTP服務的埠號
   21埠:傳輸FTP的控制命令
   20埠:傳輸檔案資料

主動模式(PORT模式):
PORT模式建立資料傳輸通道是由伺服器端發起的,伺服器使用20埠連線客戶端某一個大於1024的埠;

被動模式(PASV模式):
資料傳輸通道的建立是由FTP客戶端發起的,使用一個大於1024的埠連線伺服器的1024以上的某一個埠。

FTP服務的安裝與基本配置

Linux下最常用的FTP服務端軟體vsftpd(守護程序也是vsftpd),客戶端可以使用命令列,瀏覽器,或者客戶端軟體gftp。

vsftpd安裝配置

安裝vsftpd:

yum -y install vsftpd

配置vsftpd主配置檔案/etc/vsftpd/vsftpd.conf

本地使用者許可權配置:

local_enable=YES:是否允許本地使用者 。
write_enable=YES:是否允許本地使用者對 FTP 伺服器檔案具有寫許可權 , 預設設定為 YES 允許。
使用者預設可以訪問除其他使用者家目錄以外的所有資料夾,但只對自己家目錄有許可權進行操作。

  1. 配置使用者訪問鎖定到自己的家目錄下(不可以訪問其他目錄):
    chroot_list_enable=YES:設定為 NO 時,使用者登入FTP 伺服器後具有訪問自己目錄以外的其他檔案的許可權, 設定為 YES 時 , 使用者被鎖定在自己的 home 目錄中,vsftpd 將在下面 chroot_list_file 選項值的位置尋找 chroot_list 檔案,此檔案需使用者建立, 再將需鎖定在自己home 目錄的使用者列入其中,每行一個使用者。
    在這裡插入圖片描述


    chroot_list_file=/etc/vsftpd/chroot_list:此檔案需自己建立 , 被列入此檔案的使用者 , 在登入後將不能切換到自己目錄以外的其他目錄 , 由 FTP 伺服器自動地 chrooted 到使用者自己的home 目錄下,使得 chroot_list 檔案中的使用者不能隨意轉到其他使用者的FTP home 目錄下,從而有利於FTP 伺服器的安全管理和隱私保護.

  2. 控制使用者是否允許切換到上級目錄
    在預設配置下,本地使用者登入FTP後可以使用cd命令切換到其他目錄,這樣會對系統帶來安全隱患。可以通過以下三條配置檔案來控制使用者切換目錄。

    chroot_list_enable=YES


    設定是否啟用chroot_list_file配置項指定的使用者列表檔案。預設值為NO。
    chroot_list_file=/etc/vsftpd/chroot_list
    用於指定使用者列表檔案,該檔案用於控制哪些使用者可以切換到使用者家目錄的上級目錄。
    chroot_local_user=NO
    用於指定使用者列表檔案中的使用者是否允許切換到上級目錄。預設值為NO。

    通過搭配能實現以下幾種效果:

    1. 當chroot_list_enable=YES,chroot_local_user=YES時,在/etc/vsftpd/chroot_list檔案中列出的使用者,可以切換到其他目錄;未在檔案中列出的使用者,不能切換到其他目錄。
    2. 當chroot_list_enable=YES,chroot_local_user=NO時,在/etc/vsftpd/chroot_list檔案中列出的使用者,不能切換到其他目錄;未在檔案中列出的使用者,可以切換到其他目錄。
    3. 當chroot_list_enable=NO,chroot_local_user=YES時,所有的使用者均不能切換到其他目錄。
    4. 當chroot_list_enable=NO,chroot_local_user=NO時,所有的使用者均可以切換到其他目錄。

    重啟服務測試service vsftpd restart
    在這裡插入圖片描述

  3. 控制本地使用者是否可以訪問ftp伺服器

    • /etc/vsftpd/ftpusers:禁止使用vsftpd的使用者列表檔案
    • userlist_enable=YES:此選項預設值為NO , 此時ftpusers 檔案中的使用者禁止登入FTP 伺服器;若此項設為YES ,則 user_list 檔案中的使用者允許登入 FTP 伺服器。
      /etc/vsftpd/user_list:禁止或允許使用vsftpd的使用者列表檔案,預設情況下userlist_deny=YES 不能訪問,userlist_deny=NO 只有列表裡的使用者可以訪問。
    • 如果使用者在ftpusers被拒絕,在 userlist_enable=NO 允許訪問,但其實結果是遵守ftpusers的禁止訪問。
匿名使用者許可權配置:

匿名使用者訪問的資料夾為:/var/ftp/,預設許可權是755。
anonymous_enable=YES:匿名使用者可以訪問。
anon_upload_enable=YES:匿名使用者可以上傳檔案(非目錄)。
anon_mkdir_write_enable=YES:匿名使用者可以上傳資料夾。
改完之後要記得更改訪問資料夾的許可權,不然會無法上傳。

gftp安裝

安裝,無需配置進入圖形化介面:

yum install gftp

在這裡插入圖片描述