2015年12月21日月曜日

RedmineにGmailを設定して534-5.7.14が出る場合の対処法

結論からいうと
対象Googleアカウントの2段階認証を有効にして、アプリパスワードで認証させる。

理由

2014年夏ごろ、GmailはOAuth 2.0非対応のメーラーからの認証を「最新のセキュリティ標準を満たしていないアプリ」として拒否する仕様に変わったらしい。

534-5.7.14は、

SMTP応答コード
534 認証メカニズムが弱すぎる
(引用:SMTP応答コード)

との事らしい。知らんけど。

解決策

  • OAuth2.0対応のメーラーを使う
  • 2段階認証を有効にしてアプリパスワードを使う
  • 安全性の低いアプリのアクセスを許可する(非推奨)

実質的にRedmineでGmailを使う場合は2段階認証必須となっている。
これが、この記事を書いた直接の理由。


設定方法

まず、Gmailアカウントの2段階認証を有効にしてアプリパスワードを作る。
手順は下記リンク
Googleアカウントヘルプ:アプリパスワードでログイン

アプリパスワードを取得したらredmineのconfiguration.ymlに次のように記述する。

default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      enable_starttls_auto: true
      address: "smtp.gmail.com"
      port: 587
      domain: "smtp.gmail.com"
      authentication: :plain
      user_name: "アドレス@gmail.com"
      password: "作成したアプリパスワード"

ここで、Bitnamiユーザーかつ、「正直、見様見真似でやっている。ぶっちゃけ右も左もよく解らない」というユーザーが注意すべきこと。
configuration.ymlにはじめから設定例が記述されているので、それに書き足しがちだが、設定例が多数コメントインしているので、上記設定だけを記述すること。
(ちなみに、本家Redmineではconfiguration.ymlが初期状態で存在せず、管理者が必要に応じて作成する。)

以上。
あとはapacheを再起動すればメールが正常に遅れているはず。少なくとも私の環境(Bitnami Redmine3.1)ではこれでOKだった。
参考までに、アプリパスワードが間違ってるとエラー応答コードが534-5.7.9になる(うろ覚え)

0 件のコメント:

コメントを投稿