Debianの標準MTAであるeximの設定を行い、google経由でメール送信を行う ※この場合、メールはgoogleアカウントから送信したように見える
$ sudo dpkg-reconfigure exim4-config
スマートホストでメール送信; SMTP または fetchmail で受信する
mail.example.com
127.0.0.1
空欄
空欄
smtp.gmail.com::587
はい
example.com
いいえ
ホームディレクトリ内の Maildir 形式
いいえ
または、直接設定ファイルを編集する
$ sudo nano /etc/exim4/update-exim4.conf.conf
smtp.gmail.com の情報確認
$ host smtp.gmail.com smtp.gmail.com is an alias for gmail-smtp-msa.l.google.com. gmail-smtp-msa.l.google.com has address 74.125.203.109 gmail-smtp-msa.l.google.com has IPv6 address 2404:6800:4008:c06::6d
/etc/exim4/passwd.client の編集
$ sudo nano /etc/exim4/passwd.client *.google.com:username@gmail.com:password smtp.gmail.com:username@gmail.com:password gmail-smtp-msa.l.google.com:username@gmail.com:password
$ sudo update-exim4.conf $ sudo systemctl restart exim4
メール送信
echo "Test" | mail -s "test" username@gmail.com
動作ログの確認
$ sudo tail -f /var/log/exim4/mainlog
※この場合、メールはgoogleアカウントから送信したように見える
127.0.0.1 => 空欄または、ネットワークを指定する
空欄 => 192.168.0.0/24 でLAN内からの送信を許可する
LAN内のPCからメールを送信すると下記のエラーに
501 Syntactically invalid HELO argument(s)
WinPCから送信したメールのHELO文字列に、コンピュータ名が付加されており、アンダースコア文字が含まれていたのが原因。