萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

解決 Pure-FTPd 登入失敗 "530 Login authentication failed" 錯誤(啟用 PureDB 認證)

Pure-FTPd 預設可能未啟用 PureDB 認證模組,導致帳號密碼正確仍回報 530 Login authentication failed。本文透過啟用調試模式分析協議流程,找出原因並提供修正步驟。

現象重現與調試

使用 lftp 連線並開啟 debug:

lftp
open -u feifei,"123456" 192.168.2.23
debug
ls

輸出顯示:

---> USER feifei
<--- 331 User feifei OK. Password required
---> PASS 123456
<--- 530 Login authentication failed

原因分析

Pure-FTPd 透過 /etc/pure-ftpd/auth/ 目錄下的符號連結決定啟用哪些認證模組,並按檔名排序優先權。檢查該目錄:

ls /etc/pure-ftpd/auth/
# 僅有 65unix 70pam,缺少 puredb

解決方法:建立 PureDB 認證連結

cd /etc/pure-ftpd/auth
ln -s /etc/pure-ftpd/conf/PureDB 60puredb  # 60 為優先權,較 unix/pam 早
ls
# 60puredb 65unix 70pam
/etc/init.d/pure-ftpd restart

重啟後啟動參數會包含 -l puredb:/etc/pure-ftpd/pureftpd.pdb,認證即正常。

驗證

再次以 lftp 連線測試,應能成功登入並列出目錄。

補充

  • 確認 PureDB 檔案 /etc/pure-ftpd/pureftpd.pdb 存在(由 pure-pw mkdb 產生)。
  • 若使用 TLS,需另行設定憑證與 TLS 選項。

copyright © 萬盛學電腦網 all rights reserved