对于一个小型技术实验,我今天发现Apache James作为一个可能的平台。
[update-1] qmail、exim或postfix 会是更好的选择吗?是否有描述这些 MTA API 的教程? [/更新-1]
一般来说,mailet应该这样做:
- 发送e-amil 时,将每个元组映射
<FORM:TO>到一个新的唯一 TO-address 并在原始 e-amil 中F(<FORM:TO>)替换为FROMF(<FORM:TO>) - 收到电子邮件时,将 -address 映射回
TO原始F(<FORM:TO>)地址TO并保存到其 maildrop - Wehn收到一封电子邮件,
F(<FORM:TO>)无法映射的地方,将其保存到特殊的maildrop
F(.,.) 是源值和目标值之间的一对一函数。
示例:John@doe.com 发送电子邮件
John@doe.com发送电子邮件至Allen@Never.com- Mailet 这样做
- ... 将 FROM 重写为
23746237826384@doe.com - ...
<John@doe.com,Allen@Never.com>与23746237826384@doe.com - ...永久保留此映射
示例:Allen@Never.com 向 John 发送电子邮件
Allen@Never.com发送电子邮件至23746237826384@doe.com- Mailet 这样做
- ... 将 FROM 地址识别
23746237826384@doe.com为有效的 TO 地址Allen@Never.com - ... 发送至 John@doe.com
示例:OtherUser@Allways.com 向分配给 Allen 的 John 的地址发送一封电子邮件
OtherUser@Allways.com发送电子邮件至23746237826384@doe.com- Mailet 这样做
- ... 无法将
23746237826384@doe.comFROM 地址识别为有效的 TO 地址OtherUser@Allways.com - ... 拒绝电子邮件
mailet API是否适合此要求?或者这样的操作不适合(因此需要代码或多或少地直接访问詹姆斯的课程)?
以防万一:我知道,这不会强制执行强大的安全性。然而,它可能会转移某些电子邮件垃圾邮件