溫馨提示×

centos里vsftp更新與升級步驟

小樊
33
2025-10-21 18:31:45
欄目: 智能運維

CentOS系統vsftpd更新與升級步驟

一、升級前準備工作

  1. 備份關鍵數據
    升級前務必備份vsftpd配置文件及用戶數據,防止操作失誤導致數據丟失。常用備份命令:

    sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak  # 備份主配置文件
    sudo cp -r /var/ftp /var/ftp.bak                              # 備份匿名用戶數據目錄(若有)
    sudo cp -r /var/lib/vsftpd /var/lib/vsftpd.bak                # 備份用戶會話及上傳文件數據
    
  2. 檢查當前版本
    通過以下命令確認當前vsftpd版本,便于后續驗證升級結果:

    vsftpd --version
    

    輸出示例:vsftpd: version 3.0.2。

  3. 更新系統軟件包
    確保系統基礎軟件包為最新狀態,避免依賴沖突:

    sudo yum update -y
    

二、使用YUM包管理器升級(推薦)

YUM是CentOS默認的包管理工具,可自動解決依賴關系,操作簡便。

  1. 升級vsftpd
    執行以下命令升級vsftpd至倉庫最新版本:

    sudo yum update vsftpd -y
    

    若需安裝特定版本(如3.0.2),可使用:

    sudo yum install vsftpd-3.0.2 -y
    
  2. 重啟服務并驗證
    升級完成后,重啟vsftpd服務使新版本生效:

    sudo systemctl restart vsftpd
    

    驗證版本:

    vsftpd --version  # 確認輸出版本已更新
    sudo systemctl status vsftpd  # 檢查服務運行狀態(應顯示“active (running)”)
    

三、手動編譯安裝升級(YUM無最新版本時)

若YUM倉庫中沒有所需版本,可通過源碼編譯安裝。

  1. 下載并解壓源碼包
    訪問vsftpd官方網站(vsftpd.beasts.org)下載最新穩定版,或使用wget命令:

    wget https://vsftpd.beasts.org/releases/vsftpd-3.0.5.tar.gz  # 替換為最新版本鏈接
    tar -zxvf vsftpd-3.0.5.tar.gz
    cd vsftpd-3.0.5
    
  2. 安裝編譯依賴
    編譯前需安裝必要依賴包,避免編譯失?。?/p>

    sudo yum install openssl-devel pam-devel libcap-devel tcp_wrappers-devel -y
    
  3. 卸載舊版本
    卸載系統自帶的舊版本vsftpd(避免殘留文件沖突):

    sudo rpm -e $(rpm -qa | grep vsftpd)
    
  4. 編譯并安裝
    執行以下命令編譯安裝:

    ./configure
    make
    sudo make install
    
  5. 恢復配置與服務

    • 將備份的配置文件復制回原路徑:
      sudo cp -p /etc/vsftpd/vsftpd.conf.bak /etc/vsftpd/vsftpd.conf
      
    • 若編譯安裝的二進制文件路徑為/usr/local/sbin/vsftpd,需修改配置文件中的user_list_file路徑(若有):
      sudo vi /etc/vsftpd/vsftpd.conf
      # 添加或修改:user_list_file=/etc/vsftpd/user_list
      
    • 創建systemd服務文件(便于用systemctl管理):
      sudo vi /etc/systemd/system/vsftpd.service
      
      內容如下:
      [Unit]
      Description=vsftpd FTP server
      After=network.target
      
      [Service]
      Type=simple
      ExecStart=/usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf
      ExecStop=/bin/kill -TERM $MAINPID
      ExecReload=/bin/kill -HUP $MAINPID
      Restart=on-failure
      RestartSec=5s
      
      [Install]
      WantedBy=multi-user.target
      
    • 重載systemd配置并啟動服務:
      sudo systemctl daemon-reload
      sudo systemctl start vsftpd
      sudo systemctl enable vsftpd  # 設置開機自啟
      
  6. 驗證升級結果
    檢查vsftpd版本及服務狀態:

    /usr/local/sbin/vsftpd -v  # 確認版本已更新
    sudo systemctl status vsftpd  # 檢查服務是否運行正常
    

四、注意事項

  • 依賴問題:手動編譯時需確保所有依賴包已安裝,否則編譯會失敗。
  • 配置兼容性:新版本可能調整配置項,升級后需對比新舊配置文件(如diff /etc/vsftpd/vsftpd.conf.bak /etc/vsftpd/vsftpd.conf),調整不兼容的參數。
  • 防火墻/SELinux:若服務器開啟了防火墻或SELinux,需放行FTP端口(默認21)及被動模式端口范圍(如50000-51000),并調整SELinux策略允許FTP訪問:
    sudo firewall-cmd --permanent --add-service=ftp
    sudo firewall-cmd --reload
    sudo setsebool -P ftpd_full_access on
    
  • 測試連接:升級后通過FTP客戶端(如ftp localhost或FileZilla)測試登錄、上傳/下載功能,確保服務正常。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女