OpenSMTPDを使ってOutlook.com経由でメールを送る

前提とする環境はArch Linuxで公式パッケージからopensmtpdをインストールする場合。

まずMicrosoftアカウントでアプリパスワードを発行する。 パーミッションは640、所有ユーザはroot、所有グループはsmtpdとして/etc/smtpd/secretsを書く。

 hogefuga myaccount@outlook.jp:アプリパスワード

1列目のhogefugaはラベルなのでなんでもよい。あとで使う。 2列目は使っているメールアドレスとアプリパスワードをコロンで繋いだもの。

/etc/smtpd/smtpd.confは次のような内容にする。

table aliases file:/etc/smtpd/aliases
table secrets file:/etc/smtpd/secrets
 
listen on localhost
 
action "local" maildir alias <aliases>
action "relay" relay host smtp+tls://hogefuga@smtp.office365.com:587 auth <secrets>
 
match for local action "local"
match from local for any action "relay"

7行目のhogefugaはsecretsで定義したラベルにする。

これでsendmail(1)が使えるようになるので、sendjpmailなどで遊ぼう。

つぎのページを参考にした。

support.microsoft.com