sendmail
dovecot
saslauthd
をインストールします。
インストールされているか確認。
chkconfig --list sendmail chkconfig --list dovecot chkconfig --list saslauthd
sendmail 0:off 1:off 2:on 3:on 4:on 5:on 6:off dovecot 0:off 1:off 2:off 3:off 4:off 5:off 6:off saslauthd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
あるのでそのまま使ってしまいます。
dovecot と saslauthd が起動する設定になっていないので変更します。
chkconfig dovecot on chkconfig saslauthd on
dovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sendmail.mc を編集します。
vi /etc/mail/sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl DAEMON_OPTIONS(`Port=smtp,Addr=(サーバのIPアドレス), Name=MTA')dnl ←この行を追加します。
初期状態では 127.0.0.1(自分自身)に対してのみ SMTP ポートを開きます。これではメールを外部に送ることはできても、メールを受け取ることは出来ません。
LOCAL_DOMAIN(`localhost.localdomain')dnl
初期状態ではこのように、自ホスト名が localhost.localdomain となっています。
dnl LOCAL_DOMAIN(`localhost.localdomain')dnl ←コメントアウト LOCAL_DOMAIN(`cmemo.net')dnl ←この行を追加します。
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
最後に、自ホスト名を Cw で定義します。
sendmail.mc の末尾に
Cwcmemo.net
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
vi /etc/mail/local-host-names
cmemo.net
service sendmail restart
sendmail を再起動すると dovecot も再起動されます。
SMTP-AUTH
まず利用する認証方法を設定
vi /usr/lib/sasl2/Sendmail.conf
PAM を用いる場合
pwcheck_method:saslauthd
pwcheck_method: auxprop
sasldb を使用する場合
/usr/sbin/saslpasswd2 -c -u ドメイン名 ユーザ名
/usr/sbin/sasldblistusers2
service saslauthd restart
テスト
base64 へのエンコードが必要なので、eb64 をインストールします。
×ed64 -e 'cmemo 00cmemo@cmemo.net 00password' telnet mail.cmemo.net 25 EHLO localhost telnet mail.cmemo.net 110
アカウントの追加
useradd cmemo passwd (パスワード)
cd /etc chmod u+w shadow vi shadow
cd /etc/mail/ vi /etc/mail/virtusertable makemap -v hash /etc/mail/virtusertable < /etc/mail/virtusertable
makemap は実行が必要ですが、
sendmail を再起動する必要はありません。
確認
strings /etc/mail/virtusertable.db cd /var/log tail -n100 /var/log/maillog
sendmail で Submission ポート(587)を有効にする
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl