发布网友 发布时间:2022-04-25 21:30
共1个回答
热心网友 时间:2022-06-17 16:45
如同Apache一样,sendmail也允许使用虚拟主机功能,这是通过在mc文件中FEATURE(virtusertable)功能实现的,而虚拟主机的文件缺省是/etc/mail/virtusertable.db,它用/etc/mail/virtusertable文件生成,这个文件的形式类似于aliases文件,即左地址 右地址,中间用Tab键分开。例如:
someone@linuxaid.net.cn localuser
这样一行意味着本来应该发送给someone@otherdomain.com的邮件现在要发送给本机的用户localuser。当然,这意味着:第一,你的DNS记录中,本机应该是otherdomain.com的MX交换器;第二,你的本机sendmail.cw文件或local-host-names应该包含otherdomain.com这个名字。
当然纯粹的这样的域意义不大,但是sendmail还支持邮件虚拟域的参数翻译。例如:
@testdomain.com test@linuxaid.com.cn
意味着所有发往xxx@testdomain的邮件都会被发送到test@linuxaid.com.cn 。而
@testdomain.com %1test@linuxaid.com.cn
则代表参数转义,例如user1@testdomain.com的邮件被发送到user1test@linuxaid.com.cn ,
user2@testdomain.com被发送到user2test@linuxaid.com.cn 。同样,这样的功能也要通过MX记录和CW文件加上去。
建立virtusertable的方法与建立access的办法是一样的:
makemap hash virtusertable.db < virtusertable
然后重新启动sendmail。