<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Воронин: заметки с тегом SpamAssassin</title>
<link>https://voronin.one/tags/spamassassin/</link>
<description>воронин, voronin, it</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.4 (v4171)</generator>

<itunes:subtitle>воронин, voronin, it</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>переносим базу SpamAssassin bayes в MySQL</title>
<guid isPermaLink="false">47</guid>
<link>https://voronin.one/all/perenosim-bazu-spamassassin-bayes-v-mysql/</link>
<pubDate>Tue, 13 Jun 2023 17:59:28 +0300</pubDate>
<author></author>
<comments>https://voronin.one/all/perenosim-bazu-spamassassin-bayes-v-mysql/</comments>
<description>
&lt;p&gt;для начала проверим версию SpamAssassin&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ sudo spamassassin -V
SpamAssassin version 3.4.6
  running on Perl version 5.32.1&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;в нашем случае это 3.4.6&lt;/p&gt;
&lt;p&gt;теперь качаем нужный файл со структурой mysql&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ cd ~
$ wget http://svn.apache.org/repos/asf/spamassassin/tags/spamassassin_release_3_4_6/sql/bayes_mysql.sql&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;подключаемся к движку базы и загружаем структуру&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ mysql -uroot -p
MariaDB [(none)]&amp;gt; CREATE DATABASE sa_bayes;
MariaDB [(none)]&amp;gt; USE sa_bayes;
MariaDB [(none)]&amp;gt; SOURCE ~/bayes_mysql.sql;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;создадим пользователя &lt;b&gt;sa_user&lt;/b&gt; с паролем &lt;b&gt;Pa$$W0rd&lt;/b&gt; (замените на свой) и правами на нашу базу&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;MariaDB [(none)]&amp;gt; GRANT SELECT, INSERT, UPDATE, DELETE ON sa_bayes.* TO sa_user@localhost IDENTIFIED BY &amp;#039;Pa$$W0rd&amp;#039;;
MariaDB [(none)]&amp;gt; FLUSH PRIVILEGES;
MariaDB [sa_bayes]&amp;gt; quit;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;отредактируем конфиг &lt;b&gt;/etc/mail/spamassassin/local.cf&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;use_bayes          1
bayes_auto_learn   1
bayes_auto_expire  1

# Store bayesian data in MySQL.
# Please make sure you have correct server address, port and database name.
bayes_store_module Mail::SpamAssassin::BayesStore::MySQL
bayes_sql_dsn      DBI:mysql:sa_bayes:127.0.0.1:3306

# Store bayesian data in PostgreSQL.
# Please make sure you have correct server address, port and database name.
#bayes_store_module Mail::SpamAssassin::BayesStore::PgSQL
#bayes_sql_dsn      DBI:Pg:database=sa_bayes;host=127.0.0.1;port=5432

# SQL username and password.
bayes_sql_username sa_user
bayes_sql_password Pa$$W0rd

# Override the username used for storing data in the database.
# This could be used to group users together to share bayesian filter data.
# You can also use this config option to trick sa-learn to learn data as a specific user.
#bayes_sql_override_username vmail
bayes_sql_override_username amavis&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;рестартим службу&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ sudo service amavis restart&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;проверяем, скармливаем тестовое сообщение&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ sa-learn --spam --username=amavis /usr/share/doc/spamassassin/examples/sample-spam.txt
Learned tokens from 1 message(s) (1 message(s) examined)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;и проверим наполняемость базы&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;$ mysql -uroot -p
MariaDB [(none)]&amp;gt; USE sa_bayes;
MariaDB [sa_bayes]&amp;gt; SELECT username,spam_count,ham_count FROM bayes_vars;
+----------+------------+-----------+
| username | spam_count | ham_count |
+----------+------------+-----------+
| amavis   |          1 |         1 |
+----------+------------+-----------+
1 row in set (0,000 sec)
MariaDB [sa_bayes]&amp;gt; quit;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;и не забудьте отредактировать файл резервирования &lt;b&gt;/var/vmail/backup/backup_mysql.sh&lt;/b&gt;, чтобы добавить и нашу базу&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# Databases we should backup.
# Multiple databases MUST be seperated by SPACE.
export DATABASES=&amp;#039;mysql vmail roundcubemail amavisd iredadmin sogo iredapd sa_bayes&amp;#039;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;PS мне скрипт резервирования не пришлось менять, там уже быза бала прописана&lt;/p&gt;
</description>
</item>


</channel>
</rss>