【メールサーバ】Postfix設定その2(SMTP-Auth)

  • Postfix設定(SMTP-Auth)(自宅サーバ設定)
    メール送信時にユーザ名とパスワードで認証を行えるよう設定します。

    vi /etc/postfix/main.cf
    
    下記内容を追加
    #########################################################
    # SMTP-Auth設定(自宅サーバ設定)
    # smtpd:SMTPメールサーバとして他からの接続を受ける時の設定
    #########################################################
    # SMPTPメールサーバとして他から接続
    smtpd_sasl_auth_enable = yes
    
    # 匿名ログイン不許可
    smtpd_sasl_security_options = noanonymous
    
    # ローカル認証 realm の名前を設定
    # myoriginの設定と同一にする。
    smtpd_sasl_local_domain = $myhostname
    
    # メールの中継機能設定
    # permit_mynetworks:自サイトのネットワークからの接続を無条件で許可
    #                    下記パラメータに設定されているアドレス宛ての場合は許可
    #                      mydestination
    #                      inet_interfaces
    #                      virtual_alias_domains
    #                      virtual_mailbox_domains
    #                      relay_domains
    # permit_sasl_authenticated:SMTP認証された接続を無条件で許可
    # reject_unauth_destination:上記以外は拒否
    smtpd_recipient_restrictions =
        permit_mynetworks
        permit_sasl_authenticated
        reject_unauth_destination
    
  • Linuxのパスワードと同じパスワード利用する場合

    • 設定ファイルの設定内容確認

      cp -pi /etc/sasl2/smtpd.conf /etc/sasl2/smtpd.conf.org
      vi /etc/sasl2/smtpd.conf
      
      下記内容が設定されていることを確認
      pwcheck_method: saslauthd
      mech_list: plain login
      
      cat /etc/sysconfig/saslauthd
      
      下記内容が設定されていることを確認
      MECH=pam
      
    • saslauthd起動設定
      saslauthdを起動し、自動起動設定にしておきます。

      /etc/rc.d/init.d/saslauthd start
      chkconfig saslauthd on
      
  • Linuxのパスワードと異なるパスワード利用する場合

    • 設定ファイルの設定内容変更

      cp -pi /etc/sasl2/smtpd.conf /etc/sasl2/smtpd.conf.org
      vi /etc/sasl2/smtpd.conf
      
      下記内容を変更
      pwcheck_method: saslauthd
      ↓
      pwcheck_method: auxprop
      
      mech_list: plain login
      ↓
      # mech_list: plain login
      
    • SMTP-Auth(送信承認)用のパスワード設定

      saslpasswd2 -u mail.z-area.net -c ユーザー名
      Password:パスワード
      Again (for verification):パスワード
      

      mail.z-area.netはz-area.netではNGです。
      「/etc/postfix/main.cf」の「myhostname」と同値を設定します。

      設定した内容を確認します。

      sasldblistusers2
      ユーザ名@mail.z-area.net: userPassword
      

      Postfixが上記で作成したユーザー名とパスワードの紐付ファイルに
      アクセスできるようにパーミッションを変更します。

      chmod 640 /etc/sasldb2
      chgrp postfix /etc/sasldb2
      
    • SMTP-Auth(送信承認)用の設定内容削除
      ユーザを削除する場合は下記コマンドを実行します。

      saslpasswd2 -d ユーザー名 -u mail.z-area.net
      
    • saslauthd起動設定
      saslauthdが起動していたら停止し、
      自動起動設定になっていたら削除しておきます。

      /etc/rc.d/init.d/saslauthd stop
      chkconfig --del saslauthd