以下步骤是使用 vmailmgr 设置虚拟域所必需的(假设 vmailmgr 已经编译并安装)。作为一个例子,我们将设置一个虚拟用户 `me@mydomain.org
`,别名为 `myself@mydomain.org
` 和 `myname@mydomain.org
`。
mail.mydomain.com
`,则 `virtualdomains
` 需要像 `mail.mydomain.com:myuser
` 这样的条目。对于这个例子,我们假设 mydomain.org 的邮件交换器已经设置为指向您的计算机。
myuser
`。/var/qmail/control
` 中的两个 qmail 配置文件:`rcpthosts
` 和 `virtualdomains
`。rcpthosts
`:添加行 `mydomain.org
`。virtualdomains
`:添加行 `mydomain.org:myuser
`。anything.mydomain.org
` 的邮件,请添加以下内容rcpthosts
`:添加行 `.mydomain.org
`。virtualdomains
`:添加行 `.mydomain.org:myuser
`。checkvpw
` 作为密码检查器。此步骤取决于您安装 qmail 的方式。/etc/inet.conf
` 中还是在 `tcpserver
` 命令中),将 `checkpassword
` 替换为 `checkvpw
`。echo checkvpw > /var/qmail/control/checkpassword
`su - myuser
`)或以新用户身份登录(通过 telnet 或在控制台中),并使用包含的程序添加用户和别名。对于我们的例子,我们将
vadduser me
`(这将提示输入密码)vaddalias me myself
`vaddalias me myname
`qmail-send
`,以使其读取新的 `virtualdomains
` 表。如果您正在使用 `inetd
` 启动 `qmail-popup
`,也请 `kill -HUP
` `inetd
` 进程。
有两种方法可以在不使用多个 IP 地址的情况下登录。
userSEPvirtual.domain.org
` 身份登录,其中 `user
` 是虚拟用户的邮箱名,SEP 是 `@
` 或 `:
` 之一(默认情况下,这在 `/etc/vmailmgr/
' 目录中是可配置的),`virtual.domain.org
' 是虚拟域的名称,如 `/var/qmail/control/virtualdomains
' 中所列。baseuser-user
`,其中 `user
` 与上面相同,而 `baseuser
` 是管理用户的用户名。/var/qmail/control/virtualdomains
' 包含testdomain.org:testuser用户 `
myuser
' 存在,并设置了一个名为 `me
' 的虚拟邮箱。`/etc/vmailmgr/
' 中的 `separators
' 变量包含 `@:
'。此虚拟用户可以以 `me@mydomain.com
'、`me:mydomain.cm
' 或 `myuser-me
' 身份登录。
在 `vmailmgr/
' 配置文件目录中,有一个名为 `default-username
' 的条目。如果发送到虚拟域的邮件与该域中的任何用户或别名都不匹配,则如果存在此配置项(默认为 `+
'),邮件将被传递到其中列出的名称。要使其传递给您,只需键入
vaddalias me +
VMailMgr 支持 Courier-IMAP,但 Courier-IMAP 不会自动检测 VMailMgr。这意味着需要进行一些少量的工作才能使两者协同工作。
/usr/local/bin/authvmailmgr
` 复制到 `/usr/lib/courier-imap/libexec/authlib/authvmailmgr
`。/usr/lib/courier-imap/etc/imapd.config
` 中的 `AUTHMODULES
` 语句,并将 `authvmailmgr
` 添加为第一个身份验证模块。