温馨提示×

Ubuntu邮件服务器的用户管理如何操作

小樊
45
2025-12-20 20:52:43
栏目: 云计算

Ubuntu邮件服务器用户管理实操指南

一 管理模型与准备

  • 常见两种模型:
    • 系统用户模型:用系统的 /etc/passwd 账号收发邮件,邮箱通常为 Maildir 格式,配合 Postfix + Dovecot 使用,部署简单,适合小规模或测试环境。
    • 虚拟用户模型:账号与系统账号解耦,统一由数据库(如 SQLite/MySQL/PostgreSQL)管理,邮箱集中存放(如 /var/vmail),更利于多域名与大规模运维,常配合 Postfix + Dovecot + PostfixAdmin 使用。
  • 基础准备要点:
    • 设置好 FQDN 主机名(如:mail.example.com),安装 Postfix、Dovecot,并按所选模型完成基础配置(如 Postfix 的 myhostname/mydomain/home_mailbox,Dovecot 的 mail_location/protocols)。
    • 防火墙放行必要端口:SMTP 25/TCP、IMAP 143/TCP、POP3 110/TCP;生产环境建议启用 SMTP Submission 587/TCPSMTPS 465/TCP 并配置 TLS

二 系统用户模型的用户管理

  • 创建用户与邮箱
    • 新建系统账号:sudo adduser username(按提示设置密码与信息)。
    • 邮箱目录会在首次投递时自动按 Maildir 创建(取决于 Postfix 的 home_mailbox = Maildir/ 配置)。
  • 修改与查询
    • 修改属性:sudo usermod -l 新名 旧名;sudo usermod -d /新/家目录 用户名;sudo usermod -s /bin/bash 用户名
    • 查询信息:getent passwd username;getent group username
  • 禁用与删除
    • 禁用账号:sudo usermod –expiredate 1 username(设为已过期);恢复:sudo usermod –expiredate “” username
    • 删除账号:sudo deluser –remove-home username(同时删除家目录);如需备份:sudo deluser –backup --remove-home username;如仍有邮件 spool 残留,可手动清理:sudo rm -r /var/mail/username
  • 别名与转发
    • 编辑 /etc/aliases 添加别名或转发规则,例如:admin: user1, user2;root: /dev/null(丢弃)。
    • 使别名生效:sudo postmap /etc/aliases 或 sudo newaliases。
  • 服务生效
    • 修改后重启:sudo systemctl restart postfix;涉及 IMAP/POP3 变更时:sudo systemctl restart dovecot

三 虚拟用户模型的用户管理

  • 准备虚拟用户环境
    • 创建系统投递用户与目录:sudo useradd -r -u 150 -g mail -d /var/vmail -s /sbin/nologin vmail;sudo mkdir -p /var/vmail;sudo chown -R vmail:mail /var/vmail
  • 配置映射与存储路径
    • /etc/postfix/ 下维护虚拟域与用户映射:
      • /etc/postfix/virtual_mailbox_domains:列出托管域名(如:example.com)。
      • /etc/postfix/virtual:邮箱地址到系统内部地址的映射(如:user1@example.com user1@example.com)。
      • /etc/postfix/virtual_mailbox:邮箱地址到邮箱文件路径的映射(如:user1@example.com /var/vmail/example.com/user1)。
    • 使映射生效:sudo postmap /etc/postfix/virtual;sudo postmap /etc/postfix/virtual_mailbox_domains;sudo postmap /etc/postfix/virtual_mailbox
  • 创建虚拟用户密码
    • doveadm pw -s SHA512-CRYPT -p ‘YourPassword’,将输出哈希写入 Postfix/Dovecot 的密码文件或数据库(按实际认证方式配置)。
  • 配置 Dovecot 使用虚拟用户
    • 典型设置:mail_location = maildir:~/Maildir(或 maildir:/var/vmail/%d/%n 形式);认证方式启用 plain login;与 Postfix 通过 SASL 对接。
  • 管理工具与界面
    • 建议使用 PostfixAdmin 管理多域名、多用户与配额,Web 化操作更便捷(配置数据库连接、域名/邮箱路径策略、管理员账号等)。

四 常用操作与验证

  • 服务与端口检查
    • 状态:sudo systemctl status postfix;sudo systemctl status dovecot
    • 监听:ss -ltnp | egrep ‘:(25|110|143|587|993|995)’
  • 本地收发测试
    • 命令行:echo “Test email body” | mail -s “Test” user@example.com;或使用 telnet 连接 localhost 25 进行 SMTP 会话测试。
  • 日志排查
    • Postfix:sudo tail -f /var/log/mail.log;Dovecot:sudo tail -f /var/log/dovecot.log
  • 配额与大小限制
    • 在 Postfix 中设置单封大小:main.cf 加入 message_size_limit = 51200000(约 50MB);如需不限制可用 0

五 安全与运维建议

  • 强制 TLS/SSL:生产环境不要长期允许明文认证;在 Dovecot 中启用 ssl = yes,禁用明文登录(disable_plaintext_auth = yes),并为 SMTP Submission 587IMAPS/POP3S 993/995 配置有效证书。
  • 域名与信誉
    • 正确配置 MX 记录与 PTR(反向 DNS);添加 SPF、DKIM、DMARC 记录以提升到达率与可信度。
  • 最小权限与隔离
    • 虚拟用户与系统账号分离,邮箱目录仅由 vmail 用户可写;谨慎分配 sudo 权限,定期审计用户与别名。
  • 备份与变更
    • 定期备份 /etc/postfix/ 配置、/var/vmail/ 邮箱数据、以及 PostfixAdmin 数据库;变更后执行 postmap 并重启相关服务。

0