天天看點

[ECS7天實踐訓練營 進階路線] Day1 基于ECS搭建FTP服務Day1 基于ECS搭建FTP服務

Day1 基于ECS搭建FTP服務

背景知識

雲伺服器 | Elastic Compute Service

  • 優點:性能卓越、穩定可靠、彈性擴充的IaaS級别雲計算服務

FTP | File Transfer Protocol

  • FTP伺服器
    • 存儲檔案
    • 被通路資源
  • FTP用戶端
    • 通過FTP協定通路位于FTP伺服器上的資源
  • 優點:效率高,友善傳輸大檔案
  • port
    • 20 傳輸資料(主動模式)
    • 21 傳輸控制資訊

vsftpd | very secure FTP daemon

  • 環境: Linux、BSD、Solaris、 HP-UNIX等系統
  • 開源免費
  • 特征
    • 非常高的安全性需求
    • 帶寬限制
    • 良好的可伸縮性
    • 可建立虛拟使用者
    • 支援IPv6
    • 速率高

實踐

Step1. 通過ssh連接配接ECS伺服器

Step2. 安裝vsftpd

  • # 安裝
    yum install -y vsftpd
    
    # 服務自啟動
    systemctl enable vsftpd.service
    systemctl start vsftpd.service
    
    # 檢驗安裝結果
    netstat -antup | grep ftp           

Step3. 配置vsftpd

  • 指令
    # 修改配置檔案
    vim /etc/vsftpd/vsftpd.conf
    # 此處删除 anon_upload_enable=YES 前的注釋符号'#'
    # vim的儲存與退出: 按Esc鍵後輸入:wq
    
    # 給 ftp伺服器的資源放置檔案夾 寫權限
    chmod o+w /var/ftp/pub/
    
    # 重新開機vsfftp服務使修改生效
    systemctl restart vsftpd.service
    
    # 給ftp伺服器添加登入使用者
    # 實質是給伺服器系統增加使用者
    adduser ftptest
    passwd ftptest
    mkdir /var/ftp/test
    # 隻授權其通路test檔案夾
    chown -R ftptest:ftptest /var/ftp/test
    
    # 修改vsftpd配置檔案,此處為主動模式
    # 禁止匿名登入
    sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf
    # 開啟監聽
    sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf
    # 開啟ipv6
    sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf
    # 僅允許鳳文主目錄
    sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf
    # 啟用例外使用者名單
    sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf
    # 指定名單位址
    sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf
    # 允許寫根目錄
    echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
    # 指定通路目錄
    echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf
    
    # 建立例外使用者名單檔案
    touch /etc/vsftpd/chroot_list
    
    # 重新開機vsftpd服務使修改生效
    systemctl restart vsftpd.service           

Step4. 測試

bravo!

繼續閱讀