Postfix
■ Postfixとは
SMTPサーバーの一種です。
CentOSではsendmailがデフォルトで付随してますが、安全性・パフォーマンスの観点からPostfixが使用されることが多くなっているようです。
■ インストール
postfixがインストールされているか確認
[root@example ~]# rpm -q postfixインストールされていない場合はyumでインストール
[root@example ~]# yum install postfix
■ 設定
下記の項目を探して変更・追記します。
デフォルトの状態でコメントになっている項目は、コメントを外して設定する方が楽かもしれません。
今回の設定の目的は、管理用端末にログや状態メールを送信することです。
この通りの設定を行ってもWAN上にあるクライアントのメーラーなどから送信することは出来ません。
(なので多少無駄な設定もあります。)
設定ファイル:/etc/postfix/main.cf
# ホスト名をFQDNで指定
myhostname = host.example.com
# ドメイン名を指定
mydomain = example.com
# 「@」以下の補完する値
myorigin = $myhostname
# SMTPでの接続を待ち受けるインタフェース
inet_interfaces = localhost
# ローカルで受信するドメイン名
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# バナー情報の出力を指定
smtpd_banner = $myhostname ESMTP unknown# ↓↓↓☆公開しないなら設定しなくても良い↓↓↓
# SMTPのVRFYコマンドを使用不可とする
disable_vrfy_command = yes# SMTP-Auth
# SASLによるSMTP認証
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
# メールのリレー制限
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
以下コンソールから実行します。
Postfixを自動起動するように設定
[root@example ~]# chkconfig postfix onPostfixを起動
[root@example ~]# service postfix startメール送信のテスト
[root@example ~]# mail -s testtitle test@xxx.xxx.xxx
testbody → 本文
. → 行頭に「.」を入力してEnter
Cc: → Ccを指定(空Enter)# 別端末などでログを確認しながら確認を行うとやり易い
[root@example ~]# tail -f /var/log/maillogユーザ追加時にMaildir形式のメールボックスを自動生成するように
/etc/skel配下にディレクトリを作成
[root@example ~]# mkdir -p /etc/skel/Maildir/{new,cur,tmp}パーミッションを変更
[root@example ~]# chmod -R 700 /etc/skel/Maildir/使用するmtaをsendmailからPostfixへ変更
[root@example ~]# alternatives --config mta2 プログラムがあり 'mta' を提供します。
選択 コマンド
-----------------------------------------------