Last-modified: 2011-12-26 (月) 01:24:42
Exim4/外部SMTPサーバー経由でメールを送信したい(CentOS)

概要

自前のSMTPサーバーを立てずに、外部へのメール送信を実現します。
ここでは、gmailのSMTPサーバーを経由して送ります。

方法

  1. eximが入っているかどうか確認します。
    Everything is expanded.Everything is shortened.
      1
    
     
    
    yum list | grep exim
  2. 入っていない場合はインストールします。
    最小構成なら入っていません。
    Everything is expanded.Everything is shortened.
      1
    
     
    
    yum install exim
  3. /etc/exim/exim.confを編集します。
    Everything is expanded.Everything is shortened.
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
    
    -
    !
     
     
    -
    !
     
     
     
     
     
    -
    |
    |
    |
    |
    |
    |
    !
    -
    !
     
     
    -
    !
     
     
     
     
     
    -
    !
     
     
    -
    !
     
     
     
     
    -
    !
    
    # ~途中省略~
     
    begin routers
     
    # gmail用
    send_via_gmail:
      driver = manualroute
      domains = ! +local_domains
      transport = gmail_smtp
      route_list = * gmail-smtp.l.google.com
     
    # smarthost使用なので無効化
    #dnslookup:
    #  driver = dnslookup
    #  domains = ! +local_domains
    #  transport = remote_smtp
    #  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
    #  no_more
     
    # ~途中省略~
     
    begin transports
     
    # gmail用
      gmail_smtp:
      driver = smtp
      port = 587
      hosts_require_auth = gmail-smtp.l.google.com
      hosts_require_tls = gmail-smtp.l.google.com
     
    # ~途中省略~
     
    begin authenticators
     
    # gmail用
      gmail_login:
      driver = plaintext
      public_name = LOGIN
      hide client_send = : <アカウント> : <パスワード>
     
    # ~途中省略~
     
  4. 送信テストを行ないます。
    Everything is expanded.Everything is shortened.
      1
      2
      3
      4
      5
    
     
     
     
     
     
    
    sendmail "<送信先メールアドレス>"
    Subject: テスト
     
    見れるかな?
    .
  5. メールが送信されているか確認します。
  6. デーモンが起動していなくてもメールは送信できるので、不要ならばデーモンを停止します。
    Everything is expanded.Everything is shortened.
      1
    
     
    
    chkconfig exim off

検証時の環境

参考