MD5 хэши в базе exim'а
Добавлено: 2009-02-24 12:12:01
Добрый,
Захотелось хранить хэши паролей в БД экзима, а не пароли в открытом виде.
Пароли пока что передаются от клиента к серверу в открытом виде, шифрование канала следующим этапом.
Вобщем что есть сейчас, нашел на форуме (или где-то в каментах к статьям) :
Авторизация по pop3 проходит, а вот на отправку почта по каким-то причинам не уходит.
Сначала выдавалось окно запроса пароля и пароль не подходил.
"Видимо проблема в секции аутентификаторов" подумал я и стал искать на форуме что да почему.
Нашел темку, в которой написано что аутентификацию в таком случае (в случае когда в базе MD5 хэши) нужно делать средствами довекота.
Нашел вот это :
но у меня в папке /var/run/dovecot/ не сокета auth-client, вот все что есть :
поставил вместо auth-client auth-master и теперь пароль подходит, НО почта все равно не уходит, долго висит пытаясь отправится и все тишина так бывает когда не запущен демон, но у меня он 100% запущен и слушает порт. Посмотрел wireshark'ом соединение устанавливается, происходит обмен приветствиями, клиент посылает пароль в base64, сервер ему отвечает что получил и все на этом глухо. В логах пусто!
Извечный вопрос : где копать?
Захотелось хранить хэши паролей в БД экзима, а не пароли в открытом виде.
Пароли пока что передаются от клиента к серверу в открытом виде, шифрование канала следующим этапом.
Вобщем что есть сейчас, нашел на форуме (или где-то в каментах к статьям) :
Так и сделано. В базе действительно хранятся хэши.Все работает отлично, тока вот нафига пароли в базе в текстовом виде то хранить?
Можно сделать все через MD5 например
В таком случае в файле настроек SQL для dovecot-а пишем
default_pass_scheme = PLAIN-MD5
В конфиге postfixadmin, а меняем $CONF['encrypt'] = "md5";
Ну и соответственно в конфиге Exim-а меняем все SQL запросы которые запрашивают пароль на password=MD5(...)
Таким образом все пароли в базе лежат как md5 хашек )
Авторизация по pop3 проходит, а вот на отправку почта по каким-то причинам не уходит.
Сначала выдавалось окно запроса пароля и пароль не подходил.
"Видимо проблема в секции аутентификаторов" подумал я и стал искать на форуме что да почему.
Нашел темку, в которой написано что аутентификацию в таком случае (в случае когда в базе MD5 хэши) нужно делать средствами довекота.
Нашел вот это :
Код: Выделить всё
begin authenticators
auth_plain:
driver = dovecot
public_name = PLAIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
auth_login:
driver = dovecot
public_name = LOGIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
Код: Выделить всё
ls -lh /var/run/dovecot/
total 4
srw------- 1 mailnull wheel 0B Feb 24 11:38 auth-master
srw------- 1 root wheel 0B Feb 24 11:38 auth-worker.66542
srwxrwxrwx 1 root wheel 0B Feb 24 11:38 dict-server
drwxr-x--- 2 root dovecot 512B Feb 24 11:38 login
-rw------- 1 root wheel 6B Feb 24 11:38 master.pid
Извечный вопрос : где копать?