如何在ArchLinuxVPS上设置Exim、Spamassassin、Clamd和Dovecot

来自菜鸟教程
跳转至:导航、​搜索

介绍


本教程将介绍如何在运行 Arch Linux 的 VPS 上安装和配置电子邮件系统。 这将允许我们以我们在 VPS(droplet)上创建的 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

我们在 systemd 中启用了 spamd,因此它将在重新启动后启动。 然后我们将立即在后台运行它:

systemctl enable spamassassin
systemctl start spamassassin

配置 Clam 反病毒


我们将编辑 clamav 的配置。 现在打开文件:

nano /etc/clamav/clamd.conf

我们将通过将默认的 10M 更改为 16M 来设置更高的附件限制以进行扫描。 我们还将启用系统中的其他组使用 clamav。 另外,注释掉“示例”,如下所示:

#Example
StreamMaxLength 16M
AllowSupplementaryGroups yes

我们还通过编辑 /etc/clamav/freshclam.conf 文件来启用 clamav 更新程序:

nano /etc/clamav/freshclam.conf

像我们上面所做的那样注释掉“示例”:

#Example

接下来,将 clamav 添加到 exim 组,以便 clamav 可以打开 exim 邮件文件并相应地扫描它们:

usermod -G exim clamav

启动并启用服务:

systemctl enable freshclamd
systemctl enable clamd
systemctl start freshclamd

等待几分钟以更新 /var/lib/clamav 中的数据库,然后键入:

systemctl start clamd

配置进出口


接下来,我们将配置不带 SSL 的 exim,添加我们的域,并设置 dovecot smtp 身份验证。 在 /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.conf 后,我们可以启用 MTA 并启动它:

systemctl enable exim
systemctl start exim

我们可以随时通过跟踪 /var/log/exim/ 中的日志文件来检查 out 邮件守护程序发生了什么:

tail /var/log/exim/mainlog

安装和配置 Dovecot


接下来,安装 dovecot imap/pop3 守护进程:

pacman -S dovecot

重命名 dovecot 的主配置文件并在那里启用 imap 和 pop3:

cp /etc/dovecot/dovecot.conf.sample /etc/dovecot/dovecot.conf
nano /etc/dovecot/dovecot.conf

将协议行更改为:

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 可以对我们进行身份验证。 在“service auth {”下的 /etc/dovecot/conf.d/10-master.conf 中,添加:

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/用户名-m -k /etc/skel用户名

设置密码:

密码用户名

配置您的邮件客户端


我们现在可以使用 Thunderbird 邮件客户端和我们刚刚配置的用户名和密码,通过我们的 Arch Linux VPS 发送和接收电子邮件。

如果你还没有在你的本地机器上安装 Thunderbird

此设置很大程度上取决于您在本地计算机上使用的操作系统。

您将需要添加一个新的邮件帐户。 在某些情况下,这将在首选项下,然后是帐户设置。 在其他操作系统中,您可以通过单击文件,然后选择新建,然后选择“现有邮件帐户”来访问它。

[[File:“%3Ca]] https://assets.digitalocean.com/articles/arch_mail/new_account.png ” alt =“Thunderbird 添加新帐户” />

设置帐户的名字和姓氏,然后键入电子邮件地址,例如:

用户名@ domain.com

如果您没有域,则可以使用您的 VPS 的 IP 地址。 也输入密码。

[[File:“%3Ca]] https://assets.digitalocean.com/articles/arch_mail/account_settings.png ” alt =“雷鸟账户设置” />

点击 Continue,Thunderbird 应该会自动检测 IMAP 设置。 单击 完成

如果 Thunderbird 弹出一个关于我们的电子邮件通信缺乏加密的信息窗口,请检查“我了解风险”,然后单击 完成

[[File:“%3Ca]] https://assets.digitalocean.com/articles/arch_mail/ssl_warning.png ” alt =“Thunderbird 无 SSL 警告” />

通过使用已知电子邮件地址来回发送电子邮件来测试您的电子邮件。 您可能需要检查其他帐户上的垃圾邮件文件夹。