Настройка Exim, Spamassassin, Clamd и Dovecot на 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: , , , , ,

Добавить комментарий