セント君は6.4でも多分同じ。

1:SELinux
('A`)マンドクセなので停止。
#vi /etc/sysconfig/selinux
SELINUX=disabled

2:ssh
面倒なのでrootでsshログインできるように設定。(あとで止める)
#vi /etc/ssh/sshd_config
PermitRootLogin=yes
他の項目はお好みで。
iptablesにポート足さないと。下の方に例があるので、ポートだけ書き換えればおk
そんで再起動
#shutdown -r now

3:証明書作成
#cd /etc/pki/tls/certs
#make Hoge.key (Hogeは任意)
パスフレーズを入れる。

#openssl rsa -in Hoge.key -out Hoge.key
さっきのパスフレーズを入れる

#make Hoge.csr
色々聞かれる。とりあえずCommon NameにFQDN入れた。他は全部空Enter。
全部空Enterだとどうなるかは知らん。

#openssl x509 -in Hoge.csr -out Hoge.crt -req -signkey Hoge.key -days 3650
更新が('A`)マンドクセなので10年。サーバのほうが早くやられるでしょ。

#chmod 400 Hoge*

4:Postfix
長いので変更点のみ
#cd /etc/postfix
#vi main.cf
myhostname = www.example.co.jp
mydomain = example.jp
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
relay_domains = $mydestination ←無くても動くか実験したい気分
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP unknown
disable_vrfy_command = yes
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_sender_restrictions = reject_unknown_sender_domain
smtpd_client_restrictions = permit_mynetworks,reject_unknown_client,permit
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
message_size_limit = 10485760
mailbox_size_limit = 104857600
smtpd_tls_cert_file = /etc/pki/tls/certs/Hoge.crt
smtpd_tls_key_file = /etc/pki/tls/certs/Hoge.key
smtpd_use_tls = yes

#vi master.cf
submission inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
smtps inet n - n - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
コメントになってたら活かす

5:SMTP(saslauthd)
#cd /etc/sasl2
#vi smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: plain login
これはファイルがないはずなので作る
chkconfig saslauthd on
chkconfig --list saslauthd


6:IMAP
#yum -y install dovecot
# cd /etc/dovecot
vi dovecot.conf
protocols = imap pop3 lmtp

#cd conf.d
#vi 10-ssl.conf
ssl = yes
ssl_key_password = 上で設定した自己証明書のパスフレーズのはずだけど、無効でも動いてるww
ssl_cert = ssl_key =
#vi 10-auth.conf
auth_mechanisms = plain login

#vi 10-mail.conf
mail_location = maildir:~/Maildir
valid_chroot_dirs = /home

#vi 10-master.conf
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
service pop3-login {
inet_listener pop3 {
port = 110
}
inet_listener pop3s {
port = 995
ssl = yes
}
}

7:アカウント
#mkdir -p /etc/skel/Maildir/{new,cur,tmp}
#chmod -R 700 /etc/skel/Maildir

# useradd Account
# passwd Account
# saslpasswd2 -u www.example.co.jp Account
# sasldblistusers2 ←パスワード設定有無確認
# chgrp postfix /etc/sasldb2 ←1回だけ

8:IPTables
#cd /etc/sysconfig
#iptables
以下から必要なところを見繕って入れる
25は消しちゃダメ。
下から2行はapache用
-A INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 995 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 993 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 587 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 80 -j ACCEPT
-A OUTPUT -p tcp ! --syn -m state --state ESTABLISHED -m tcp --sport 80 -j ACCEPT

9:Apache
#cd /etc/httpd/conf
#vi httpd.conf
DocumentRootだけでおk

#chkconfig httpd on
#chkconfig --list httpd

10:後始末
sshd_configのPermitRootLoginをnoにする。

こんなもんだね。
あとは再起動して、デーモン類が起動しているか確認。
ThunderbirdとiPhoneとAndroidとMacでの送受信は可能だった。
ただし証明書がアレなので、例外を承認しないとだめ。

( ´ー`)フゥー...

Postfix実用ガイド/オライリージャパン

¥3,360
Amazon.co.jp