mysql — использование PHP password_hash с чистым ftpd

Я работаю с реализацией чистого ftpd-сервера, которая настроена на получение аутентификационной информации из базы данных MySQL. Похоже, способ, которым изначально была реализована эта реализация, заключался в использовании аутентификации MD5, и, похоже, с этим хорошо работает. Тем не менее, MD5 должен идти.

Поэтому вместо использования MD5 я надеюсь найти способ сделать аутентификацию совместимой со встроенной в PHP функциональностью password_hash ($ password, PASSWORD_BCRYPT). Пароли пользователей FTP уже хэшируются и хранятся в базе данных с помощью password_hash (), и было бы здорово, если бы мы могли аутентифицировать информацию для входа в систему через pure-ftpd, используя хеши, которые извлекаются из базы данных.

Я прочитал документацию по чистому ftpd здесь: https://download.pureftpd.org/pub/pure-ftpd/doc/README.MySQL Но я все еще не понимаю, как я могу сделать эту работу.

Кто-нибудь из вас работал с этим раньше? Если да, есть ли у вас какие-либо советы о том, как это настроить?

Заранее спасибо за помощь!

1

Решение

После нескольких попыток заставить это работать, кажется, что чистый ftpd не поддерживает это по умолчанию. Итак, как мы в итоге заставили его работать на нас, так это через возможности «AUTHENTICATION MODULES» в pure-ftpd (https://download.pureftpd.org/pub/pure-ftpd/doc/README.Authentication-Modules).

У нас есть чистый ftpd, отправьте предоставленное имя пользователя & пароль к файлу PHP, который мы используем для аутентификации информации для входа. Затем мы отправляем ответ на чистый ftpd в следующем формате (в случае успеха):

auth_ok: 1
UID: хх
ГИД: уу
реж: / Главная / ZZ /./
конец

Если это НЕ удачно, мы отправляем:
auth_ok: 0 (или -1, в зависимости от причины сбоя)
конец

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]