ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: Enterprise Server 2.18

通知のためのメール設定

GitHub Enterprise Server のアクティビティにユーザが素早く反応しやすくするために、Issue、プルリクエスト、コミットのコメントに対してメール通知を送信するようインスタンスを設定するとともに、インバウンドのメール返信を許可する追加設定もできます。 通知のメールは、ユーザがWatchしているリポジトリでアクティビティがあった場合、参加しているプルリクエストあるいはIssueにアクティビティがあった場合、コメント中でユーザもしくはメンバーとなっているTeamが@メンションされた場合に送信されます。

ここには以下の内容があります:

SMTPの設定

  1. 任意のページの右上で をクリックします。

    サイトアドミン設定にアクセスするための宇宙船のアイコン

  2. 左のサイドバーでManagement Consoleをクリックしてください。

    左のサイドバーのManagement Consoleタブ

  3. ページの上部でSettings(設定)をクリックしてください。

    設定タブ

  4. 左のサイドバーで Email(メール)をクリックしてください。

    メールタブ

  5. Enable email(メールの有効化)を選択してください。 これでアウトバウンドとインバウンドのメールがどちらも有効化されますが、インバウンドのメールが動作するには着信メールを許可する DNS とファイアウォールの設定に記述されているように DNS を設定する必要もあります。

    アウトバウンドメールの有効化

  6. メールサーバーの設定を記入してください:

    • [Server address] フィールドに SMTP サーバのアドレスを入力します。
    • [Port] フィールドには、SMTP サーバがメールを送信するのに使用するポートを入力します。
    • [Domain] フィールドには、SMTP サーバが HELO レスポンスを送信するドメイン名があれば入力してください。
    • [ Authentication(認証)] ドロップダウンでは、SMTP サーバが利用する暗号化の種類を選択してください。
    • [No-reply email address(No-replyメールアドレス)] フィールドには、すべての通知メールの From および To フィールドに使うメールアドレスを入力してください。

    注釈: リポジトリの [Services] メール webhook で [Send from author] チェックボックスを選択した場合、そのリポジトリのアウトバウンドメールは no-reply メールアドレスではなく、作者から送信されます。 詳しい情報については「リポジトリへのプッシュに対するメール通知について」を参照してください。

  7. no-replyメールアドレスへの着信メールをすべて破棄したい場合には、Discard email addressed to the no-reply email address(no-replyメールアドレスへのメールの破棄)を選択してください。

    no-reply メールアドレス宛のメールを廃棄するチェックボックス

  8. [Support(サポート)] の下で、ユーザに追加のサポートを提供するリンクの種類を選択してください。

    • Email(メール): 内部的なメールアドレス。
    • URL: 内部的なサポートサイトへのリンク。 http:// または https:// を含める必要があります。
      サポートのメールあるいは URL
  9. メール配信のテスト

メール着信を許可する DNS とファイアウォールの設定

通知へのメールでの返信を許可したいなら、DNSを設定しなければなりません。

  1. インスタンスのポート25がSMTPサーバにアクセスできることを確認してください。
  2. reply.[hostname]を指すAレコードを作成してください。 DNSプロバイダとインスタンスのホスト設定によっては、 *.[hostname]を指す単一のAレコードを作成できる場合があります。
  3. reply.[hostname]を指すMXレコードを作成して、このドメインへのメールがインスタンスにルーティングされるようにしてください。
  4. noreply.[hostname][hostname] を指すようにする MX レコードを作成し、 通知メールの cc アドレスへの返信がインスタンスにルーティングされるようにしてください。 詳細は「メール通知について」を参照してください。

DNSの設定ができたら、うまく動作するかをテストできます。

メール配信のテスト

  1. Email(メール)セクションの上部で、Test email settings(メール設定のテスト)をクリックしてください。

    メール設定のテスト

  2. Send test email to(テストメールの送信先)フィールドに、テストメールを送信するアドレスを入力してください。

    メールアドレスのテスト

  3. Send test email(テストメールの送信)をクリックしてください。

    テストメールの送信

    Tip:即時の配信失敗や送出メール設定のエラーなど、テストメールの送信時にSMTPエラーが生じたなら、それらはTest email settingsダイアログボックスに表示されます。

  4. テストメールが失敗したならメール設定のトラブルシューティングをしてください。

  5. テストメールが成功したなら、ページの下部でSave settings(設定の保存)をクリックしてください。

    設定保存のボタン

  6. 設定の実行が完了するのを待ってください。

    インスタンスの設定

メール配信のトラブルシューティング

Support Bundleの作成

表示されたエラーメッセージから何が悪いのかを判断できない場合、メールサーバと GitHub Enterprise Server 間の SMTP のやりとりすべてを含む Support Bundle をダウンロードできます。 Support Bundleをダウンロードして展開したら、完全なSMTPのやりとりのログと関連するエラーを探してenterprise-manage-logs/unicorn.logのエントリをチェックしてください。

unicornログは以下のようなトランザクションになっているはずです。

This is a test email generated from https://10.0.0.68/setup/settings
Connection opened: smtp.yourdomain.com:587
-> "220 smtp.yourdomain.com ESMTP nt3sm2942435pbc.14\r\n"
<- "EHLO="" yourdomain.com\r\n"="" -=""> "250-smtp.yourdomain.com at your service, [1.2.3.4]\r\n"
-> "250-SIZE 35882577\r\n"
-> "250-8BITMIME\r\n"
-> "250-STARTTLS\r\n"
-> "250-ENHANCEDSTATUSCODES\r\n"
-> "250 PIPELINING\r\n"
<- "STARTTLS\r\n"="" -=""> "220 2.0.0 Ready to start TLS\r\n"
TLS connection started
<- "EHLO="" yourdomain.com\r\n"="" -=""> "250-smtp.yourdomain.com at your service, [1.2.3.4]\r\n"
-> "250-SIZE 35882577\r\n"
-> "250-8BITMIME\r\n"
-> "250-AUTH LOGIN PLAIN XOAUTH\r\n"
-> "250-ENHANCEDSTATUSCODES\r\n"
-> "250 PIPELINING\r\n"
<- "AUTH="" LOGIN\r\n"="" -=""> "334 VXNlcm5hbWU6\r\n"
<- "dGhpc2lzbXlAYWRkcmVzcy5jb20="\r\n"" -=""> "334 UGFzc3dvcmQ6\r\n"
<- "aXRyZWFsbHl3YXM="\r\n"" -=""> "535-5.7.1 Username and Password not accepted. Learn more at\r\n"
-> "535 5.7.1 http://support.yourdomain.com/smtp/auth-not-accepted nt3sm2942435pbc.14\r\n"

このログからは、アプライアンスについて以下のことが分かります。

  • SMTPサーバとのコネクションを開いている(Connection opened: smtp.yourdomain.com:587)。
  • コネクションの作成には成功し、TLSの使用を選択している(TLS connection started)。
  • login認証が実行されている(<- "AUTH LOGIN\r\n")。
  • SMTPサーバは、認証を不正として拒否している(-> "535-5.7.1 Username and Password not accepted.)。

GitHub Enterprise Server インスタンスログのチェック

インバウンドのメールが機能していることを検証する必要がある場合、インスタンスの /var/log/mail.log/var/log/mail-replies/metroplex.log との 2 つのログファイルを検証してください。

/var/log/mail.log は、メッセージがサーバーに到達したかを検証します。 以下は、成功したメールの返信の例です:

Oct 30 00:47:18 54-171-144-1 postfix/smtpd[13210]: connect from st11p06mm-asmtp002.mac.com[17.172.124.250]
Oct 30 00:47:19 54-171-144-1 postfix/smtpd[13210]: 51DC9163323: client=st11p06mm-asmtp002.mac.com[17.172.124.250]
Oct 30 00:47:19 54-171-144-1 postfix/cleanup[13216]: 51DC9163323: message-id=<b2b9c260-4aaa-4a93-acbb-0b2ddda68579@me.com>
Oct 30 00:47:19 54-171-144-1 postfix/qmgr[17250]: 51DC9163323: from=<tcook@icloud.com>, size=5048, nrcpt=1 (queue active)
Oct 30 00:47:19 54-171-144-1 postfix/virtual[13217]: 51DC9163323: to=<reply+i-1-1801beb4df676a79250d1e61e54ab763822c207d-5@reply.ghe.tjl2.co.ie>, relay=virtual, delay=0.12, delays=0.11/0/0/0, dsn=2.0.0, status=sent (delivered to maildir)
Oct 30 00:47:19 54-171-144-1 postfix/qmgr[17250]: 51DC9163323: removed
Oct 30 00:47:19 54-171-144-1 postfix/smtpd[13210]: disconnect from st11p06mm-asmtp002.mac.com[17.172.124.250]

クライアントがまず接続し、続いてキューがアクティブになっていることに注意してください。 そしてメッセージが配信され、クライアントがキューから削除され、セッションが切断されています。

/var/log/mail-replies/metroplex.log は、インバウンドのメールが Issue やプルリクエストに返信として追加されるよう処理されているかを示します。 以下は成功したメッセージの例です:

[2014-10-30T00:47:23.306 INFO (5284) #] metroplex: processing <b2b9c260-4aaa-4a93-acbb-0b2ddda68579@me.com>
[2014-10-30T00:47:23.333 DEBUG (5284) #] Matched /data/user/mail/reply/new/1414630039.Vfc00I12000eM445784.ghe-tjl2-co-ie
[2014-10-30T00:47:23.334 DEBUG (5284) #] Moving /data/user/mail/reply/new/1414630039.Vfc00I12000eM445784.ghe-tjl2-co-ie => /data/user/incoming-mail/success

metroplexがインバウンドのメッセージを捉えて処理し、ファイルを/data/user/incoming-mail/successに移動させていることが分かります。

DNS設定の検証

インバウンドのメールを適切に処理するには、適切にAレコード(あるいはCNAME)と共にMXレコードを設定しなければなりません。 詳細は「着信メールを許可するよう DNS およびファイアウォールを設定する」を参照してください。

ファイアウォールあるいはAWSセキュリティグループの設定のチェック

GitHub Enterprise Server インスタンスがファイアウォールの背後にあったり、AWSのセキュリティグループを通じてアクセスされていたりするなら、reply@reply.[hostname]にメールを送信するすべてのメールサーバーに対してポート25がオープンされていることを確かめてください。

サポートへの連絡

依然として問題が解決できない場合は、GitHub Enterprise Support または GitHub Premium Support に連絡してください。 問題のトラブルシューティングを支援するため、メールにはhttp(s)://[hostname]/setup/diagnosticsからの出力ファイルを添付してください。

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください