Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Linux (Ubuntu, Debian, Red Hat, CentOS, Mint)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.07.2023, 15:11   #1
Counsellor
Новичок
Джуниор
 
Регистрация: 12.07.2023
Сообщений: 1
По умолчанию Авторизация в proftpd после вывода ENCRYPT в новом MySQL 8

Добрый день!
Ubuntu 22.04.2 LTS
mysql Ver 8.0.33-0ubuntu0.22.04.2 for Linux on x86_64 ((Ubuntu))
PHP Version 8.1.2-1ubuntu2.13
ProFTPD Version 1.3.7c
В связи с тем, что в MySQL 8 пропал метод шифрования ENCRYPT, для proftpd предлагается использование MD5, SHA1 и т.д.. Но в mod_sql они не поддерживаются, для этого надо подключить mod_sql_passwd, т.к. он вышел позднее чем mod_sql. В старых версиях proftpd настройки хранились в одном proftpd.conf и там же подключались модули. В новых, модули подключаются в файле modules.conf и для mod_sql используется свой конфигурационный файл. Я раскомментировал в modules.conf строку LoadModule mod_sql_passwd.c для подключения его при загрузке.
Написал файл конфигурации sql_passwd.conf

Код:
<IfModule mod_sql_passwd.c>
    SQLPasswordEngine on
    SQLPasswordMD5 on
    SQLPasswordSHA1 on
</IfModule>
В sql.conf исправил SQLAuthTypes с Crypt Plaintext на Crypt MD5 SHA1 Plaintext
Потом

Код:
systemctl restart proftpd
Далее в MySQL

Код:
UPDATE `ftpuser` SET `passwd` = SHA1('password') WHERE `ftpuser`.`id` = 5;
Пробую подключиться

Код:
331 Необходим пароль для пользователя pwd_chk
Password:
530 Некорректные данные аутентификации.
ftp: Login failed
При этом на существующего пользователя с не шифрованным паролем ответ:

Код:
331 Необходим пароль для пользователя TechData
Password:
230 Пользователь TechData подключён
Remote system type is UNIX.
Using binary mode to transfer files.
Может где то что-то еще надо включать?
В описании на mod_sql_passwd сказано, что необходимо включить поддержку OpenSSL.

Цитата:
NOTE: it is important that mod_sql_passwd appear after mod_sql in your --with-modules configure option:
Код:
$ ./configure --enable-openssl --with-modules=mod_sql:mod_sql_passwd ...
Цитата:
Then follow the usual steps:
Код:
$ make
 $ make install
Но мне не понятно в какой директории производить сборку?
Или, при уже установленном и настроенном proftpd предлагается выполнить

Код:
$ prxs -c -i -d mod_sql_passwd.c
Но я не найду где находится mod_sql_passwd.c. Поиском находится только mod_sql_passwd.so в /usr/lib/proftpd
Counsellor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Авторизация с хэш в mySql Aleksandr! C# (си шарп) 1 24.07.2020 10:57
Авторизация из БД MySql Diana528 Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 7 04.12.2014 18:55
Авторизация MySQL Rockot БД в Delphi 3 06.08.2014 19:15
Авторизация php+mysql kuba1981 PHP 9 02.09.2012 22:15
Фильтр вывода. Удаление после точки. sp_Иришка Общие вопросы C/C++ 1 15.10.2009 16:26