14
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Postfix設定メモ

Last updated at Posted at 2018-12-07

参照サイト: http://kajuhome.com/postfix.shtml
参照サイト: http://www.turbolinux.com/products/server/11s/user_guide/smtpauth.html

メモ・必要知識

postfixとは・・・

Postfixはsendmailに代わるMTA (Mail Transport Agent)として開発されたソフトウェアで、sendmailとの互換性が高く、安全、メンテナンスが容易、速い、などの特徴を兼ね備えたメールサーバソフトです。最近ではLinuxの一部のディストリビューションで標準のMTAとして採用されています。
PostfixはSMTPサーバとしての機能しか持っていないため、メールサーバとして稼働するにはPOPサーバやIMAPサーバが別途必要になるかもしれません。

Dovecotとは・・・

Dovecot(ダヴコット)とは、Timo Sirainenが開発・公開をしている、UNIXライクなOS上で動作する、POP3/IMAPに対応したメール配送エージェントである。

SMTP-AUTH (SASL認証)とは・・・

メール送信に使うSMTPにユーザ認証機能を追加したものです。
主に外部からのメールを送信する場合(Outlookなどのメーラーからの送信する場合)に必須。
これを使用することにより、SMTPサーバ(メール送信サーバ)がユーザー認証を行うことによりメールの不正中継や、メールアカウントの不正利用を防ぐことが出来ます。
この認証にSASL認証を使用します。

PAM認証とは・・・

FTPやsuコマンドなどで使用している認証方法。

POP before SMTPとは・・・

電子メールの送信を行う際のユーザ認証方法の一つ。送信前に指定したPOP3サーバにあらかじめアクセスさせることによって、SMTPサーバの使用許可を与える方式。「PbS」と略記されることも稀にある。
SMTP認証(SMTP-AUTH)を使うことをお勧めするサイトが多い。

SASL認証とは・・・

Postfixを通じたMailの送受信において、ユーザの認証を可能にするための仕組み。
Postfix自体は認証メカニズムを持っておらず、広く認められている認証機構のひとつであるSASLの枠組みを使う。
SASLでは、PLAIN(暗号化されていない平文パスワード)、CRAM-MD5 あるいはその改良版DIGEST-MD5 (チャレンジアンドレスポンド方式の認証)、EXTERNAL(TLSのような外部の仕組み)など様々な認証メカニズムを利用することが可能である。
パスワードの検証は、saslauthd、sasldb、SQLデータベース、LDAPなどの方法で行われる。このうち、saslauthdはSASL 独自の認証データベースを作らず、
オペレーティングシステムの認証機構を利用するためのデーモンであり、root 権限が必要な認証機構を個々のアプリケーションから直接利用できるよう、saslauthd デーモンがアプリケーションと認証機構の間を橋渡しする。saslauthd を使えば PAM を経由して様々な認証機構が利用出来るが、 PLAIN や LOGIN などの平文パスワードを使った認証メカニズムでしか利用出来ない。
sasldb、SQLでは、データベースにパスワードを格納することができ、またLDAPでは認証データをLDAPサーバに格納することができる。

Postfixインストール

インストールされているか
# rpm -q postfix

インストールされていない場合インストール
# yum install postfix

MTAをSendmailからPostfixに切り替える
# alternatives --config mta

設定ファイルを確認(内容はサイト参照)
# vi /etc/postfix/main.cf

バージョン確認
# postconf | grep mail_version

設定一覧表示
# postconf

SMTP Authetication関係の設定

SMTP設定ファイルに認証方法を指定
# vim /usr/lib64/sasl2/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: cram-md5 digest-md5 plain login

パスワードDB作成
# saslpasswd2 -c -u example.com username

設定したパスワードを削除する場合は、以下のようにします。
# saslpasswd2 -d -u example.com ユーザ名

作成されたパスワードの確認は、以下のように sasldblistusers2 と入力すると、登録されてるユーザ名が表示されます。
# sasldblistusers2
hoge@example.com: userPassword

Postfix が sasldb を閲覧できるようにpostfixグループを追加し、パーミッションを変更します。
# chgrp postfix /etc/sasldb2
# chmod 640 /etc/sasldb2

Dovecotインストール

dovecotとは、POPサーバ(受信メールサーバ)機能を提供するパッケージです。
参照サイト: http://kajuhome.com/dovecot.shtml

dovecot バージョンの確認
# rpm -qa dovecot

なければインストール
# yum -y install dovecot

設定ファイルの編集 ※設定はサイト参照
# vi /etc/dovecot/dovecot.conf

起動
# /etc/rc.d/init.d/dovecot start

起動時にdovecotを起動する
# chkconfig dovecot on

設定内容を確認
# chkconfig --list dovecot
dovecot         0:オフ  1:オフ  2:オン  3:オン  4:オン  5:オン  6:オフ

設定ファイルの編集
# vi /etc/postfix/main.cf
----------------------------最終行に以下を追加
# バーチャルホスト設定ファイルを指定
virtual_alias_maps= hash:/etc/postfix/virtual
----------------------------

virtualファイルの設定
# vi /etc/postfix/virtual
----------------------------最終行に以下を追加
kaju.homeip.net anything
linux@kaju.homeip.net linux
user1@kaju.homeip.net user1
user2@kaju.homeip.net linux
----------------------------

上記「postfixの設定」が完了したらvirtual DBファイルを更新する
# postmap /etc/postfix/virtual

postfixを再起動して設定を反映させる
# /etc/rc.d/init.d/postfix restart
14
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?