Компьютерный форумПоискНавигацияНаиболее читаемоеСейчас на сайтеСейчас на сайте 0 пользователя и 12 гостя.
|
11. Установка Maia-Mailguard - Установка связки Postfix, MySQL, SpamAssassin, Maia в FreeBSD.11. Установка Maia-Mailguard - Установка связки Postfix, MySQL, SpamAssassin, Maia в FreeBSD.
Maia-Mailguard безусловно лучшая бесплатная утилита для настройки спам и антивирусных фильтров, из всех которые я когда либо использовал. Она позволяет пользователям устанавливать собственные настройки для фильтров спама и вирусов, администратор почтового сервера при этом может расслабиться в комнате отдыха, таким образом эта программа - серьезный помощник администратора. Узнать больше можно по адресу http://www.maiamailguard.com/. В данном пособии описана установка версии 1.0.2a_1. Установим Maia-Mailguard из портов. #cd /usr/ports/security/maia #make all install clean Достаточно опций меню по умолчанию, однако, не стесняйтесь выбрать больше приложений для сканера. Это не повредит). Создадим и наполним базу Maia-Mailguard #mysql -u root -p mysql (Введите пароль root для MySQL) >CREATE DATABASE maia; >GRANT ALL PRIVILEGES ON maia.* TO vscan@localhost IDENTIFIED BY ‘vscan_password‘; >FLUSH PRIVILEGES; >quit #cd /usr/local/share/doc/maia #mysql -u root -p maia < maia-mysql.sql Отредактируем файл …
# Your Maia database user’s login name
$username = “vscan“;
# Your Maia database user’s password
$password = “vscan_password“;
# The directory where Maia’s Perl scripts can be found.
$script_dir = “/var/amavisd/maia/scripts“;
…
# The directory where SpamAssassin’s local.cf file can be found.
$local_cf_dir = “/usr/local/etc/mail/spamassassin“; # default: let the script find it
…
# The directory where SpamAssassin’s core rules can be found.
$system_rules_dir = “/usr/local/share/spamassassin“; # default: let the script find it
…
# The directory where your amavis user’s user_prefs file can be found.
$user_rules_dir = “/var/amavisd/.spamassassin“; # default: let the script find it
…
# Location of your encryption key file, or undef to disable
#$key_file = “/var/amavisd/maia.key”;
…
# Base URL to Maia’s PHP scripts
$base_url = “https://www.domain.tld/maia/“; Запустим #/var/amavisd/maia/scripts/configtest.pl Замечание Существует известная проблема с утилитой ‘file()’ при работе configtest. Не волнуйтесь об этом, Maia находит и использует file(), даже если configtest говорит, что утилита не установлена. Это будет пофикшено в следующем выпуске Maia. Иначе, ПОЖАЛУЙСТА сообщите мне, если порт не правильно работает. Разрешим доступ ‘vscan’ к файлам Maia #cd /usr/local/etc #chgrp vscan maia.conf amavisd.conf Загрузим правила SpamAssassin #su – vscan #/var/amavisd/maia/scripts/load-sa-rules.pl --debug #exit Установим из портов Smarty Engine Template #cd /usr/ports/www/smarty #make all install clean Отредактируем файл …
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
; UNIX: “/path1:/path2″
include_path = “.:/usr/local/share/pear:/usr/local/share/smarty”
;
; Windows: “\path1;\path2″
;include_path = “.;c:\php\includes”
…Перезагрузим конфигурацию Apache #apachectl graceful Отредактируем файл … $maia_sql_dsn = “mysql://vscan:vscan_password@unix(/tmp/mysql.sock)/maia“; … $address_rewriting_type = 4; … $auth_method = “sql“; … // Database connection string to use for authentication. $auth_sql_dsn = “mysql://postfix:postfix_sql_password@unix(/tmp/mysql.sock)/postfix“; … // Name of the table that contains the user’s authentication info $auth_sql_table = “mailbox“; … // Name of the column that contains the user’s name $auth_sql_username_column = “username“; … // Name of the column that contains the user’s password $auth_sql_password_column = “password“; … // Name of the column that contains the user’s e-mail address $auth_sql_email_column = “username“; … // Password encryption type: $auth_sql_password_type = “crypt“; … Создадим и отредактируем файл Alias /maia/ "/usr/local/www/maia/" <Directory "/usr/local/www/maia/" > AllowOverride None Options None Order allow,deny Allow from all </Directory > Перезрузим Apache #apachectl graceful Тест Зайдите на страницу “https://domain.tld/maia/admin/configtest.php“. Вы увидите, что у нас не установлено много модулей PEAR. Так давайте вернемся к началу и установим их. Конечно установка всех “optional” модулей ваше дело. Установка PEAR::Mail_Mime из портов #cd /usr/ports/mail/pear-Mail_Mime #make all install clean Установка PEAR::Mail_mimeDecode из портов #cd /usr/ports/mail/pear-Mail_mimeDecode #make all install clean Установка PEAR::DB из портов #cd /usr/ports/databases/pear-DB #make all install clean Установка PEAR::Pager из портов #cd /usr/ports/devel/pear-Pager #make all install clean Установка PEAR::Net_Socket из портов #cd /usr/ports/net/pear-Net_Socket #make all install clean Установка PEAR::Net_SMTP из портов #cd /usr/ports/net/pear-Net_SMTP #make all install clean В меню установки необходимо выбрать “PEAR_AUTH_SASL”. Установим PEAR::Log из портов #cd /usr/ports/sysutils/pear-Log #make all install clean В меню установки необходимо выбрать “Pear_DB”. Замечание Если вы хотите использовать графические утилиты Maia, то вам нужно найти все модули в /usr/ports/graphics и /usr/ports/textproc. (Такие как): Пропатчим модуль pear-Net_IMAP Это нужно только если вы все таки поставили графические модули PEAR #cd /usr/local/share/pear #fetch http://www.purplehat.org/downloads/postfix_guide/Pie.php.diff #patch -p0 < Pie.php.diff Перегрузим конфигурацию Apache #apachectl graceful Отредактируем файл ... $max_servers = 2; # number of pre-forked children (2..15 is common) ... $mydomain = 'domain.tld'; ... #$key_file = "$MYHOME/maia.key"; ... $DO_SYSLOG = 1; ... @lookup_sql_dsn = ( ['DBI:mysql:maia:localhost', 'vscan', 'vscan_password'] ); ... $unrar = ['rar', 'unrar']; ... $myhostname = 'host.domain.tld'; ... $X_HEADER_LINE = "Maia Mailguard"; ... ### http://www.clamav.net/ ['ClamAV-clamd', \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.sock"], qr/\bOK$/, qr/\bFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ], ... Добавим Maia-Mailguard в автозагрузку #echo 'maia_enable="YES"' >> /etc/rc.conf #/usr/local/etc/rc.d/maia start Тест Перейдите на страницу “https://domain.tld/maia/“. Вы должны увидеть страницу с предложением входа. Это отлично! Тогда войдите и получите привилегии администратора… Вместо страницы по умолчанию “https://domain.tld/maia/login.php”, зайдите на страницу “https://domain.tld/maia/login.php?super=register” и залогинтесь под существующим виртуальным пользователем (Наиболее вероятно пользователем, которого вы добавили с помощью программы Postfixadmin ранее). Необходимо использовать полный адрес электронной почты в качестве логина в Maia-Mailguard. То есть: username@domain.tld. Этот пользователь получит привилегии администратора в Maia (Так что будьте осторожны с выбором пользователя). Теперь, когда вы вошли в Maia-Mailguard как администратор, нажмите на ссылку “Admin” в верху страницы (Картинка ввиде ключа). В “Administration Menu” нажмите “System Configuration“. У каждого почтового сервера будут разные настройки. Однако, есть некоторые вещи, о которых Вы должны знать:
Важно Для каждого домена, созданного при помощи Postfixadmin или любым другим способом, нужно создать домен в Maia, чтобы она могла создать пользователей. Это могло бы показаться избыточной проблемой, но оно действительно имеет значение и вот почему. Когда Maia получает почту для пользователя, который не существует, она использует настройки для домена по умолчанию (@.). Это прекрасно. Однако, если Maia считает, что письмо может быть спамом, то пользователь, не сможет восстановить это сообщение, так как установки по умолчанию не хранят карантин для несуществующих пользователей. Убедитесь, что добавили в Maia, все домены добавленные через PostfixAdmin. Отредактируем …
# Maia-Mailguard
#
content_filter=smtp-amavis:[127.0.0.1]:10024
# LOCAL PATHNAME INFORMATION
#
# The queue_directory specifies the location of the Postfix queue.
# This is also the root directory of Postfix daemons that run chrooted.
# See the files in examples/chroot-setup for setting up Postfix chroot
# environments on different UNIX systems.
#
queue_directory = /var/spool/postfix
…Отредактируем Добавьте красный текст в конец файла. smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=2400
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes
-o max_use=20
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_delay_reject=no
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings
Перегрузите Postfix: #postfix reload Отредактируйте задания cron для пользователя “vscan”: #crontab -u vscan -e Скопируйте и вставьте в crontab пользователя vscan. #Load new rules and store into Maia database. 30 4 * * * /var/amavisd/maia/scripts/load-sa-rules.pl > /dev/null #Train Spam Assassin. 0 * * * * /var/amavisd/maia/scripts/process-quarantine.pl --learn --report > /dev/null #Take a snapshot of the stats at the start of every hour. 0 * * * * /var/amavisd/maia/scripts/stats-snapshot.pl > /dev/null #Purge mail that has not been confirmed. 0 23 * * * /var/amavisd/maia/scripts/expire-quarantine-cache.pl > /dev/null #Send quarantine reminders. 0 15 * * * /var/amavisd/maia/scripts/send-quarantine-reminders.pl > /dev/null #Send quarantine digests. 0 15 * * * /var/amavisd/maia/scripts/send-quarantine-digests.pl > /dev/null #Force bayesian auto-expiry during off-peak hours. 25 2 * * * /usr/local/bin/sa-learn --sync --force-expire > /dev/null Внимание!!! Нашел ошибку при очередной настройке почтового сервера. #cd /usr/ports/mail/pear-Mail_mimeDecode #make install clean В свое время я русифицировал интерфейс Maia. Maia Mailguard Language Packs Russian (RU).
|
Вход для пользователейtags in БлогНовые записи в блогах
Счетчики |