レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

Postfix で Submissionポート(サブミッション・ポート)& SMTP-AUTH(認証)を使ってみる

2012年5月31日 2015年5月14日
postfix smtp auth

前回までの関連記事

前回までで、Postfixの送受信の環境設定を行いました。
今回は、Submissionポート(サブミッション・ポート)& SMTP-AUTH(認証)を使ってメールの中継を行ってみます。

Outbound Port25 Blocking (OP25B)とは、
TCPポート25を使ってメールの送信を規制することです。
SPAM対策の一つで、一般的にISP管理下のIPアドレスに関してOP25B対象となり、ISP管理下のPCからいきなりTCPポート25を使って他のサーバーへメール送信できなくなります。 つまり、メール送信は、ISPが運用するSMTPを経由しないと送信できないようになっています。
ただ、これでは、出先でいつも利用しているISP以外のISPでインターネットに接続した場合、メール送信できなくなります。 (いつも利用しているISP以外のISPのOP25Bの規制により、TCPポート25を使っていつも利用しているISPが運用するSMTPへ接続できません。) その対策として、Submissionポートサブミッション・ポート)があります。
Submissionポートサブミッション・ポート)とは、
いかなるインターネット接続状態からのメール送信のための TCPポート25と異なるTCPポート(TCPポート587)のことを言います。
このSubmissionポートを使う(tcpポート番号を違える)ことで、OP25Bの規制を回避し、メール送信ができるようになります。
一般的に、このSubmissionポートを利用するには、認証(ユーザ、パスワード)が必要になります。
SMTP Authentication (SMTP-AUTH) とは、
メール送信に使うプロトコルであるSMTPにユーザ認証機能を追加した仕様のことで、RFC 2554によって規定されています。

Submissionポートのための設定

Submissionポートを利用するためのSMTP-AUTH(認証)にSASLを利用します。

手順として、まずは、

  1. SASLをインストールする
  2. 認証のための設定を行う
  3. 動作確認

の順で設定していきます。

[ 用語の解説 ]

Simple Authentication and Security Layer(SASL)とは、
インターネットプロトコルにおける認証とデータセキュリティのためのフレームワークである。 アプリケーションプロトコルから認証機構を分離することを可能にし、理論上はSASLでサポートする任意の認証機構を任意のアプリケーションプロトコルで使うことができる。 あるユーザーが別の者のアイデンティティを仮定できる「プロキシ認証」もサポートできる。 データ一貫性/データ機密性サービスを提供する「データセキュリティ層」も提供できる。 データセキュリティ層を提供する機構の例として DIGEST-MD5 がある。 SASLをサポートするアプリケーションプロトコルは、Transport Layer Security (TLS) もサポートしてSASLの提供するサービスを補完するのが一般的である。
(出典:Wikipedia)

要は、インターネットにおける認証システムの1つです。
SendmailのSubmissionポートを利用する上での認証にSASLを用います。

SASLをインストールする

以下の3つのパッケージがインストールされていればOKです。

  • libsasl2-2
  • libsasl2-modules
  • sasl2-bin

インストールされていないようなら、以下のようにインストールします。

$ apt-get install sasl2-bin libsasl2-modules libsasl2-2
...
$ dpkg -l | grep sasl
ii  libsasl2-2                          2.1.23.dfsg1-7               Cyrus SASL - authentication abstraction library
ii  libsasl2-modules                    2.1.23.dfsg1-7               Cyrus SASL - pluggable authentication modules
ii  sasl2-bin                           2.1.23.dfsg1-7               Cyrus SASL - administration programs for SASL users database
$
sasl2-bin をインストールすれば、依存パッケージとして他のパッケージもインストールされます。そのため、特に指定しなくても良いです。ここではわかりやすく指定しています。

また、Debian,Ubuntuで提供されているPostfixでは、デフォルトSASLに対応したバイナリパッケージが提供されていますので、Postfixの再構築などは必要ありません。
PostfixでSASLに対応しているか否か確認するには、以下のコマンドで確認することができます。
# SMTPサーバでのSASLサポート を確認
$ postconf -a
cyrus
dovecot

# SMTP+LMTPクライアントでのSASLサポート  を確認
$ postconf -A
cyrus
cyrus : Cyrus SASL のこと。
dovecot : Dovecot SASL のこと。

もし、上記のコマンドで何も出力されない場合は、Postfixの再構築が必要になります。

認証のための設定を行う

SMTP-AUTH認証には、大きく2つの方法が提供されています。

  • PAM認証

    Pluggable Authentication Module を略してPAMと言います。 PAM自体は、認証のためのモジュール群を言います。厳密には異なりますが、簡単にはLinux(Unix)のユーザ認証をそのまま利用できる仕組みでもあります。 つまり、メール専用のユーザ、パスワードを必要としません。


  • SASL認証 :

    Simple Authentication and Security Layer を略してSASLと言います。 SASL自体は、認証のためのセキュアなレイヤ規格を言います。簡単にはLinux(Unix)のユーザ認証とは別にセキュアな認証方法を別途提供するものです。 つまり、メール専用のユーザ、パスワードを必要となります。


いずれも先のSASL関連パッケージに含まれているので、他のパッケージをインストールする必要はありません。
以降に、それぞれの設定方法を簡単に解説しておきます。


共通設定(Postfix の設定) :

いずれの認証においても SMTP-AUTHのための設定は、

の編集内容は変わりません。
以降に各ファイルの編集概要を記載しておきます。


/etc/postfix/main.cf
...
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
#smtpd_sasl_local_domain = $myhostname
#smtpd_sasl_application_name = smtpd  # replace to smtpd_sasl_path
#smtpd_sasl_path = smtpd
#broken_sasl_auth_clients = yes
smtpd_recipient_restrictions=
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_unauth_destination
ここで設定している各パラメータの意味を簡単に解説しておきます。

smtpd_sasl_auth_enable (デフォルト: no)
Postfix SMTPサーバの SASL 認証を有効にします。デフォルトでは、Postfix SMTPサーバは認証を使いません。
リモートの SMTPクライアントが認証されると、リレーアクセスを許可するのに次のように permit_sasl_authenticated アクセス制限が使えます:
smtpd_recipient_restrictions =
    permit_mynetworks, permit_sasl_authenticated, ...
認証されていないクライアントからの全ての SMTP 接続を拒否するには、”smtpd_delay_reject = yes” (これはデフォルトです) を指定し、以下のものを使います:
smtpd_client_restrictions = permit_sasl_authenticated, reject
SASLの設定と操作の詳細は SASL_README ファイルを参照してください。
smtpd_sasl_local_domain (デフォルト: empty)
SASL認証 realm の名前。
デフォルトでは、ローカル認証 realm 名は null 文字列です。
例:
smtpd_sasl_local_domain = $mydomain
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_application_name (デフォルト: smtpd)
SASL サーバの初期化に使われるアプリケーション名。これは SASL 設定ファイルの名前を制御します。デフォルト値は smtpd であり、smtpd.conf という名前の SASL 設定ファイルに対応します。
この機能はPostfix 2.1および2.2で利用可能です。Postfix 2.3では、smtpd_sasl_path と改名されました。
smtpd_sasl_application_name (デフォルト: smtpd)
SASL サーバの初期化に使われるアプリケーション名。これは SASL 設定ファイルの名前を制御します。デフォルト値は smtpd であり、smtpd.conf という名前の SASL 設定ファイルに対応します。
この機能はPostfix 2.1および2.2で利用可能です。Postfix 2.3では、smtpd_sasl_path と改名されました。
smtpd_sasl_security_options (デフォルト: noanonymous)
SASLセキュリティオプション; Postfix 2.3では、利用可能な機能は smtpd_sasl_type で選択されたSASLサーバの実装に依存します。
以下のセキュリティ機能は cyrus サーバSASL実装用に定義されているものです:
Postfix SMTPサーバがクライアントに提供する認証メカニズムを制限します。使用できる認証メカニズムのリストはシステムに依存します。
以下のゼロ個以上を指定します:
  • noplaintext

    – 平文パスワードを使う方法を許可しません。

  • noactive

    – active (非辞書) 攻撃を受けるような方法を許可しません。

  • nodictionary

    – passive (辞書) 攻撃を受けるような方法を許可しません。

  • noanonymous

    – 匿名認証を認めるような方法を許可しません。

  • mutual_auth

    – 相互認証を提供する方法のみを許可します (SASL バージョン 1 では使えません)。

デフォルトでは、Postfix SMTPサーバは平文パスワードを受け付けますが、匿名ログインは受け付けません。
警告: クライアントはサーバが案内した順番 (例えば PLAIN ANONYMOUS CRAM-MD5) で認証方法を試すようであり、平文パスワードを無効にすると、これはクライアントが CRAM-MD5 を使えたとしても匿名でログインしようとしてしまうことを意味します。そのため、平文ログインを無効にする場合、匿名ログインも無効にしてください。Postfixは匿名ログインを認証とは扱いません。
例:
smtpd_sasl_security_options = noanonymous, noplaintext
broken_sasl_auth_clients (デフォルト: no)
古いバージョンの AUTH コマンド (RFC 2554) を実装したSMTPクライアントとの相互運用性を有効にします。 このようなクライアントにはMicroSoft Outlook Expressバージョン4やMicroSoft Exchange バージョン5.0といった例があります。
標準的でない方法の AUTH サポートをPostfixに案内させるには、”broken_sasl_auth_clients = yes” を指定します。
smtpd_recipient_restrictions (デフォルト: permit_mynetworks, reject_unauth_destination)
Postfix SMTPサーバが RCPT TO コマンドの場面で適用するアクセス制限。 デフォルトでは、Postfix SMTPサーバは以下のものを受け取ります:
  • IPアドレスが $mynetworks にマッチするクライアントからのメール、または:
  • 送信者指定のルーティング ((user@elsewhere@domain) を含むアドレス宛以外で $relay_domains にマッチするリモートの配送先へのメール、または:
  • $inet_interfaces や $proxy_interfaces , $mydestination , $virtual_alias_domains , $virtual_mailbox_domains にマッチする、ローカル配送先へのメール。
重要: このパラメータの設定を変更したら、少なくとも以下のどれか一つの制限を指定しなければいけません。そうしないと、Postfixはメールの受信を拒否してしまいます:
reject, defer, defer_if_permit, reject_unauth_destination
制限のリストをカンマまたは空白で区切って指定します。次の行を空白で始めることで、長い行を継続します。制限は指定された順に適用されます; 最初にマッチした制限が勝ちます。
以下の制限は RCPT TO コマンドで受け取る受信者アドレスに特有です。
  • check_recipient_access type:table

    – 指定された access(5) データベースで RCPT TO アドレスやドメイン、親ドメイン、localpart@ を検索し、対応する action を実行します。

  • check_recipient_mx_access type:table

    – 指定された access(5) データベースで RCPT TO アドレスのMXホストを検索し、対応する action を実行します。注意: 安全上の理由から “OK” という結果は許されません。特定のホストをブラックリストから外すには、代わりに DUNNO を使ってください。この機能はPostfix 2.1以降で使えます。

  • check_recipient_ns_access type:table

    – 指定された access(5) データベースで RCPT TO アドレスのDNSサーバを検索し、対応する action を実行します。注意: 安全上の理由から “OK” という結果は許されません。特定のホストをブラックリストから外すには、代わりに DUNNO を使ってください。この機能はPostfix 2.1以降で使えます。

  • permit_auth_destination

    – 以下のうち一つを満たした場合に、要求を許可します:

    • Postfixがメールを転送する場合: 解決された RCPT TO アドレスが $relay_domains またはそのサブドメインにマッチし、送信者指定のルーティング (user@elsewhere@domain) を含まない場合、
    • Postfixが最終配送先の場合: 解決された RCPT TO アドレスが $mydestination や $inet_interfaces , $proxy_interfaces , $virtual_alias_domains , $virtual_mailbox_domains にマッチし、送信者指定のルーティング (user@elsewhere@domain) を含まない場合。
  • permit_mx_backup

    – ローカルメールシステムがRCPT TOアドレスのバックアップMXの場合、もしくはアドレスが認められた配送先 (定義は permit_auth_destination を参照) の場合に、要求を許可します。

    • 安全性: permit_mx_backup は送信者指定のルーティング情報 (例: user@elsewhere@domain) を持つアドレスは受け付けません。
    • 安全性: アクセスが permit_mx_backup_networks で制限されていない場合、permit_mx_backup を間違って使うと脆弱性を持つ可能性があります。
    • 安全性: Postfixバージョン2.3では、ローカルメールシステムが受信者ドメインのプライマリMXの場合、permit_mx_backup はアドレスを受け付けなくなりました。例外: アドレスが認められた配送先 (定義は permit_auth_destination を参照) の場合には、 permit_auth_destination はアドレスを受け付けます。
    • 制限: Postfixバージョン2.0より前のバージョンでは、一時的にDNS検索に問題があってもメールが拒否されるかもしれません。
  • reject_non_fqdn_recipient

    – RCPT TO アドレスが RFC で要求されているような完全修飾ドメイン形式ではない場合に、要求を拒否します。 non_fqdn_reject_code パラメータには拒否された要求に対する応答コードを指定します (デフォルト: 504)。

  • reject_rhsbl_recipient rbl_domain=d.d.d.d

    – RCPT TO ドメインが rbl_domain 以下の A レコード “d.d.d.d” でリストアップされている場合に、要求を拒否します (Postfixバージョン 2.1以降のみ)。”=d.d.d.d” が指定されていないと、逆にしたクライアントネットワークアドレスが rbl_domain 以下のいずれかの A レコードでリストアップされている場合に、要求を拒否します。 maps_rbl_reject_code パラメータには要求を拒否する際の応答コードを(デフォルト: 554)、default_rbl_reply にはデフォルトのサーバ応答を、そして rbl_reply_maps パラメータには rbl_domain でインデックス化されたサーバ応答を持つテーブルを指定します。この機能はPostfixバージョン2.0以降で使えます。

  • reject_unauth_destination

    – 以下のどれか一つに当てはまらない場合に、要求を拒否します:

    • Postfixがメールを転送する場合: 解決された RCPT TO アドレスが $relay_domains またはそのサブドメインにマッチし、送信者指定のルーティング (user@elsewhere@domain) を含まない場合、
    • Postfixが最終配送先の場合: 解決された RCPT TO アドレスが $mydestination や $inet_interfaces , $proxy_interfaces , $virtual_alias_domains , $virtual_mailbox_domains にマッチし、送信者指定のルーティング (user@elsewhere@domain) を含まない場合。

    relay_domains_reject_code パラメータには、拒否された要求に対する応答コードを指定します (デフォルト: 554)。

  • reject_unknown_recipient_domain

    – Postfixが受信者アドレスの最終配送先ではなく、かつRCPT TOアドレスにDNS AもしくはMXレコードがない場合、もしくは長さがゼロのMXホスト名を持つような不正なMXレコードを持つ場合に、要求を拒否します (Postfixバージョン2.3以降)。 unknown_address_reject_code パラメータには、拒否された要求に対する応答コードを指定します (デフォルト: 450)。一時的なDNSエラーの場合には、応答は常に450です。

  • reject_unlisted_recipient (Postfixバージョン2.0では: check_recipient_maps)

    – RCPT TO アドレスがドメインクラスに対する有効な受信者リストにない場合に、要求を拒否します。詳細は smtpd_reject_unlisted_recipient の記述を参照してください。この機能はPostfix 2.1以降で使えます。

  • reject_unverified_recipient

    – RCPT TO アドレスがバウンスするとわかっている場合や、受信者アドレスの配送先に到達できない場合に、要求を拒否します。アドレス検証情報は verify(8) サーバによって管理されます; 詳細は ADDRESS_VERIFICATION_README ファイルを参照してください。 unverified_recipient_reject_code パラメータには、アドレスがバウンスするとわかっている場合の応答を指定します (デフォルト: 450、変えても安全だという自信がある場合には 550に変えてください)。Postfixは一時的な問題でプローブが失敗した場合には450で応答します。この機能はPostfix 2.1以降で使えます。

この場面で有効な他の制限:
  • SMTP コマンドのどの場面でも使える一般的な制限は smtpd_client_restrictions に記述されています。
  • SMTP コマンドに特有の制限は smtpd_client_restrictions や smtpd_helo_restrictions , smtpd_sender_restrictions に記述されています。
例:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination

/etc/postfix/master.cf
#
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
  -o smtpd_sasl_auth_enable=no
submission inet n       -       -       -       -       smtpd
  -o smtpd_sasl_auth_enable=yes
...
smtp では、smtpd_sasl_auth_enable=no となっている点に注意してください。通常の25番ポートへのアクセスは、認証しないようにしています。 セキュリティの面から、25番ポートのメール中継をできるだけしないようにしています。

SASL認証 :

  1. SASLのユーザ、パスワードを設定する

    インストールを終えたら、SASLのユーザ、パスワードを設定します。
    ここでのユーザはメールアドレスになります。

    例)

    $ /usr/sbin/saslpasswd2 -u example.com hoge
    Password:
    Again (for verification):

    上記の例では、ユーザ名:hoge@example.comとなります。
    パラメータの指定順(ドメイン名、ユーザの順)に注意してください。
    あとは、指示に従ってパスワードを入力し、完了となります。

    登録したユーザは、以下のコマンドで確認することができます。

    $ /usr/sbin/sasldblistusers2
    hoge@example.com: userPassword
    登録したユーザを削除したい場合は、ユーザの指定の仕方に注意してください。sasldblistusers2で表示されるユーザIDのように user@domain のように指定します。
    $ /usr/sbin/saslpasswd2 -d hoge@example.com
  2. SASLのユーザ、パスワードを保存したファイルのグループを変更する

    postfix のプロセスからアクセスできるようにグループをpostfixへ変更しておきます。

    $ chgrp postfix /etc/sasldb2
    $ chmod 640 /etc/sasldb2
    さらに、先の共通設定で、master.cf の設定で submission が chroot を使用している場合(chrootのパラメータ位置 に n が設定されていないので、chrootを使っています)、
    /etc/sasldb2 のリンクファイルを /var/spool/postfix/etc/ に作成します。
    $ ln /etc/sasldb2 /var/spool/postfix/etc
SASL認証を利用する場合、
/etc/postfix/sasl/smtpd.conf がもし存在する場合は、削除しておきます。 また、saslauthd が動作している場合は、停止しておきます。
$ /etc/init.d/saslauthd stop
Stopping SASL Authentication Daemon: saslauthd.

PAM認証 :

  1. saslauthd をPAM認証の設定をする

    /etc/default/saslauthd

    ...
    START=yes
    ...
    MECHANISMS="pam"
    ...
    # chrootを使っている場合のみ以下を変更します。
    #OPTIONS="-c -m /var/run/saslauthd"
    OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
    先の共通設定で、master.cf の設定で submission が chroot を使用している場合(chrootのパラメータ位置 に n が設定されていないので、chrootを使っています)、
    上記のように OPTIONS の編集も行います。
    さらに、OPTIONSで指定したディレクトリを作成しておきます。
    $ mkdir -p /var/spool/postfix/var/run/saslauthd

  2. sasl/smtpd の設定をする

    /etc/postfix/sasl/smtpd.conf にて、smtpdの認証の詳細を設定することができます。


    /etc/postfix/sasl/smtpd.conf

    pwcheck_method: saslauthd
    mech_list: plain login
    pwcheck_method
    認証方法を指定します。
    • saslauthd : saslauthd による認証を行います。
    • auxprop : SASL自身のパスワードデータベース による認証を行います。
    • pwcheck : UNIXパスワードデータベースに対して 認証を行います。
    mech_list
    認証メカニズムを指定します。( plain login のみ )
    • plain : 平文を用います。
    • login : ログイン認証を用います。
    上記以外にもcram-md5 digest-md5などがありますが、PAMでは利用できません。

最後に、PAM認証を利用する場合、
saslauthd が動作させておく必要があります。
$ /etc/init.d/saslauthd start
Starting SASL Authentication Daemon: saslauthd.


全ての設定を終えたら、Postfixを再起動します。

$ /etc/init.d/postfix restart
Stopping Postfix Mail Transport Agent: postfix.
Starting Postfix Mail Transport Agent: postfix.

Submission Port + SMTP-AUTH (認証)を確認する

別のサーバーから、telnetを使って確認してみましょう。
対象となるSMTPサーバーのIPアドレスは、12.34.56.78とします。

$ telnet 12.34.56.78 587
Trying 12.34.56.78...
Connected to 12.34.56.78.
Escape character is '^]'.
220 main.exmaple.com ESMTP Postfix (Debian/GNU)
EHLO 34.56.78.90
250-mail.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH LOGIN
334 VXNlcm5hbWU6
aG9nZUBleGFtcGxlLmNvbQ==
334 UGFzc3dvcmQ6
cHBwd3d3
235 2.7.0 Authentication successful
MAIL FROM:hoge@example.com
250 2.1.0 Ok
RCPT TO:test-user@yahoo.co.jp
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
From: hoge@example.com
Subject: test
Hello world.
.
250 2.0.0 Ok: queued as 3B995114AAD
QUIT
221 2.0.0 Bye
Connection closed by foreign host.

ユーザ、パスワードに関しては、Base64によるエンコードされた文字列になります。(Base64でデコードすると..)
334 VXNlcm5hbWU6Username:
334 UGFzc3dvcmQ6Password:
のようにプロンプトの表示から、Base64によるエンコードされているのに注意してください。

また、ここでの入力は、(Base64によるエンコードする)
ユーザに hoge@example.comaG9nZUBleGFtcGxlLmNvbQ==
パスワードに pppwwwcHBwd3d3
のようにBase64によるエンコードされた文字列を入力します。

Base64によるエンコード、デコードは、http://ostermiller.org/calc/encode.htmlにて行うことができます。


Postfix側で/var/log/mail.log に以下のようなエラーが出力され、ログインできない場合は、「saslauthd へ接続できない」というエラーで
  • saslauthd自体が立ち上がっていない
  • saslauthdのファイルへのアクセスができない
のいずれかになります。ほとんどの場合、後者です。
Nov  7 10:16:36 db2 postfix/smtpd[4462]: warning: SASL authentication failure: cannot connect to saslauthd server: Permission denied
Nov  7 10:16:36 db2 postfix/smtpd[4462]: warning: SASL authentication failure: Password verification failed
Nov  7 10:16:36 db2 postfix/smtpd[4462]: warning: hoge.example.com[111.122.133.144]: SASL PLAIN authentication failed: generic failure
この対処は、

前者の場合
saslauthd を起動します。
$ /etc/init.d/saslauthd start

後者の場合
先のPAM認証設定 で設定した /etc/default/saslauthd のOPTIONSで指定したディレクトリへのアクセスができない状態がほとんどです。
その場合、デフォルトでは、postfixは、postfixという名前のユーザで動作していますので、そのユーザpostfixに sasl グループ を追加してあげればOKです。
$ ls -l /var/spool/postfix/var/run/
合計 4
drwx--x--- 2 root sasl 4096 2012-11-07 10:01 saslauthd
と所有グループがsaslとなっていてアクセスできないのです。
$ vi /etc/group
...
sasl:x:45:postfix
saslグループにユーザpostfixを追加して保存すればOKです。

以下は、TCPポート25を使ったメールのリレーが、正しく規制されるか確認しています。

$ telnet 12.34.56.78 25
Trying 12.34.56.78...
Connected to 12.34.56.78.
Escape character is '^]'.
220 main.exmaple.com ESMTP Postfix (Debian/GNU)
EHLO 34.56.78.90
250-mail.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from:hoge@example.com
250 2.1.0 Ok
rcpt to:test-user@yahoo.co.jp
554 5.7.1 <test-user@yahoo.co.jp>:  Relay access denied
data
554 5.5.1 Error: no valid recipients
QUIT
221 2.0.0 Bye
Connection closed by foreign host.

最後にSubmission Portから送信したメールが正しく届いたか確認できたらOKです。


いかがだったでしょうか?
一番簡単なSubmission Portの設定について、簡単ながら解説してみました。
次回は、SSLプロトコルを使ったメールの暗号化(STARTTLS)を行ってみましょう。
STARTTLSとは、
広い意味でのSTMP over SSL (SMTPs) の1つの方法で、最初の接続時においては、SMTP が利用され、その後、SSL(or TLS)にて暗号化が施されます。
それに対して、SSL/TLSとは、
最初の段階から、SSL(or TLS)による暗号化が図られており、より安全と言われています。

先にも書いたようにいずれも広い意味での、STMPs ( STMP over SSL )といわれています。
狭い意味でSTMPs ( STMP over SSL )という場合は、後者を指します。

STARTTLSは、一般的にSubmission Port (587) と共に用いることが多く、
SSL/TLSは、別のSubmission Port (465) が用いられます。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

Postfix で Submissionポート(サブミッション・ポート)& SMTP-AUTH(認証)& STARTTLS or SSL/TLS を使ってみる

前回までの関連記事 Debian(Ubuntu)で postfix を使ってみる postfixを使って単純に全メールを1つのメールサーバー ...

PostfixでSpamhaus のブロックリストを使ったスパム対策をしてみる

今回は、Postfixで Spamhaus のブロックリストを使った スパム対策を行ってみます。 (ブラックリストじゃなくてブロックリストです ...

sendmail設定(2)Submissionポート(サブミッション・ポート)& SMTP-AUTH(認証)を使ってみる

前回までの関連記事 sendmailを使って内部メールをgmailへ転送する Dovecotでメールを受信する sendmail設定(1) ...

telnetを使ったsendmailのメール中継のテスト方法

sendmailのメール中継のテスト方法について、telnetを使う方法を簡単に sendmail設定(2)Submissionポート(サブミッ ...

Postfix + postgrey を使ったグレイリスティングでスパム対策をしてみる

今回は、Postfixで postgrey という グレイリスティングを行うためのポリシーサーバーを使って スパム対策を行ってみます。 ...


2 件 コメントがあります。 コメントを投稿する
  1. セネカな日々
    2012年12月1日, 4:08 AM

    どうも,このsasl-auth設定,非常に分かり易く助かりました!!
    今後ともお世話になりますっ!!

  2. 管理人
    2012年12月1日, 1:25 PM

    セネカな日々さん
    コメントありがとうございます。こんなコメントはほんとうれしいですね。こちらこそ、お世話になります。


コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2305 [s]