1. 程式人生 > >基於CentOS搭建搭建FTP檔案服務

基於CentOS搭建搭建FTP檔案服務

1. 安裝並啟動 FTP 服務

  • 安裝 VSFTPD

    使用 yum 安裝 vsftpd

    yum install vsftpd -y
  • 啟動 VSFTPD

    安裝完成後,啟動 FTP 服務:

    service vsftpd start

    啟動後,可以看到系統已經監聽了 21 埠:

    netstat -nltp | grep 21

2. 配置 FTP 許可權

目前 FTP 服務登陸允許匿名登陸,也無法區分使用者訪問,我們需要配置 FTP 訪問許可權

  • 瞭解 VSFTP 配置

    vsftpd 的配置目錄為 /etc/vsftpd,包含下列的配置檔案:

    • vsftpd.conf 為主要配置檔案
    • ftpusers 配置禁止訪問 FTP 伺服器的使用者列表
    • user_list 配置使用者訪問控制
  • 阻止匿名訪問和切換根目錄

    匿名訪問和切換根目錄都會給伺服器帶來安全風險,我們把這兩個功能關閉。

    編輯 /etc/vsftpd/vsftpd.conf,找到下面兩處配置並修改:

    
    # 禁用匿名使用者
    
    anonymous_enable=NO
    
    
    # 禁止切換根目錄
    
    chroot_local_user=YES

    重新啟動 FTP 服務

    service vsftpd restart
  • 建立 FTP 使用者

    建立一個使用者 ftpuser

    useradd ftpuser

    為使用者 ftpuser

    設定密碼 :

    echo "3oEiU5s7" | passwd ftpuser --stdin
  • 限制該使用者僅能通過 FTP 訪問

    限制使用者 ftpuser 只能通過 FTP 訪問伺服器,而不能直接登入伺服器:

    usermod -s /sbin/nologin ftpuser
  • 為使用者分配主目錄

    為使用者 ftpuser 建立主目錄並約定:

    /data/ftp 為主目錄, 該目錄不可上傳檔案

    /data/ftp/pub 檔案只能上傳到該目錄下

    mkdir -p /data/ftp/pub

    建立登入歡迎檔案 :

    echo "Welcome to use FTP service." > /data
    /ftp/welcome.txt

    設定訪問許可權:

    chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub

    設定為使用者的主目錄:

    usermod -d /data/ftp ftpuser
  • 完成