温馨提示×

ubuntu邮件服务器搭建步骤

小樊
82
2025-02-24 04:57:10
栏目: 云计算

在Ubuntu系统上搭建邮件服务器是一个涉及多个步骤的过程,主要包括安装必要的软件、配置域名解析、设置邮件传输代理(MTA)和邮件投递代理(MDA),以及确保安全性等。以下是详细的指南:

准备工作

  • 一台公网服务器:确保服务器不被服务商限制发件和收件的端口,如25、110、143、465、587、993、995等。如果服务器位于防火墙或安全组之后,需要开放这些端口。
  • 一个域名:建议使用com、cn、org等一级域名,并确保域名已备案(如果服务器在国外则可能不需要备案)。

安装并配置Postfix(作为MTA)

  1. 更新系统并安装Postfix
sudo apt update
sudo apt install postfix mailutils
  1. 配置Postfix
  • 安装过程中会提示选择配置类型,选择“Internet Site”。
  • 输入邮件地址的域名部分,如 abc.com
  • 输入邮件系统的域名,如 mail.abc.com
  • 设置Postfix管理员的邮箱地址,如 admin@abc.com
  • 其他选项保持默认即可。
  1. 配置邮箱目录
sudo postconf -e 'home_mailbox = Maildir/'
  1. 配置SMTP认证
sudo postconf -e 'smtpd_sasl_type = dovecot'
sudo postconf -e 'smtpd_sasl_path = private/auth'
sudo postconf -e 'myhostname = mail.abc.com'
sudo postconf -e 'smtpd_sasl_local_domain = myhostname'
sudo postconf -e 'broken_sasl_auth_clients = yes'
sudo postconf -e 'smtpd_sasl_security_options = noanonymous,noplaintext'
sudo postconf -e 'disable_dns_lookups = no'
sudo postconf -e 'mydestination = myhostname, localhost.mydomain, localhost, mydomain'
sudo postconf -e 'mynetworks = 127.0.0.0/8'
sudo postconf -e 'mailbox_size_limit = 0'
sudo postconf -e 'recipient_delimiter = '
sudo postconf -e 'inet_interfaces = all'
sudo postconf -e 'inet_protocols = all'
sudo postconf -e 'myorigin = /etc/mailname'
sudo postconf -e 'alias_maps = hash:/etc/aliases'
sudo postconf -e 'alias_database = hash:/etc/aliases'
sudo postconf -e 'mydestination = mail.abc.com, abc.com, localhost.abc.com, localhost'
  1. 重启Postfix服务
sudo systemctl restart postfix

安装并配置Dovecot(作为MDA)

  1. 安装Dovecot
sudo apt install dovecot-imapd dovecot-pop3d
  1. 配置Dovecot
  • 编辑 /etc/dovecot/dovecot.conf 文件,取消注释以下行并做相应修改:
!include_try /etc/dovecot/dovecotsql.conf.ext
!include_try /etc/dovecot/dovecotldap.conf.ext
!include_try /etc/dovecot/dovecotauth.conf.ext
!include_try /etc/dovecot/dovecotdict.conf.ext
  1. 创建用户
sudo adduser steve
  1. 设置用户密码
sudo passwd steve
  1. 重启Dovecot服务
sudo systemctl restart dovecot

测试与验证

  1. 测试发送邮件:使用命令行工具 telnetsendmail 测试发送邮件功能。
echo "test email" | mail -s "Test Email" youremail@example.com
  1. 检查日志文件:查看Postfix和Dovecot的日志文件以确保没有错误信息,日志文件通常位于 /var/log/mail.log/var/log/dovecot.log

0