2017-04-11 70 views
1

我用純ftpd的服務器的實現,是建立從MySQL數據庫中提取信息的認證工作。它看起來像這個實現最初設置的方式是使用MD5身份驗證,並且它似乎適用於此。但是,MD5需要去。使用PHP的password_hash純-ftpd的

因此,而不是使用MD5,我希望能找到一種方法,使PHP的內置password_hash($密碼,PASSWORD_BCRYPT)功能兼容的認證。 FTP用戶的密碼已被散列並使用password_hash()存儲在數據庫中,如果我們可以通過pure-ftpd使用從數據庫中提取的散列驗證登錄信息,那將是非常好的。

我已經通過純ftpd的文檔在這裏讀到:https://download.pureftpd.org/pub/pure-ftpd/doc/README.MySQL但我還是不理解我怎樣才能使這項工作。

以前有沒有人和你一起工作過?如果是這樣,你有沒有關於如何設置它的任何建議?

在此先感謝您的幫助!

回答

1

嘗試多種方式來完成這項工作後,似乎純ftpd的默認不支持這一點。所以我們最終如何讓它爲我們工作是通過pure-ftpd(https://download.pureftpd.org/pub/pure-ftpd/doc/README.Authentication-Modules)中的「AUTHENTICATION MODULES」功能實現的。

我們將pure-ftpd發送提供的登錄名&密碼到一個PHP文件,我們用它來驗證登錄信息。然後,我們發回純的ftpd在這樣的格式(如果成功的話)的響應:

auth_ok:1 UID:XX GID:YY 目錄:/家庭/ ZZ /./ 結束

如果沒有成功,我們派: auth_ok:0(或-1,根據不同的原因,它失敗) 結束