5.15 高级的/etc/mail/ 目录

1./etc/mail 是现在被尊重的默认sendmail配置目录

2.Virtusertable文件用于映射虚拟地址到真实的地址

3.Access文件定义拒绝或接收来自指定域的email

4. 在/etc/mail内同样有其它文件

他们中的两个mailertable和domaintable默认的sendmail配置不使用,但是包含的不完全。

5. 在/etc/mail中出现的另一个文件是Makefile

注意在/etc/mail中的所有文件在被sendmail使用之前必须被混编。这样允许sendmail守护进程快速地访问此信息,但需要系统管理员在修改后重编所有文件。有了Makefile的存在,这是微不足道的,简单地键入make。重启sendmail,使用系统V启动脚本或service命令也将重建这些文件。

5.16 /etc/mail/virtusertable

在linux中默认安装的sendmail已经提供了对sendmail数据库的支持。要使用其他数据库必须在配置文件中进行声明。

使用 sendmail的数据库的好处是不用修改cf配置文件,也不用使用m4配置文件生成cf配置文件。一旦配置文件增添了对sendmail数据库的支持,许多配置修改就可以在sendmail数据库中进行,sendmail进程回自动读取sendmail数据库中的配置内容。

重点掌握access、virtusertable数据库的使用。

1.Sendmail虚拟域功能的实现

Sendmail虚拟域功能的实现是通过FEATURE (virtusertable)功能实现的。因为默认的mc配置文件中有以下设置:

FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl

此项设置会使sendmail读取/etc/mail/virtusertable.db文件的内容,对虚拟域地址映射为实际地址。虚拟域用户的文件缺省是/etc/mail/virtusertable.db,它用/etc/mail/virtusertable文件生成。此文件格式:虚拟地址 真实地址,中间用Tab键分开。

表5.1 将虚拟域地址映射为真实地址

举例

说明

someone@otherdomain.com localuser

发送给someone@otherdomain.com的邮件现在要发送给本机的用户localuser

@testdomain.com test@mydomain.com

所有发送xxx@@testdomain.com的邮件都会发送到test@mydomain.com

@testdomain.com %1@mydomain.com

User1@testdomain.com的邮件被发送到user1@mydomain.com,

User2@testdomain.com的邮件被发送到user2@mydomain.com

@testdomain.com %1test@mydomain.com

User1@testdomain.com的邮件被发送到user1@mydomain.com,

User2@testdomain.com的邮件被发送到user2@mydomain.com等

2.允许多个虚拟域和虚拟用户被映射到另一个地址:

admin @ 123.com shopper

admin @ xyz.org jdj

admin @ he.net lmiwtc @pg.com

@cba.com cba@aol.com

@dom/.org %1@dom2.org

在/etc/mail/virtusertable内简单键入项目,映射一个email地址到一个本地用户。这里是列出的以上的头两行。注意:用一个admin的别名域胜于一个域并不困难。

另一个项目的类型是一个简单的指向。这允许一个传入的email被发送到指定目标,这通常被人们用于简单地去记住email地址,它接纳复数。一个sendmail系统管理员能简单地在个别用户的email账号上指向想要的email地址,。上面例子中的第三行是一个email-to-pager网关的例子,有一个分配的地址,并有一个简单的别名指向它。

最后的项目的类型是指向一个整个域的email到一个给定的(本地或远程)地址的高级功能。这对虚拟域的管理员是一个非常有用的功能,它想避免设置具体的别名。这能在例子virtusertable文件中的最后两行看到。最后一行添加了一个卷曲到这个概念,并指向传入的email到用户指定的dom1.org中,目标作为一个用户在dom2.org上,举例:

jonny @ dom1.org 映射到jobby@dom2.org

3.使虚拟域用户工作的前提

⑴ 配置DNS,并设置虚拟域的MX记录

⑵ 将所有的虚拟域添加到文件/etc/mail/local-host-names中作为本地域别名。

⑶ 将所有的虚拟域添加到文家/etc/mail/access并允许RELAY。

最后执行命令:“makemap hash virtusertable.db

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章