Настройка Exim, Spamassassin, Clamd и Dovecot на Arch Linux
Arch Linux | Комментировать запись
Данное руководство поможет установить и настроить почтовую систему на сервере Arch Linux. Это позволит принимать и отправлять электронную почту. Получить доступ к почте и управлять ей можно при помощи локального почтового клиента (например, Thunderbird).
Примечание: Руководство не охватывает настройку SSL, что влияет на безопасность почтовой системы.
Установка Exim и антивируса
Для начала нужно установить агент передачи почты Exim, который отвечает за прием сообщений и их отправку на удаленные почтовые серверы. Также Exim выполняет аутентификацию пользователей при помощи Dovecot; это позволяет отправлять электронную почту с удаленных компьютеров, используя Arch Linux VPS в качестве посредника.
Для установки Exim, антивируса и антиспама запустите команду:
pacman -S exim spamassassin clamav
Настройка Spamassassin
Прежде чем запустить демон spamd, нужно обновить правила Spamassassin.
/usr/bin/vendor_perl/sa-update -v
Добавьте spamd в systemd, чтобы демон запускался автоматически. После этого нужно перевести его в фоновый режим:
systemctl enable spamassassin
systemctl start spamassassin
Настройка антивируса Clam
Отредактируйте конфигурационный файл Clam:
nano /etc/clamav/clamd.conf
Установите более высокий лимит вложений для сканирования; для этого нужно увеличить значение по умолчанию (10М) до 16M.
Также нужно открыть другим системным группам доступ к антивирусу Clam и закомментировать Example, как показано ниже:
#Example
StreamMaxLength 16M
AllowSupplementaryGroups yes
Чтобы настроить обновление антивируса, отредактируйте файл /etc/clamav/freshclam.conf:
nano /etc/clamav/freshclam.conf
Закомментируйте Example:
#Example
После этого добавьте clamav в группу exim, чтобы антивирус clamav мог открывать файлы электронной почты exim и сканировать их на наличие вирусов.
usermod -G exim clamav
Запустите сервисы:
systemctl enable freshclamd
systemctl enable clamd
systemctl start freshclamd
На обновление БД в /var/lib/clamav уйдёт несколько минут. После этого введите:
systemctl start clamd
Настройка Exim
Теперь настройте Exim (как говорилось ранее, поддержка SSL не входит в рамки руководства), добавьте домены и включите аутентификацию dovecot. Откройте файл /etc/mail/exim.conf в текстовом редакторе и добавьте в него следующие строки:
nano /etc/mail/exim.conf
primary_hostname = yourdomain.com
domainlist local_domains = @ : yourdomain.com
av_scanner = clamd:/var/lib/clamav/clamd.sock
spamd_address = 127.0.0.1 783
Затем закомментируйте настройки SSL (если они до сих пор раскомментированы):
#tls_advertise_hosts = *
#tls_certificate = /etc/ssl/exim.crt
#tls_privatekey = /etc/ssl/exim.pem
В разделе acl_check_data: раскомментируйте следующие строки, чтобы агент exim мог сканировать входящие сообщения на наличие вредоносных программ и спама:
deny malware = *
message = This message contains a virus ($malware_name).
warn spam = nobody
add_header = X-Spam_score: $spam_score\n\
X-Spam_score_int: $spam_score_int\n\
X-Spam_bar: $spam_bar\n\
X-Spam_report: $spam_report
Затем найдите раздел begin authenticators и введите учётные данные для dovecot:
dovecot_login:
driver = dovecot
public_name = LOGIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
dovecot_plain:
driver = dovecot
public_name = PLAIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
Сохраните и закройте файл.
Теперь можно включить агент пересылки сообщений exim:
systemctl enable exim
systemctl start exim
Чтобы узнать, как работает почтовый демон, запросите последние строки лог-файлов в /var/log/exim/:
tail /var/log/exim/mainlog
Установка и настройка Dovecot
Теперь можно приступать к настройке imap/pop3 демона Dovecot.
pacman -S dovecot
Переименуйте главный конфигурационный файл Dovecot и включите imap и pop3.
cp /etc/dovecot/dovecot.conf.sample /etc/dovecot/dovecot.conf
nano /etc/dovecot/dovecot.conf
Строка protocols должна выглядеть так:
protocols = imap pop3
Сохраните и закройте файл.
Для боле тонкой настройки демона можно отредактировать другие конфигурационные файлы; скопируйте их:
cp /usr/share/doc/dovecot/example-config/conf.d/* /etc/dovecot/conf.d/
В файле /etc/dovecot/conf.d/10-ssl.conf нужно отключить ssl; для этого в файл нужно добавить такие настройки:
nano /etc/dovecot/conf.d/10-ssl.conf
ssl = no
#ssl_cert = </etc/ssl/certs/dovecot.pem
#ssl_key = </etc/ssl/private/dovecot.pem
Разрешите аутентификацию открытым текстом в файле /etc/dovecot/conf.d/10-auth.conf:
nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no
В файле /etc/dovecot/conf.d/10-mail.conf укажите местонахождение электронной почты:
nano /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox:~/mail:INBOX=/var/mail/%u
После этого нужно настроить аутентификацию dovecot для exim. Откройте файл /etc/dovecot/conf.d/10-master.conf и добавьте в раздел service auth { следующие параметры:
nano /etc/dovecot/conf.d/10-master.conf
unix_listener auth-client {
mode = 0660
user = exim
}
Включите и запустите dovecot:
systemctl enable dovecot
systemctl start dovecot
Настройка системных пользователей
Создайте нового системного пользователя:
useradd -d /home/USERNAME -m -k /etc/skel USERNAME
Установите пароль для него:
passwd USERNAME
Настройка почтового клиента
Примечание: В руководстве используется почтовый клиент Thunderbird. Установите его на сервер, если ранее он не был установлен.
Теперь при помощи нового системного пользователя можно отправлять и получать электронную почту.
Эта настройка в значительной степени зависит от операционной системы, которая используется на локальном компьютере.
Добавьте новый почтовый аккаунт. Для этого нужно открыть Preferences и выбрать Account Settings; иногда для этого нужно открыть File, выбрать New, а затем Existing Mail Account.
Выберите имя учётной записи, а затем введите адрес электронной почты в формате:
user_name@domain.com
Если у вас нет доменного имени, введите IP-адрес виртуального выделенного сервера. также нужно указать пароль.
Your name: 8host
Email address: 8host@arch.linux
Password: **********
Нажмите Continue, и Thunderbird автоматически определит настройки IMAP. После этого нажмите Done.
Если Thunderbird выведет информационное окно в связи с отсутствием шифрования в данной почтовой системе, установите флажок I understand the risks, а затем нажмите Done.
Теперь проверьте, как работает почтовая система. Попробуйте отправить несколько сообщений на известные вам адреса электронной почты. К примеру, если у вас есть несколько адресов электронной почты, отправьте письмо на какой-нибудь из них. Если сообщение не появилось в потовом ящике, откройте папку спама.
Tags: Clamd, Dovecot, Exim, IMAP, Perl, Spamassassin