随着互联网发展,一个大企业也往往存在几个不同地理位置的企业分部,不同分部之间少不了信息的交流,而邮箱是企业之间交流的必备工具。
阿里云邮箱有很多功能,譬如设置 新到邮件提醒,桌面弹出提醒,异地登录提醒;设置黑名单管理,白名单管理;还可以创建任务,指派给邮箱中的联系人。今天告诉大家怎样通过阿里域名申请免费阿里云企业邮箱及阿里云邮箱的使用。
1. 进入阿里云官网,登录
https://www.aliyun.com/?utm_medium=text&utm_source=bdbrand&utm_campaign=bdbrand&utm_content=se_32492
2. 登录之后,在首页选择 免费版 企业邮箱
3.选择 立即抢购
4. 选择 邮箱绑定域名
5. 选择 绑定的域名
6.选择 下一步,确认订单
7.支付成功之后,就可以进入 控制台进行管理
8.设置 postmaster账户的密码,进入 mail.域名.com 分配其他账号,分配完成之后就可以开始使用 阿里云 邮箱了。
9. 进入 阿里云邮箱,在可以修改设置
10. 在设置中有很多功能
我常用的设置有 签名设置,提醒设置(新到邮件提醒,桌面弹出提醒).
11.阿里云邮箱中的 任务 功能我也使用的比较多
可以 按时间进行创建任务,可以创建给自己,也可以创建给通讯录中的其他人。
阿里云企业邮箱使用实惠方便,但是使用过程中还是有一些问题。由于我没有设置 收件人发送已读回执,所以我每次查看 已发送邮件的读信状态。
但是已经被收件人阅读的信件在 阿里云邮箱中看到的状态还是未读状态,一直都没有更新。
使用 outlook邮件 客户端已经阅读过的邮件,登录上 阿里云邮箱 还是会出现在 收件箱中的 未读邮件中。
下面我在分享下阿里云邮箱的邮件推送功能DirectMail的开发。
我们会发现,越来越多的互联网应用和企业级应用,开始使用邮件验证码验证替代邮件链接验证。因为邮件链接验证,在开发和测试功底不是特别强的情况下会产生严重的漏洞,造成安全问题,而邮件验证码则相对来说安全多了,因此我们就很有必要来讨论下阿里云邮件的推送服务了。也只有一个优秀的互联网应用加上完美的邮件服务,才能带来更加优质的用户体验。
随着互联网的发展,伴随着QQ等邮件服务商的走红,传统的国外那一套邮件规则和秩序已经发生了改变,有时候就算你有很多IP,做了反向解析,在Spamhaus白名单,又或者虚拟了不同的helo域,QQ邮箱还是照拦不误,最终还是得单独花钱向国内外各大ESP购买独立通道
在这种情况下,自建邮局系统或者邮件SMTP服务,就显得得不偿失了,所以一方面各大企业邮箱服务越做越好,得到企业的认可,另一方面,国内外如SendGrid,SendCloud等第三方邮件PUSH服务商也逐渐做大,他们用更专业的手段,去解决通道、白名单、信誉度等各种邮件服务问题,而客户只需要通过SMTP协议或者封装的API接口,就可以非常便捷的给用户发送邮件。
就我所知,目前国内做的最好的当属搜狐的SendCloud,但是SendCloud发展了这么多年,也越来越复杂和专业,我认为更适合有大型EDM需求的应用使用,作为中小企业和创业者以及站长,首推依然是阿里云的邮件推送服务,一如既往秉持阿里云的特点:使用傻瓜,上手快速,文档俱全,但漏洞和问题多多,不过作为AWS的追赶者,能在短时间内快速实现这些应用级功能,也算是值得鼓励的。因此下面也基于阿里云邮件推送服务,来实现一个自己的邮件验证与推送体系。
首先在阿里云邮件推送控制台添加域名,然后在自己的dns服务器中添加如下的解析(根据控制台中的“配置”):
var mailMsg = new MailMessage();
mailMsg.From = new MailAddress("控制台创建的发信地址", "显示名称");
mailMsg.To.Add("收件人邮箱");
mailMsg.Subject = "Hello aliyun dm";
mailMsg.Body = "Send from aliyun dm";
mailMsg.IsBodyHtml = true;
var smtp = new SmtpClient("smtp.dm.aliyun.com", 25);
smtp.Credentials = new NetworkCredential("控制台创建的发信地址", "SMTP密码");
smtp.Send(mailMsg);
private static async Task SendEmailAsync(
string fromName, string fromEmail,
string toName, string toEmail,
string title, string body)
{
var mailMessage = new MimeMessage();
mailMessage.From.Add(new MailboxAddress(fromName, fromEmail));
mailMessage.To.Add(new MailboxAddress(toName, toEmail));
mailMessage.Subject = title;
mailMessage.Body = new TextPart("plain") { Text = body };
using (var smtpClient = new SmtpClient())
{
await smtpClient.ConnectAsync("smtp.dm.aliyun.com", 25, SecureSocketOptions.None).ConfigureAwait(false);
smtpClient.Authenticate(new NetworkCredential("username", "password"));
await smtpClient.SendAsync(mailMessage).ConfigureAwait(false);
await smtpClient.DisconnectAsync(true).ConfigureAwait(false);
}
}
if (host != "smtp.strato.de" && host != "smtp.sina.com")
Ehlo (cancellationToken);
并且发现了对应这个问题的issue:EHLO after AUTH causes send failure with 5.7.0 even though authentication succeeded #162
if (host != "smtp.strato.de" && host != "smtp.sina.com"
&& !host.Equals("smtp.dm.aliyun.com", StringComparison.OrdinalIgnoreCase))
Ehlo (cancellationToken);
目前最新的MailKit 1.4.1 已修复这个问题。