0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

blastengineを使ってPostfixでメール送信を行う

Posted at

blastengineはシンプルに使える開発者向けメールサービスを提供しています。何かと面倒なメール配信をシンプルに、かつ確実に送信先に届くようになります。

今回はblastengineを使って、Postfix経由でメール送信を行う方法を紹介します。

ユーザ登録する

blastengineにユーザ登録します。管理画面に入るためのユーザID、パスワードが手に入るので、ログインします(ユーザIDは後で使います)。

getting-started-4.jpg

送信元ドメインのSPFを設定する

送信元として利用するドメイン(自分で持っているもの)の設定をします。これは任意のドメイン管理サービスで設定できますが、TXTレコードに以下のSPFを追加します。

txt @ v=spf1 include:spf.besender.jp ~all

SMTP用のパスワードを設定する

ログイン後、管理画面の右上にある設定メニューに移動します。

getting-started-6.jpg

そしてSMTPリレーの設定で、SMTP用のパスワードを設定できます。また、IPアドレスベースの認証も可能です。

image.png

Postfix で SMTP リレーとしてblastengineを構成する

PostfixでSMTPリレーとしてblastengineを使用する設定を行います。基本的にターミナルで作業します。全体として、ルートユーザーの方が良さそうですが、sudoでも可能です。

設定ファイルを編集します。

sudo vi /etc/postfix/main.cf

設定内容は以下の通りです。

# 以下が有効であればコメントアウト
# default_transport = error
# relay_transport = error

# SMTP host and port
relayhost = [smtp.engn.jp]:587
smtp_tls_security_level = encrypt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
header_size_limit = 4096000
smtp_sasl_security_options = noanonymous

完了したら保存します。

次に、認証情報を保存します。 /etc/postfix/sasl_passwd を開くか、新規作成します。

sudo vi /etc/postfix/sasl_passwd

内容は以下の通りです。 USER_NAMESMTP_PASSWORD はblastengineのユーザーIDとSMTP用のパスワードに置き換えてください。

[smtp.engn.jp]:587 USER_NAME:SMTP_PASSWORD

保存したら、portmap コマンドで .db ファイルを作成します。

sudo postmap /etc/postfix/sasl_passwd

*.dbが作られていることを確認します。

ls -l /etc/postfix/sasl_passwd*

作成されていれば、元々の sasl_passwd ファイルは削除します。

sudo rm /etc/postfix/sasl_passwd

さらに saasl_passwd.db ファイルの権限を変更します。

sudo chmod 600 /etc/postfix/sasl_passwd.db

設定が間違っていないか、確認します。エラーがなければ問題ありません。

sudo postfix check

設定を反映させるために、Postfixを再起動します。

sudo systemctl restart postfix
# または開始
sudo systemctl start postfix

OSによっては postfix コマンドの場合もあります。

sudo postfix restart
# または開始
sudo postfix start

メール送信

メール送信を行います。 mail コマンドでは送信元が変更できないので、 sendmail コマンドを使います。 FROM_ADDRESSTO_ADDRESS は適宜変更してください。

/usr/sbin/sendmail -t <<EOF
From: FROM_ADDRESS
To: TO_ADDRESS
Subject: Test from blastengine

Message from terminal
EOF

これで、blastengineの管理画面にて、メール送信完了が確認できていれば問題ありません。

image.png

もちろんメールクライアントでも受信を確認できます。

image.png

まとめ

Postfixを使えば、メール送信はローカルのものが使えるので、より手軽です。ぜひお試しください。

エンジニア向けメール配信システム「ブラストエンジン」

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?