1. 环境参数说明

A) Windows Server 2012 R2

B) SharePoint 2016

C) 第三方邮件服务器(smtp.3th.com - 有负载均衡,即对应多个IP服务器)

D) 有现成域名:space.self.com - 对应IP 10.1.1.1

2. 背景说明

SMTP 中继服务,顾名思义:只是接收到邮件后传递给第三方邮件服务器,可以理解为一个邮件代理的作用;

为什么要使用 SMTP 中继服务?

答:SharePoint 在配置邮件服务时,只能配置【邮件发送人】,不能配置【邮件发送人的密码】;因此,如果要通过配置来使用 SharePoint 的邮件功能,只能是:

A) 采用集成 Windows 认证的SMTP服务器(如 Exchange)

B) SMTP 服务器可以接收不需要验证【邮件发送者密码】的发送服务;

我们是要连接第三方邮件服务器,所以只能寻找第二种方案;

3. 搭建 SMTP 中继服务

为了节省篇幅,直击主题;对于一般的操作,这里就不再赘述;

A) 安装 IIS 6 管理兼容工具(这是使用 Windows SMTP 必须的管理工具,新版本的 IIS 中已经没有这个功能)

B) 安装 SMTP 服务(同时安装 Telnet 客户端功能,以便后续测试)

C) 在Windows 的管理工具中找到 IIS 6 兼容管理工具并双击打开

D) 右键 [SMTP Virtual Server #1] ,点击属性开始配置

E) 配置不需要身份验证即可访问控制 SMTP 服务

F) 配置允许那些 IP 可以匿名连接 SMTP 服务(这个很重要:不要让自己的SMTP服务被作为肉鸡发垃圾邮件)

G) 根据需要配置邮件容量限制(如果没配置成根据自己的场景需要,可能会导致邮件发不出)

H) 配置传递的出站安全

这里所使用的用户名和密码即为【发送者邮件地址】和【发送者密码】

这个用户名必须与后续在 SharePoint 中配置的传出邮件的发送地址一致;

I) 配置出站连接(即我们要连接的第三方 SMTP 服务器)

完全限定域名:自己定义的 SMTP 域名(需要能被正确的解析到IP,从本文来看,只需要能被 SharePoint 服务器解析到即可,所以可以在一个 DNS 的 A记录,或者直接使用内网的机器名)

智能主机:填入第三方 SMTP 服务器的域名(如:smtp.gmail.com)

J) 打开 services.msc 工具,查看 SMTP 服务是否处于运行状态,并将其设置为”自动“启动;

至此,我们已经完成了 SMTP 中继服务的配置;

有一个奇怪的现象要注意:重新打开 IIS 6 工具进行配置时,会发现刚才的配置有的被恢复为默认值(如:出站安全被设置为 匿名访问、连接数限制被置为 0 等等);

这种情况不需要理会,但如重新编辑了上述配置的任何一项,则需要全部检查一遍,并配置正确过来(这里真是泪水的经历)

4. SharePoint 配置传出电子邮件设置

最后的步骤进没什么悬念了,上图;

* 这里只说明了传出电子邮件的配置,所以上图中的【答复地址】就没什么意义了;

如要答复,则要 POP3服务才能支持 (BTW, Windows 的后续服务器版本已经没有 POP3 的组件功能了,需要其他第三方服务支持)

SharePoint 配置传出电子邮件设置的更多相关文章

  1. 【HOW】如何配置SharePoint传入/传出电子邮件设置

    SharePoint 2010的传入和传出邮件配置选项都较简单,但由于需要DNS及Exchange等服务器互相配合,所以要正确配置并不容易. 在微软的官方文档中详细说明了配置步骤:配置传入电子邮件:h ...

  2. 基于Windows Azure 搭建基于SharePoint 2010 Intranet、Extranet、Internet (4): 配置传出邮件服务: 使用 outlook.com 发送邮件通知

    前几篇文章,已经安装了SharePoint 2010,今天将演示如何配置传出邮件.由于某些原因,企业可能没有安装自己邮件服务器,此时我们可以使用公共的邮箱服务来发送邮件通知,比如outlook.com ...

  3. SharePoint配置网站集的审核设置

    配置网站集的审核设置 您可以使用 Microsoft SharePoint Server 2010 的审核功能来跟踪哪些用户对网站集的网站.内容类型.列表.库.列表项和库文件执行了哪些操作.了解谁对哪 ...

  4. IPMI 配置BMC用户设置

    IPMI 配置BMC用户设置 本文档共介绍5条ipmi设置user的命令,这些命令需要使用root权限才能使用,其中- H为需要操作的BMC ip,-I lanplus为使用rmcp+协议发送命令,- ...

  5. (转)通过在 Page 指令或 配置节中设置 validateRequest=false 可以禁用请求验证

    通过在 Page 指令或 配置节中设置 validateRequest=false 可以禁用请求验证 说明:   请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止.该值可能指示危及应用 ...

  6. 由于 web 服务器上此资源的访问控制列表(acl)配置或加密设置,您无权查看此目录或页面。

    场景:IIS中遇到无法预览的有关问题(HTTP 异常 401.3 - Unauthorized 由于 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置 IIS中遇到无法预览的问题(HTTP ...

  7. springmvc 项目完整示例05 日志 --log4j整合 配置 log4j属性设置 log4j 配置文件 log4j应用

    log4j 就是log for java嘛,老外都喜欢这样子,比如那个I18n  ---internationalization  不就是i和n之间有18个字母... http://logging.a ...

  8. Confluence 6 配置 HTTP 超时设置

    当宏,例如 RSS Macro 进行 HTTP 请求的时候,有可能因为请求的时间比较长,而导致超时.你可以通过设置系统参数来避免这个问题. 配置 HTTP 超时设置: 在屏幕的右上角单击 控制台按钮  ...

  9. Sourcetree报错: 您没有已经配置扩展集成设置的远端

    一.错误提示 您没有已经配置扩展集成设置的远端; ... 二.解决 配置 Legacy Account Settings 即可:

随机推荐

  1. 康复计划#1 再探后缀自动机&后缀树

    本篇口胡写给我自己这样的东西都忘光的残废选手 以及那些刚学SAM,看了其他的一些东西并且没有完全懵逼的人 (初学者还是先去看有图的教程吧,虽然我的口胡没那么好懂,但是我觉得一些细节还是讲清楚了的) 大 ...

  2. C#类详解

    类: 类是一种数据结构,它可以包含数据成员(常数和字段).函数成员(方法.属性.事件.索引器.运算符实例.构造函数静态构造函数和析构函数),以及嵌套类型.类类型支持继承,继承是一种机制,它使派生类可以 ...

  3. 如何解决在chrome中自动完成表单后input出现黄色背景

    可以对input:-webkit-autofill使用足够大的纯色内阴影来覆盖input输入框的黄色背景:如: 代码如下: input:-webkit-autofill { -webkit-box-s ...

  4. repeater绑定泛型list<string>

    菜鸟D重出江湖,依然是菜鸟,囧!言归正传—— 工作中遇到一个repeater绑定的问题,数据源是一个list<string> 集合,然后在界面上使用<%#Eval()%>绑定. ...

  5. 存储过程与SQL语句如何选择

    58到家数据库30条军规,有一条是“禁止使用存储过程.视图.触发器.Event”, 高并发大数据的互联网业务,架构设计思路是“解放数据库CPU,将计算转移到服务层”, 并发量大的情况下,这些功能很可能 ...

  6. 使用OpenCL

    //函数原型举例 cl_int clGetPlatformInfo(cl_platform_id platform, cl_platform_info param_name, size_t param ...

  7. HTML5培训哪里靠谱

    兄弟连IT培训教育,是学科最全的IT培训机构,涵盖HTML5培训.等学科,并是业内推出真实千万级服务器架构课程的唯一培训学校.兄弟连已分别在北京.上海.广州.沈阳.郑州.济南.成都.杭州.南京.南宁. ...

  8. Django之admin

    django amdin是django提供的一个后台管理页面,改管理页面提供完善的html和css,使得你在通过Model创建完数据库表之后, 就可以对数据进行增删改查,而使用django admin ...

  9. TokuDB性能测试报告

    一 .背景介绍 近年来,TokuDB作为MySQL的大数据(Big Data)存储引擎受到人们的普遍关注.其架构的核心基于一种新的叫做分形树(Fractal Trees)的索引数据结构,该结构是缓存无 ...

  10. sql查询表说明

    一条神奇的sql语句 可以查询到数据库表的说明信息.如下:希望可以帮到大家 SELECT 表名 = case when a.colorder=1 then d.name else '' end, 表说 ...