stat=Deferred Connection refused by [127.0.0.1]

"/var/log/maillog" を何気なく確認したところ、以下のようなログが出力されていることに気付いた。 Nov 3 09:36:11 mailsrv002 sm-msp-queue[22521]: oA8Ga32M096157: to=postmaster, delay=19:59:5 9, xdelay=00:00:00, mailer=relay, pri=1837120, relay=[127.0.0.1], dsn=4.0.0, stat=Deferred : Connection refused by [127.0.0.1] 127.0.0.1 への接続が拒否されたため、処理を延期したとのこと。 もちろん、127.0.0.1 へのアクセスは、sendmail.mc でリッスンしないように設定している。 (127.0.0.1 は、コメントアウトしている。) ... 続きを読む

450 Helo command rejected

sendmail でスマートホストを設定し、メールを送信した際に以下のエラーが発生した。 stat=Deferred: 450 <localhost.localdomain>: Helo command rejected: Host not found 調査したところ、スマートホスト側で、reject_unknown_hostname が設定されていると推察され、SMTP の HELO コマンドで、名前解決のできないホスト名が指定された場合に送信が拒否されているようだ。 sendmail のデフォルトの設定では、ホスト名として、"$j" マクロが使用される。 以下は、テストモードで "$j" マクロを実行したところ。 [root@centkun ~]# sendmail -bt -C/etc/mail/sendmail.cf ... 続きを読む

sendmail + dovecot メールアカウントの発行

前回の考察で、sendmail + dovecot 小中規模構成では、Linux アカウントをメールアカウントへマップすることが良いとした。 ただし、セキュリティの観点から、メールアカウントとして利用する Linux アカウントは、リモートログイン (Telnet, SSH, FTP, SFTP, Shell) を無効にしておく。 新規にユーザーを作成する場合の手順は、以下の通り。 [root@centkun~]# useradd -s /bin/false user077 [root@centkun~]# passwd user077 Changing password for user user077. New UNIX password: Retype new UNIX password: ... 続きを読む

sendmail で複数ドメイン ( マルチドメイン ) 環境を構築

sendmail (MTA) は、送られてきたメールが、自ホスト宛てと判別する条件は、以下の通り。 "/etc/sysconfig/network" の "HOSTNAME" の値が、メールアドレスの @ 以降と一致する。 "/etc/mail/local-host-names" に定... 続きを読む

sendmail と dovecot による仮想ユーザーの実現

CentOS 5.4 のデフォルトの MTA である sendmail、デフォルトの MRA である dovecot を使用した仮想ユーザーメールサーバー構築について考える。 ここで述べる仮想ユーザーとは、Linux のユーザー (/etc/passwd) を新規に作らず、発行されたメールアカウントを指すものとする。 sendmail で仮想ユーザーを実現するには、"Cyrus SASL" を利用する。"Cyrus SASL" は、sendmail で、SMTP 認証を実現するために利用するもの。SMTP 認証を行わないのであれば、MTA からユーザー情報にアクセスする必要がなく、もちろん仮想ユーザー情報も意味をなさなくなるため、MTA で仮想ユーザーを利用することは、SMTP 認証を行うことと同義である。 CentOS 5.4 の sen... 続きを読む

dovecot の pop3, imap 認証で sasldb データベースを利用する

以前の記事では、sendmail において、SMTP 認証で使用するユーザー、パスワードを Linux アカウントではなく、auxprop プラグインで独自管理する方法を紹介した。 この際、auxprop プラグインは、"Berkeley DB" 形式のデータベース: /etc/sasldb2 ファイルに格納されたユーザー情報をリソースとする。 しかしながら、致命的な問題として、Dovecot は、認証リソースとして、sasldb( Berkeley DB 形式 ) をサポートしていない。 [Dovecot] Auth user from sasldb with dovecot Re: [Dovecot] Auth user from sasldb with dovecot - Timo Sirainen - org.dovecot.dovecot - ... 続きを読む

CentOS sendmail でのメールアカウント独自管理 (auxprop)

前回の記事では、CentOS で sendmail を利用したメールサーバー構築の方法を紹介した。 また、同記事では、承認されていないユーザーのメール送信を防ぐために、SMTP 認証を有効にした。 前回は、SMTP 認証の際に、対象のメールアカウントに対して、Linux アカウントのユーザー名とパスワードで認証する方法を紹介した。 この方法では、メールアカウントを発行するために、Linux ユーザーを作成する必要があり、メールサーバー専用に Linux を構築する場合では、ユーザーカウントの管理が煩雑となる。 今回の記事では、Linux アカウントとメールアカウントをマッピングせず、メールアカウントを独自に管理する方法を紹介する。 前回の設定 (CentOS 5.4 x64 のデフォルト設定 ) では、"saslauthd" デーモンを利用することにより、SMTP 認証を Linux... 続きを読む

SMTP ポート 25 と587 について

一般的な  MTA( メールサーバー ) 間の通信では、通信元の MTA は、通信先の MTA の TCP ポート 25 番宛てにアクセスし、メールを送信する。これが SMTP と呼ばれるもの。 つまり SMTP サーバーを構築したのであれば、ルーターなどのファイアウォールで TCP ポート 25 番を開放する必要がある。 しかしながら、ADSL、フレッツ光等の民生用の回線で、動的 IP を用い SMTP サーバーを構築した場合、TCP ポート 25 を利用した SMTP では、アクセスを拒否されることがある。 ( 自宅でメールサーバーを構築して、特定の携帯電話キャリアのメールアドレスへメールしても、携帯電話で受信できないといういうのもこれが原因 )。 これが、所謂、OP25B(Outbound Port 25 Blocking) と呼ばれるもの。 いくつかの携帯電話... 続きを読む

CentOS メールサーバー Dovecot の設定

前回の記事では、送信メールサーバー sendmail のインストール設定を行った。 今回は、受信メールサーバー(POP3/IMAP) Dovecot をインストール、設定を行い、メールを受信できる環境を構築する。 まず、Dovecot をインストールする。 [root@centkun ~]# yum install -y dovecot Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile ... Setting up Install Process Resolving Dependencies --> Running transacti... 続きを読む

CentOS メールサーバー sendmail の設定

今回は、CentOS でメールサーバーを構築する方法を紹介する。 特に今回は、送信メールサーバー (MTA) のデファクト スタンダードである "sendmail" のインストール、設定について紹介する。 受信メールサーバー (POP3/IMAP) の構築については、別の記事で紹介する予定だ。 "sendmail"、"sendmail-cf" をインストールする。 [root@centkun]# yum install -y sendmail [root@centkun]# yum install -y sendmail-cf "sendmail.mc" を編集する。 [root@centkun]# vi /etc/mail/sendmail.mc "sendmail.mc&... 続きを読む