| トップ | Solaris | FreeBSD | Gentoo | CentOS | Fedora | Windows | Tips | 自宅サーバの動作確認 | サイト内検索(Namazu) | サイト内検索(HE) |
ここではPOP+IMAPサーバに「Dovecot」を用い、Webメールに「SquirrelMail」を用いることを前提に設定します。
また、外部からもメールを利用できるようにし、不正中継を行わないようにSMTP-AUTHの設定も行います。
なお、「Outbound Port25 Blocking」への対応方法はこちらを参照して下さい。
[root@Fedora ~]# yum -y install postfix <= 「Postfix」のインストール [root@Fedora ~]# yum clean packages <= ダウンロードしたパッケージの削除 |
[root@Fedora ~]# vi /etc/postfix/main.cf <= 設定ファイルの編集 myhostname = Fedora.crimson-snow.net <= 追加(ホストネームを指定) mydomain = crimson-snow.net <= 追加(ドメイン名を指定) 自ホストが最終的な宛先とみなすアドレスの変更 mydestination = $myhostname, localhost.$mydomain, localhost ↓ #mydestination = $myhostname, localhost.$mydomain, localhost <= コメントアウト #mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ↓ mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain <= コメント解除 #myorigin = $mydomain ↓ myorigin = $mydomain <= コメント解除( @ 以下のアドレス) メールを受け取る範囲を指定する #inet_interfaces = all ↓ inet_interfaces = all <= コメント解除 inet_interfaces = localhost ↓ #inet_interfaces = localhost <= コメントアウト #mynetworks = 168.100.189.0/28, 127.0.0.0/8 ↓ mynetworks = 192.168.0.0/16, 127.0.0.0/8 <= 変更(LANのアドレスとローカルホストアドレスを指定) #home_mailbox = Maildir/ ↓ home_mailbox = Maildir/ <= コメント解除(メールボックス形式をMaildir形式にする) #smtpd_banner = $myhostname ESMTP $mail_name ↓ smtpd_banner = mail.$mydomain ESMTP $mail_name <= サーバ情報の表示を変更 SMTP認証の為に以下を追加 smtpd_sasl_auth_enable = yes <= SMTP認証を有効にする smtpd_sasl_local_domain = $mydomain <= SMTP認証するローカルドメインの指定 smtpd_sasl_security_options = noanonymous, noplaintext ・noanonymous <= 匿名を許可しない ・noplaintext <= 暗号化されないパスワードを許可しない broken_sasl_auth_clients = yes <= AUTHコマンドのサポートを認識できないクライアントへの対応 smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination <= SMTP認証の要求(リレーするものを設定) ・permit_mynetworks <= mynetworksで指定されたネットワークからのリレーを許可 ・permit_sasl_authenticated <= SMTP認証を通過したものは許可 ・reject_unauth_destination <= 上記以外拒否 |
root宛てのメールを一般ユーザに転送するようにします。
[root@Fedora ~]# vi /etc/aliases <= 設定ファイルの編集 root: kaz <= 追加(一般ユーザ kaz に転送) [root@Fedora ~]# newaliases <= aliasesの読み込み |
ヘッダにあるLANの情報を削除します。
main.cfの設定
[root@Fedora ~]# vi /etc/postfix/main.cf <= 設定ファイルの編集 #header_checks = regexp:/etc/postfix/header_checks ↓ header_checks = regexp:/etc/postfix/header_checks <= コメント解除 |
header_checksの設定
[root@Fedora ~]# vi /etc/postfix/header_checks <= 設定ファイルの編集 /^Received:.*192\.168\..*/ IGNORE <= 追加 /^Received:.*127\.0\.0\.1.*/ IGNORE <= 追加 |
SMTP認証にはシステムアカウントを利用する方法と、sasldb2を利用する方法があります。
sasldb2を利用すれば、システムアカウントとは異なるパスワードを設定できますので、
こちらの方がセキュリティは高くなります。
必要なパッケージのインストール
「Cyrus-SASL」を利用しますが、以下のパッケージが必要になります。
・cyrus-sasl
・cyrus-sasl-devel
・cyrus-sasl-lib
・cyrus-sasl-plain
・cyrus-sasl-md5
この中で一番下の「cyrus-sasl-md5」はデフォルトではインストールされていない為、注意が必要です。
[root@Fedora ~]# yum -y install cyrus-sasl-md5 <= 「cyrus-sasl-md5」のインストール [root@Fedora ~]# yum clean packages <= ダウンロードしたパッケージの削除 |
1.システムアカウントを利用した認証(pamを利用)
pamを利用する場合、CRAM-MD5等の暗号化したパスワードが利用できない為、上記の「Postfix」の設定を変更します。
[root@Fedora ~]# vi /etc/postfix/main.cf <= 設定ファイルの編集 smtpd_sasl_security_options = noanonymous, noplaintext ↓ smtpd_sasl_security_options = noanonymous <= 「noplaintext」の削除 |
「saslauthd」の設定
[root@Fedora ~]# vi /etc/sysconfig/saslauthd <= 設定ファイルの編集 MECH=shadow ↓ MECH=pam <= pamによる認証 |
SASL認証デーモンを起動します。
[root@Fedora ~]# /etc/rc.d/init.d/saslauthd start |
fedora起動時にSASL認証デーモンを起動するようにします。
[root@Fedora ~]# chkconfig saslauthd on |
2.sasldb2による認証
まず、smtpd.conf ファイルを編集します。
[root@Fedora ~]# vi /usr/lib/sasl2/smtpd.conf <= 設定ファイルの編集 pwcheck_method: saslauthd ↓ pwcheck_method: auxprop <= 変更 |
次に、saslauthd ファイルを編集します。
[root@Fedora ~]# vi /etc/sysconfig/saslauthd <= 設定ファイルの編集 MECH=shadow ↓ #MECH=shadow <= コメントアウト FLAGS= ↓ FLAGS=sasldb <= 認証方法をsasldb2に指定 |
SASLのデータベースにユーザを追加します。
・新規登録 [root@Fedora ~]# saslpasswd2 -u crimson-snow.net -c kaz <= ユーザ kaz を追加 Password: <= パスワード Again (for verification): <= パスワード(確認) ・パスワード変更 [root@Fedora ~]# saslpasswd2 -u crimson-snow.net kaz <= ユーザ kaz のパスワードを変更 Password: <= パスワード Again (for verification): <= パスワード(確認) ・ユーザ削除 [root@Fedora ~]# saslpasswd2 -u crimson-snow.net -d kaz <= ユーザ kaz を削除 ・ユーザ確認 [root@Fedora ~]# sasldblistusers2 |
SALSのデータベースをPostfixから参照できるようにします(最初の1回のみ)。
[root@Fedora ~]# chgrp postfix /etc/sasldb2 <= 所属グループをpostfixに変更 [root@Fedora ~]# chmod 640 /etc/sasldb2 <= パーミッションを変更 |
まず、デフォルトで起動している「sendmail」を停止します。
[root@Fedora ~]# /etc/rc.d/init.d/sendmail stop |
fedora起動時に「sendmail」起動しないようにします。
[root@Fedora ~]# chkconfig sendmail off |
「Postfix」を起動します。
[root@Fedora ~]# /etc/rc.d/init.d/postfix start |
「Postfix」の自動起動
fedora起動時に「Postfix」を起動するようにします。
[root@Fedora ~]# chkconfig --add postfix [root@Fedora ~]# chkconfig postfix on |