共用方式為


附錄 D︰建立 SMTP 伺服器

建立 SQL Server Database Mail 所使用的 SMTP 伺服器。

使用下列任何 SQL 版本,需要有 SQL Server Database Mail 才能設定 BAM 警示:

  • SQL Server 2016

  • SQL Server 2014

  • SQL Server 2012

    SQL Server Database Mail 使用 SMTP 伺服器傳送 BAM 警示。 SMTP 伺服器隨附於網際網路資訊服務 (IIS)。 SMTP 可以安裝在本機 BizTalk Server 上,或安裝在已安裝 IIS 的另一部伺服器上。

重要

一般而言,用戶端作業系統 (例如 Windows 10、Windows 7 等) 都不包含 SMTP 伺服器功能。 您可以使用 IIS 內的 SMTP 電子郵件 功能,連線到 Windows Server 上現有的 SMTP 伺服器。 SMTP 電子郵件功能不是 SMTP 伺服器,這是SQL Server Database Mail的必要專案。 因此,本主題不包含在用戶端作業系統上安裝和設定 SMTP 伺服器的步驟。

安裝和設定 SMTP 伺服器

這些步驟適用於:

  • Windows Server 2016
  • Windows Server 2012 R2
  • Windows Server 2012

安裝 SMTP 伺服器

  1. 伺服器管理員中,選取左窗格中的 [儀表板]。

  2. 選取 [新增角色和功能]。 您也可以從右上角的 [管理] 功能表開啟 [新增角色和功能]。

  3. 在 [在您開始前] 中選取 [下一步]

  4. 選取 [角色型或功能型安裝],然後選取 [ 下一步]。

  5. 選取 [從伺服器集區選取伺服器]、選取所需的伺服器,然後選取 [ 下一步]。 [伺服器選取] 視窗會列出已在 伺服器管理員中使用 [新增伺服器] 新增的伺服器。 根據預設,它會選取本機伺服器。

  6. [伺服器角色]中,選取 [ 下一步]。

  7. [功能] 中,檢查 [SMTP 伺服器]。 如果出現提示,請選取 [ 新增功能]。 選取 [下一步]。

  8. [確認] 中,選取 [視需要自動重新開機目的地伺服器],然後選取 [ 安裝]。 完成之後,請選取 [關閉]。

設定 SMTP 伺服器

下列步驟使用 IIS 6.0 管理員來設定 SMTP 虛擬伺服器︰

  1. 開啟 IIS 管理員:在 [開始] 中,搜尋 inetmgr6.exe,然後加以開啟。

  2. 展開電腦名稱。 以滑鼠右鍵按一下 [SMTP 虛擬伺服器 #1],然後選取 [ 屬性]。

  3. 在 [ 存取] 索引標籤中,選取 [ 轉寄] 按鈕。

  4. 選取 [新增]。 針對 [單一電腦],輸入 127.0.0.1 ,然後選取 [ 確定]。

    新增 127.0.0.1,即允許本機伺服器傳送來自這個 SMTP 伺服器的訊息。 如果您想要其他電腦傳送來自這個 SMTP 伺服器的訊息,請輸入其 IP 位址。

  5. 在 [ 傳遞] 索引標籤中,選取 [ 輸出安全性]。 從下列選擇:

    匿名存取:不需要帳戶名稱或密碼。 這個選項會停用 SMTP 伺服器的驗證。

    基本驗證:您要連線之伺服器的帳戶名稱和密碼會以純文字傳送。 您輸入的這個帳戶會傳輸電子郵件。 將電子郵件傳送至個人帳戶或 Exchange 帳戶時,可以選取基本驗證。 由於認證會以純文字傳遞,因此建議啟用 TLS 加密

    整合式 Windows 驗證:Windows 功能變數名稱和密碼是用來驗證。 您輸入的帳戶會傳輸電子郵件。

    TLS 加密:類似于 SSL,TLS 會保護連線。 需要在這部伺服器上安裝有效的 SSL 伺服器憑證。

    提示

    若要使用個人電子郵件帳戶測試核心 SMTP 功能,包括 Exchange 帳戶,請選取 [ 匿名存取]。 選取 [基本驗證] 時,SMTP 會使用 AUTH 命令。 某些電子郵件提供者可能會因 AUTH 命令而失敗。 如果 AUTH 命令失敗,可能會在 SMTP 伺服器的 Windows 事件記錄檔中記錄錯誤。

  6. 在 [ 傳遞] 索引標籤中,選取 [ 輸出連線]。 TCP 通訊埠預設為 25。 如果您在防火牆內開啟不同的通訊埠,則可以輸入該連接埠。 選取 [確定]。

  7. 在 [ 傳遞] 索引標籤中,選取 [ 進階]。 根據預設,會列出本機伺服器 的完整功能變數名稱 。 視網際網路提供者而定, Smart Host 屬性可以維持空白。 您可能需要連絡網際網路提供者,確認是否需要智慧主機。 否則,您可以輸入 smtp。EMailProvider.com

    注意

    智慧主機也稱為轉送主機,是Exchange Server用來路由傳送所有傳出訊息的專用伺服器。 當 智慧主機 收到訊息時, 智慧主機 會將訊息轉送至遠端網域。 智慧主機的目標是要改善Exchange Server的效能。 Exchange Server 只會傳輸至智慧主機;而不是重複連絡遠端網域直到建立連線。

  8. 選取 [確定 ] 以關閉所有視窗。

  9. 重新開機 SMTP 伺服器:以滑鼠右鍵按一下 [SMTP 虛擬伺服器 #1],選取 [停止],然後選取 [ 啟動]。 需要重新啟動,才能套用 SMTP 伺服器設定。

Windows Server 2008 R2:安裝和設定 SMTP 伺服器

安裝 SMTP 伺服器

下列步驟會安裝 SMTP 伺服器功能︰

  1. [伺服器管理員] 中,選取 [功能],然後選取 [新增功能]。

  2. [新增功能] 中,選取 [SMTP 伺服器]。 如果出現提示,請選取 [ 新增必要的角色服務],然後選取 [ 下一步]。

  3. 選取 [ 下一步],繼續進行安裝。

  4. 在 [ 確認安裝選項] 視窗中,選取 [ 安裝]。 完成之後,請選取 [關閉]。

設定 SMTP 伺服器

下列步驟使用 IIS 6.0 管理員來設定 SMTP 虛擬伺服器︰

  1. 開啟 IIS 6.0 管理員:在 [開始] 中,搜尋 IIS,然後選取 [ Internet Information Services (IIS) 6.0 管理員]。

  2. 展開電腦名稱。 以滑鼠右鍵按一下 [SMTP 虛擬伺服器 #1],然後選取 [ 屬性]。

  3. 在 [ 存取] 索引標籤中,選取 [ 轉寄] 按鈕。

  4. 選取 [新增]。 針對 [單一電腦],輸入 127.0.0.1 ,然後選取 [ 確定]。

    新增 127.0.0.1,即允許本機伺服器傳送來自這個 SMTP 伺服器的訊息。 如果您想要其他電腦傳送來自這個 SMTP 伺服器的訊息,請輸入其 IP 位址。

  5. 在 [ 傳遞] 索引標籤中,選取 [ 輸出安全性]。 從下列選擇:

    匿名存取:不需要帳戶名稱或密碼。 這個選項會停用 SMTP 伺服器的驗證。

    基本驗證:您要連線的伺服器帳戶名稱和密碼會以純文字形式傳送。 將電子郵件傳送至個人帳戶或 Exchange 帳戶時,可以選取基本驗證。 由於認證會以純文字傳遞,因此建議您啟用 TLS 加密

    整合式 Windows 驗證:使用 Windows 網域帳戶名稱和密碼進行驗證。 您輸入的帳戶會傳輸電子郵件。

    TLS 加密:類似于 SSL,TLS 會保護連線。 需要在這部伺服器上安裝有效的 SSL 伺服器憑證。

    提示

    若要使用個人電子郵件帳戶測試核心 SMTP 功能,包括 Exchange 帳戶,請選取 [匿名存取]。 選取 [基本驗證] 時,SMTP 會使用 AUTH 命令。 某些電子郵件提供者可能會因 AUTH 命令而失敗。 如果 AUTH 命令失敗,可能會在 SMTP 伺服器的 Windows 事件記錄檔中記錄錯誤。

  6. 在 [ 傳遞] 索引標籤中,選取 [ 輸出連線]。 TCP 通訊埠預設為 25。 如果您在防火牆內開啟不同的通訊埠,則可以輸入該連接埠。 選取 [確定]。

    提示

    TCP 通訊埠可以用於傳入連接和傳出連接。

  7. 在 [ 傳遞] 索引標籤中,選取 [ 進階]。 根據預設,會列出本機伺服器 的完整功能變數名稱 。 視網際網路提供者而定, Smart Host 屬性可以維持空白。 您可能需要連絡網際網路提供者,確認是否需要智慧主機。 否則,您可以輸入 smtp。EMailProvider.com

    注意

    智慧型主機也稱為轉送主機,是Exchange Server用來路由傳送所有傳出訊息的專用伺服器。 當 智慧主機 收到訊息時, 智慧主機 會將訊息轉送至遠端網域。 智慧型主機的目標是要改善Exchange Server的效能。 Exchange Server 只會傳輸至智慧主機;而不是重複連絡遠端網域直到建立連線。

  8. 選取 [確定 ] 以關閉所有視窗。

  9. 需要重新啟動,才能套用 SMTP 伺服器設定。 若要重新開機 SMTP 伺服器:以滑鼠右鍵按一下 [SMTP 虛擬伺服器 #1],請選取 [ 停止],然後選取 [ 啟動]。

測試 SMTP 伺服器

Telnet 可以用來測試 SMTP 伺服器組態。 下列步驟使用您設定的 SMTP 伺服器將訊息傳送至電子郵件地址。 如需 telnet 命令的詳細資訊,請移至 Windows 命令:telnet

  1. 以系統管理員身分開啟命令視窗。

  2. 在命令提示字元中,輸入:

    telnet localhost 25

    如果未安裝 telnet,請輸入下列命令進行安裝︰

    pkgmgr /iu:"TelnetClient"

  3. 輸入下列命令開始通訊︰

    EHLO server

  4. 輸入郵件寄件者地址︰

    MAIL FROM: *YourEmailAddress*@*YourProvider*.com

    例如,輸入:

    MAIL FROM: EmailAddress@outlook.com

  5. 輸入郵件收件者地址︰

    RCPT TO: *YourEmailAddress*@*YourProvider*.com

    例如,輸入:

    RCPT TO: EmailAddress@outlook.com

  6. 輸入下列命令,告知準備好要傳送資料的 SMTP 伺服器︰

    DATA

  7. 輸入下列命令,輸入主旨︰

    Subject: Test Message

  8. 按 Enter 兩次。

  9. 輸入下列命令,輸入訊息主體:

    This is the message body of the test message.

  10. 按 Enter,並輸入句號 (.),然後按 Enter。

    檢查電子郵件訊息的 RCPT TO 位址。 如果未傳遞電子郵件 (請檢查您的收件匣和垃圾郵件資料夾),則不會成功傳送訊息,而訊息可能位在 SMTP Queue 資料夾 (C:\inetpub\mailroot\Queue) 中。