#008
posted on 2020.12.29

MAMPでメール送信。

Macに元々インストールされているメール転送エージェント(MTA : Mail Transfer Agent)のPostfixでSMTP(Simple Mail Transfer Protocol)にGmailを使用して、MAMPのlocalhostからメールを送信。

 

  1. 事前にGoogleアカウントの2段階認証を設定。(必須)
  2. Gmailのアプリパスワードを発行。
  3. Postfixのファイル (/private/etc/postfix/main.cf) に記述追加。
  4. 記述追加したPostfixが読み込むGmailアドレスとアプリパスワードの設定ファイル作成。
  5. Postfixのデータベースを更新。

 

Gmailのアプリパスワードの発行

※ Gmailのアプリパスワードを発行するには、事前にGoogleアカウントの2段階認証の設定が必須。

  1. 「Googleアカウント管理ページ」 > 左メニュー「Security」 > 右カラム「Signing in to Google」 > 「2-Step Varification」をオンに設定する。
  2. 「Googleアカウント管理ページ」 > 左メニュー「Security」 > 右カラム「Signing in to Google」 > 「App passwords」にアクセスする。
  3. 下方にある「Select app」は「Mail」、「Select device」は「Mac」を選択して「GENERATE」でアプリパスワード発行。
  4. 表示されたアプリパスワードをメモ。

 

 

Postfixの設定

「起動ディスク」>「private」>「etc」>「postfix」>「main.cf」をテキストエディターかターミナルで開き、一番下に下記を追記。

#ローカルでgmailを使用できるようにする
myorigin = gmail.com
myhostname = smtp.gmail.com
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/private/etc/postfix/任意のファイル名
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
inet_protocols = all
smtp_use_tls = yes
smtp_tls_security_level = encrypt
tls_random_source = dev:/dev/urandom

 

smtp_sasl_password_mapsの行で指定したディレクトリ、ファイル名のファイルを新規作成。

Finderで直接ファイルを新規作成するか、ターミナルを開いて下記を実行。

sudo vim /private/etc/postfix/任意のファイル名

 

vimの編集状態で「I」キーでインサートモードにして、下記をコピペ。

※ アプリパスワードの空白は要らないので削除。

[smtp.gmail.com]:587 アカウント名@gmail.com:取得したアプリパスワード

作業が完了したら「esc」キーを押して、「:wq」でvim編集を終了させる。

 

mapデータベースを更新するために下記を実行。

sudo postmap /private/etc/postfix/作成したファイル名

 

指定のディレクトリに「作成したファイル名.db」のファイルが作成されていれば、下記でPostfixを再起動して作業完了。

sudo postfix reload

 

Postfixが走っていなければ下記を実行。

sudo postfix start
#停止はpostfix stop

 

 

テスト送信で動作確認

ターミナルで下記を実行してメール送信の動作確認をする。

date | mail -s test 受信したいメールアドレス

date : 現在時刻

mail : メール送信コマンド

-s : タイトル指定

(件名に「test」、本文に「現在時刻」でメール送信。)

 

 

この記事をシェア