LINUX.ORG.RU
ФорумAdmin

Debian, dspam, mysql


0

0

Который раз пытаюсь настроить dspam вместо асасина ( не спрашивать почему, надо) но хочеться чтобы данные в мускуле хранились. И каждый раз облом....не хочет дспам с мускулем работать, если поменять на hash хранилище - все гуд. Это глюк дебиана? Или я чейто не то делаю?

dpkg -l | grep dspam
ii  dspam                        3.6.8-5                    is a scalable, fast and statistical anti-spa
ii  dspam-webfrontend            3.6.8-5                    DSPAM is a scalable and statistical anti-spa
ii  libdspam7                    3.6.8-5                    DSPAM is a scalable and statistical anti-spa
ii  libdspam7-drv-db4            3.6.8-5                    DSPAM is a scalable and statistical anti-spa
ii  libdspam7-drv-mysql          3.6.8-5                    DSPAM is a scalable and statistical anti-spa


cat /etc/dspam/dspam.conf | grep Storage
# StorageDriver: Specifies the storage driver backend (library) to use.
StorageDriver /usr/lib/dspam/libmysql_drv.so



Документацию читать не пробовали? Почти на 100% проблема с авторизацией пользователя dspam на мускуле или с созданием нужных таблиц (и вообще базы данных) в мускуле.

geekkoo
()
Ответ на: комментарий от geekkoo

Пробовал, и не один раз и не одну статью...

dpkg-reconfigure libdspam7-drv-mysql делает необходимое по настройке параметров доступа к базе и создает необходимые таблицы...Более того, я даже изменил пользователя с непревелегированного на root ( уж рутовый аккаунт может создавать и писать любые таблицы ) один хрен в мускуле пусто.

Sargan
() автор топика
Ответ на: комментарий от Sargan

Если уверены, что с этим все нормально, то как идёт соединение с mysqld - через именованный сокет или по сети? В некоторых конфигурациях mysql делают skip-networking с тем, чтобы сервер был доступен только с локального компьютера через именованный сокет.

geekkoo
()
Ответ на: комментарий от geekkoo

х.з

[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
language        = /usr/share/mysql/english
skip-external-locking

Sargan
() автор топика
Ответ на: комментарий от Sargan

а соединение в dspam прописано через сокет и через порт.

Sargan
() автор топика
Ответ на: комментарий от Sargan

А в действительности 3306 порт прослушивается? Или только /var/run/mysqld/mysqld.sock? Во втором случае - у пользователя dspam достаточно прав, чтобы добраться до /var/run/mysqld/mysqld.sock и что-то туда записать или прочитать?

geekkoo
()
Ответ на: комментарий от Sargan

точнее слушает, но после каждой перегрузки на произвольном порту

 netstat -ap| grep mysql
tcp        0      0 localhost:mysql         *:*                     LISTEN     24277/mysqld
unix  2      [ ACC ]     STREAM     LISTENING     5117504  24277/mysqld        /var/run/mysqld/mysqld.sock

Sargan
() автор топика
Ответ на: комментарий от anonymous

Да на одном....Я помню из сырцов собирал dspam, так там мускул работал, а вот родные деб пакеты не хотят...

anonymous
()
Ответ на: комментарий от Sargan

Значит все должно работать!
Осталось проверить, что записи в dspam.conf
MySQLServer
MySQLPort
MySQLUser
MySQLPass
MySQLDb
MySQLCompress
соответствуют настройкам mysqld.

geekkoo
()

У меня работает.

Zulu ★★☆☆
()
Ответ на: комментарий от geekkoo

конфиг dspam

MySQLServer       /var/run/mysqld/mysqld.sock
#MySQLPort         3306
MySQLUser         dspam
MySQLPass         XXXXX
MySQLDb           dspam
#MySQLCompress          false

my.cf

[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
language        = /usr/share/mysql/english
skip-external-locking

character_set_server=UTF8
character_set_client=UTF8
#character_set_connection=UTF8




Должно бегать, а не хочет.... И в хидере письма нет упоминания о проверке dspam...


/etc/postfix/main.cf

dspam_destination_recipient_limit = 1
smtpd_client_restrictions =
 check_client_access pcre:/etc/postfix/dspam_filter_access

/etc/postfix/dspam_filter_access
/./   FILTER dspam:dspam


/etc/postfix/master.cf

dspam   unix    -       n       n       -       10      pipe
  flags=Ru user=dspam argv=/usr/bin/dspam --deliver=innocent --user $user -i -f $sender -- $recipient

Sargan
() автор топика
Ответ на: комментарий от Sargan

еще  момент , если dspam запускать с параметрами

#MySQLServer       /var/run/mysqld/mysqld.sock
MySQLPort         3306
MySQLUser         dspam
MySQLPass         cup6Chee
MySQLDb           dspam
#MySQLCompress          false

то говорит

Jan 12 10:10:11 thunderbird dspam[23418]: received signal. waiting for processing threads to exit.
Jan 12 10:10:11 thunderbird dspam[23418]: daemon is down.
Jan 12 10:10:11 thunderbird dspam[23382]: Daemon process starting
Jan 12 10:10:11 thunderbird dspam[23382]: unable to locate mysql configuration


странно, он ведь должен в этом случае по сети подключаться, или нет?

Sargan
() автор топика
Ответ на: комментарий от Sargan

В этом случае MySQLServer - должен быть именем компьютера (localhost?)\ ведь к мускулю как бы через сеть подключаются.
sudo -u dspam ls -lA /var/run/mysqld/mysqld.sock работает без приключений?

geekkoo
()
Ответ на: комментарий от Sargan

Поторопился я .... hash хранилище тоже не работает:( переэксперентировал с различными способами взаимодействия dspam и postfix.... ни хрена не получаеться...Я не знаю... имеет ли значение что пользователи в ldap?

В логах говорится что почта прошла через dspam ( он  у менят как content filter ) в хидере письма никаких отметок дспама...

Да после доставки в ящик ( dovecot ) еще какое то время висит вот такой процесс (7441)

ps axu| grep dspam
root      7336  0.0  0.4  12080  1228 pts/11   S    12:34   0:00 /usr/bin/dspam --daemon --debug
postfix   7441  0.5  1.5   7912  4032 ?        S    12:35   0:00 smtpd -n smtp -t inet -u -o content_filter lmtp:unix:/tmp/dspam.sock

Может в это дело?

Sargan
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.