mastodon構築時等でSMTPのメールをGmailでやりたい
mastodonなどを構築する際にSMTPサーバーの設定をする項目があると思う。
おひとりさまの場合はtootctlを使えばアカウント自体は作れるので無理矢理できなくはないが、他のユーザーを入れる前提で行う場合はSMTPサーバーは必須である。
ただ、ケチな私のような思考回路を持つ人間は「無料でできひんかな」とか考えるわけだ。なんてケチだ!
そんなKing of ケチに味方してくれるサービスがある。
Gmail
この世の全てのメールを統べている(であろう)このサービスを使えば、無料でSMTP設定ができるのだ!
今回はgmailを用いたsmtpの設定方法を記す。
1つ問題があってな…
早速googleで調べると、「『安全性の低いアプリのアクセス』設定をオフにする」などと書かれているサイトをよく見る。しかし、この項目が無い。これには明確な理由がある。
Googleでこれについて調べると、こんな事が書かれている。
アカウントを安全に保つため、2022 年 5 月 30 日より、Google は、ユーザー名とパスワードのみで Google アカウントにログインするサードパーティ製のアプリとデバイスについてサポートを終了いたします。
そう!つまりセキュリティ上の理由で「安全性の低いアプリのアクセス」の設定欄が変更できなくなってしまったのだ。あぁ、なんてことをしてくれたのだ!!
ちなみに僕はこれで「はぁ?(*´Д`)」ってなって1週間くらいやる気失せました。
しかし!!これには明確な解決方法があります!それをここに書きます!
2段階認証を使ってSMTPの設定をする。
まず、任意(mastodonを構築する際は、ユーザーが新規登録する時などにそのメールを使用します。メアドが公に出ても問題ないものにしましょう。)のGoogleアカウントでログイン後、googleアカウントのセキュリティ欄にアクセスする。
https://myaccount.google.com/security
Googleの2段階認証プロセスを利用する。そこをクリック。
アカウントを保護云々のくだりを読んで、「使ってみる」をクリック。
SMSを送るための電話番号を入力する。今後はそのgoogleアカウントにログインする際はYoutubeアプリを立ち上げて認証するって形になると思います。
電話番号宛てに「G-」で始まるコードを含んだSMSが飛ばされたはず。確認して入力。
多分「G-」まで含めて入れないと怒られると思われる。
SMSで送られてきたコードを入力したら確認は完了。有効にしていく。
1度最初のセキュリティの画面に戻り、次はアプリパスワードを設定していく。
まず最初の項目ではメールをクリック。デバイスは何でもないのでその他にして、テキトーに名前入れておきましょう。今後使用することはないです。
アプリパスワードが生成された。この黄色背景の16桁のパスワードは必要になるので一時的にメモっておく。メモった時に4桁おきにある空欄が無くなると思うが、特に問題はないのでそのまま。
このパスワードは漏れると相当ヤバいので、この後コンソール上で設定する際に使用する機会が終わり次第メモを破棄してもらっても構わない。
mastodonに組み込む
RAILS_ENV=production bundle exec rake mastodon:setup
で対話ウィザードを開始した上でSMTP設定を行っている前提で話す。すでに鯖を作った人は.env.production
を開けばSMTPの部分が出てくる。
Do you want to send e-mails from localhost? No (Gmailを使うため、Noを選ぶ) SMTP server: smtp.gmail.com (ここはコピペ) SMTP port: 587 (デフォルトでも入力されてますが、587) SMTP username: [email protected] (2段階認証を行った任意のメールアドレス) SMTP password: 16桁のアプリパスワード(セキュリティ上コンソールには出てきません) SMTP authentication: plain (デフォルト) SMTP OpenSSL verify mode: none (デフォルト) E-mail address to send e-mails from: [email protected] (2段階認証を行った任意のメールアドレス) Send a test e-mail with this configuration right now? Yes (実際にSMTPが動くかテストメールを送れる。Yesで試す) Send test e-mail to: [email protected](テストメールの送信先) E-mail could not be sent with this configuration, try again? : (何らかの原因で送れませんでした。Yesで再度設定) Save configuration?: true(成功した際に出ます。テストメールの送信先を確認し、受信boxにメールが来てるか確認しましょう。)
Save configuration?と出たら一度テストメールの送信先のメールボックスを確認する。
「Mastodon SMTP configuration works!」というメールが届いていれば成功!やったね!
今回はmastodonでのGmailを用いたSMTP設定方法をご紹介した。
古い記事は軒並み使えなくなっていたので、私自身も迷った経験が数回あったのでここに記した。
Gmailって改めてすげぇんだな…これ無料なんだぜ…最強ぢゃん…