意外と面倒だったのでメモ。以下、FreeBSD向け。
まず、FreeBSDのportでそのままコンパイルするとtlsやsaslが無効になっているので、smtp.gmail.comとSTARTTLSができずに失敗する。なので、Makefileを覗いてそれらしいコンパイルオプションをつけてあげる。
$ pwd /usr/port/mail/postfix $ sudo make -DWITH_TLS -DWITH_SASL2 $ sudo make install
/usr/local/etc/postfix/main.cfに以下を追加。
relayhost = [smtp.gmail.com]:587 smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_mechanism_filter = plain
/usr/local/etc/postfix/sasl_passwdを作成して以下を記述。
[smtp.gmail.com]:587 hogeuser@gmail.com:hogepasswd
postmapでdb化。
$ postmap /usr/local/etc/postfix/sasl_passwd $ ls -ltr /usr/local/etc/postfix/sasl_passwd* -rw-r--r-- 1 root wheel 53 6 4 23:31 /usr/local/etc/postfix/sasl_passwd -rw-r--r-- 1 root wheel 16384 6 4 23:31 /usr/local/etc/postfix/sasl_passwd.db
postfixをstartするなりreloadするなり。