当前位置: 首页 > 科技观察

如何在Ubuntu环境下搭建邮件服务器(三)_0

时间:2023-03-14 13:53:55 科技观察

在本系列的***中,我们将详细介绍如何在Dovecot和Postfix中设置虚拟用户和邮箱。欢迎回来,各位Linux系统管理员!在本系列的第一部分和第二部分中,我们学习了如何将Postfix和Dovecot放在一起来制作一个不错的IMAP和POP3邮件服务器。现在我们将学习设置虚拟用户,以便我们可以管理Dovecot中的所有用户。抱歉,还不能配置SSL我知道我答应教你如何设置SSL安全服务器。不幸的是,我低估了这个话题的范围。所以,我将在下个月写一个完整的教程。今天,在本系列的最后一部分,我们将详细了解如何在Dovecot和Postfix中设置虚拟用户和邮箱。这对您来说可能有点奇怪,所以我尽量让下面的示例尽可能简单。我们将使用纯文本文件和纯文本进行身份验证。您还可以选择使用数据库后端和更强大的加密身份验证形式,有关这些的更多信息,请参阅本文末尾的链接。虚拟用户我们希望在邮件服务器上使用虚拟用户而不是Linux系统用户。使用Linux系统的用户无法扩展,会暴露系统登录账号,给您的服务器带来不必要的风险。设置虚拟用户需要在Postfix和Dovecot中编辑配置文件。我们将从Postfix开始。首先,我们将从干净、简化的/etc/postfix/main.cf开始。将原始的main.cf移动到其他地方进行备份,创建一个包含以下内容的新的干净文件:compatibility_level=2smtpd_banner=$myhostnameESMTP$mail_name(Ubuntu/GNU)biff=noappend_dot_mydomain=nomyhostname=localhostalias_maps=hash:/etc/aliasesalias_database=hash:/etc/aliasesmyorigin=$myhostnamemyne??tworks=127.0.0.0/8[::ffff:127.0.0.0]/104[::1]/128192.168.0.0/24mailbox_size_limit=0recipient_delimiter=+inet_interfaces=allvirtual_mailbox_domains=/postfix/vhosts.txtvirtual_mailbox_base=/home/vmailvirtual_mailbox_maps=hash:/etc/postfix/vmaps.txtvirtual_minimum_uid=1000virtual_uid_maps=static:5000virtual_gid_maps=static:5000virtual_transport=lmtp:unix:privatelm/dovecotmynetworks参数的设置是8.4,26.0.1这应该是您的本地子网掩码。接下来,创建用户和组vmail以拥有您的虚拟邮箱。虚拟邮箱存放在vmail的主目录下。$sudogroupadd-g5000vmail$sudouseradd-m-u5000-g5000-s/bin/bashvmail接下来重新加载Postfix配置:$sudopostfixreload[sudo]passwordforcarla:postfix/postfix-script:refreshingthePostfixmailsystem.您可以像这样安装它:$sudoapt-getinstalldovecot-lmtpdmain.cf的最后一行指的是lmtp。复制/etc/dovecot/dovecot.conf示例文件以替换现有文件。同样,我们只使用这个文件,而不是/etc/dovecot/conf.d中的所有文件。协议=imappop3lmtplog_path=/var/log/dovecot.loginfo_log_path=/var/log/dovecot-info.logssl=nodisable_plaintext_auth=nomail_location=maildir:~/.Mailpop3_uidl_format=%gauth_verbose=yesauth_mechanisms=plainpassdb{/driver-etfile=passsw=d/dovecot/passwd}userdb{driver=staticargs=uid=vmailgid=vmailhome=/home/vmail/studio/%u}servicelmtp{unix_listener/var/spool/postfix/private/dovecot-lmtp{group=postfixmode=0600user=postfix}}protocollmtp{postmaster_address=postmaster@studio}servicelmtp{user=vmail}***,你可以用用户名和密码创建一个文件/etc/dovecot/passwd。对于纯文本身份验证,我们只需要用户的完整电子邮件地址和密码:alrac@studio:{PLAIN}passwordlayla@studio:{PLAIN}passwordfred@studio:{PLAIN}passwordmolly@studio:{PLAIN}passwordbenny@studio:{PLAIN}}passwordDovecot虚拟用户与Postfix虚拟用户是分开的,所以需要在Dovecot中管理用户。保存所有设置并重新启动Postfix和Dovecot:$sudoservicepostfixrestart$sudoservicedovecotrestart现在让我们使用我们的老朋友telnet来查看Dovecot是否设置正确。$telnetstudio110Trying127.0.1.1...Connectedtostudio.Escapecharacteris'^]'.+OKDovecotready.usermolly@studio+OKpasspassword+OKLoggedin.quit+OKLoggingout.Connectionclosedbyforeignhost。现在一切都很好!让我们使用邮件命令User向我们发送一条测试消息。确保使用用户的完整电子邮件地址,而不仅仅是用户名。$mailbenny@studioSubject:你好,欢迎!请享受你的新邮件帐户!***一行中的英文句号表示发送消息。让我们看看它是否到达了正确的邮箱。$sudols-al/home/vmail/studio/benny@studio/.Mail/newtotal16drwx-----2vmailvmail4096Dec1412:39.drwx-----5vmailvmail4096Dec1412:39..-rw------1vmailvmail525Dec1412:391481747995.M696591P5790.studio,S=525,W=540找到。这是我们可以读取的纯文本文件:$less1481747995.M696591P5790.studio,S=525,W=540Return-Path:Delivered-To:benny@studioReceived:fromlocalhostbystudio(Dovecot)withLMTPidV01ZKRuuUVieFgAABiesewfor;周三,14Dec201612:39:55-0800收到:bylocalhost(Postfix,fromuserid1000)id9FD9CA1F58;周三,14Dec201612:39:55-0800(PST)日期:周三,14Dec201612:39:55-0800To:bennySubjewellogens:!User-Acoms-nailv14.8.6Message-Id:<20161214203955.9FD9CA1F58@localhost>发件人:carla@localhost(carla)请享受您的新邮件帐户!在您最喜欢的邮件客户端中设置一个帐户,例如Thunderbird、Claws-Mail或KMail。故障排除当邮件无法正常工作时,检查日志文件(参见配置示例),然后运行??journalctl-xe。这提供了查找拼写错误、卸载的软件包和Google可用短语所需的所有信息。下一个?假设您的LAN名称服务配置正确,您现在有一个工作的LAN邮件服务器。显然,以明文形式发送邮件是不安全的,不支持Internet的邮件也不安全。请参阅DovecotSSL配置和PostfixTLS支持,VirtualUserFlatFilesPostfix涵盖TLS和数据库后端。并期待我即将发布的SSL指南。这次我说实话。