GoogleAppsで設定している独自ドメインでメールが届かない問題を解決

今回はちょっとマニアックな設定方法です。当社はWebは専用サーバー、メールはGooleAppsを使用しています。それぞれ別サーバーに置いてある状態です。今回、Webサーバーからメールを送る時に、スパム扱いされることがあったのでその解決方法です。
WebサーバーはCentOSでsendmailをインストールしています。これで届くメールアカウントと届かないメールアカウントがあることが分かりました。
調べてみても、はっきりとした原因は不明。そこでサーバー(ローカル)からメールを送るのではなく、一旦GooleAppsのメールサーバーにリレー配信して、そこからメールを送るように設定を変更してみました。
sendmail.mcを変更
vi /etc/mail/sendmail.mc に以下の情報を追記
define(`confAUTH_OPTIONS', `A')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl TRUST_AUTH_MECH(`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl FEATURE(`authinfo', `Hash -o /etc/mail/authinfo')dnl define(`SMART_HOST', `smtp.gmail.com')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
そしてcfファイルを作成
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
認証用のファイルを作成
/etc/mail/authinfo を新規作成。アカウント/パスワードを記載。
AuthInfo:smtp.gmail.com "U:メールアドレス" "P:パスワード" "M:PLAIN" AuthInfo:smtp.gmail.com:587 "U:メールアドレス" "P:パスワード" "M:PLAIN"
/etc/mail/authinfo.db をmakemapコマンドで作成
# makemap -r hash /etc/mail/authinfo.db < /etc/mail/authinfo
これで、Webサーバーから送られるメールはGoogleAppsの指定したアカウントから送信されるようになります。ただ、これでメールは届くようになりますが、Webサービスごとにアカウントを切り分けできないのが問題。ひき続き、解決方法を模索します。
[sc name=”engeneer”]
SHARE
スキルアップにMENTA
MENTAはいろんなプロに相談できるNo1メンターサービスです。
僕自身もプロダクトの壁打ち・相談にのっています。個人開発でもコードレビュー、セキュリティ面のチェック、デザイン、広告、コンテンツマーケ、SNS集客について相談する、など使えます。
YouTubeでも発信中!
PROFILE

入江 慎吾
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)