eximの設定

Debianの標準MTAであるeximの設定を行い、google経由でメール送信を行う。
スマートホストは、アウトバウンド電子メールを処理するために特化したメールリレーで、OP25B(Outbound Port 25 Blocking)への対応として、ポート587のホストと通信してアウトバウンド電子メールを送信します。
※この場合、メールはgoogleアカウントから送信したように見える

設定

$ sudo dpkg-reconfigure exim4-config

または、直接設定ファイルを編集する

$ 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

/etc/exim4/passwd.client のアクセス権変更

$ sudo chmod 640 /etc/exim4/passwd.client
$ sudo chown root:Debian-exim /etc/exim4/passwd.client

設定ファイルの更新と再起動

/etc/exim4/update-exim4.conf.conf を直接編集した場合。

$ sudo update-exim4.conf
$ sudo systemctl restart exim4

動作確認

メール送信

echo "Test" | mail -s "test" username@gmail.com

動作ログの確認

$ sudo tail -f /var/log/exim4/mainlog

LAN内からメールを送信できるようにする

※この場合、メールはgoogleアカウントから送信したように見える

なぜか送信できない

LAN内のPCからメールを送信すると下記のエラーに

501 Syntactically invalid HELO argument(s)

WinPCから送信したメールのHELO文字列に、コンピュータ名が付加されており、アンダースコア文字が含まれていたのが原因でした。

【参考】インストール直後の設定

$ cat /etc/exim4/update-exim4.conf.conf
dc_eximconfig_configtype='local'
dc_other_hostnames='debian'
dc_local_interfaces='127.0.0.1 ; ::1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS