メールサーバ構築:Postfix, dovecot, mutt
OS:CentOS 7
以下のページを参考にしました
Postfix
http://www.sea-bird.org/pukiwiki/index.php?Postfix%A4%C7spam%A5%E1%A1%BC%A5%EB%C1%F7%BF%AE%B8%B5%A1%A6%C1%F7%BF%AE%BC%D4%A4%CB%A4%E8%A4%EB%C0%A9%B8%C2%A4%CE%B4%AC
http://unixlife.jp/linux/centos-5/postfix-secure.html
dovecot
http://www.aconus.com/~oyaji/centos/dovecot_centos.htm
mutt
https://wiki.archlinuxjp.org/index.php/Mutt
http://www.emaillab.org/mutt/
http://takachan.jra.net/blog/archives/476
サーバー証明書
http://www.aconus.com/~oyaji/www/certs_linux.htm
firewalldは以下を参考に開けておく
http://qiita.com/kentakozuka/items/d32ace44299edf045c6b
Postfix
smtp(25)とsubmission(587)のポートは開けておく
インストール
yum -y install postfix cyrus-sasl cyrus-sasl-plain cyrus-sasl-md5
main.cf
vim /etc/postfix/main.cf
...
### ホスト名を設定
### e.g. mailgw.hogehoge.com
myhostname = mailgw.<ドメイン名>
...
### ドメイン名の設定
### e.g. hogehoge.com
mydomain = <ドメイン名>
...
###メールアドレスの[@]以降に使用するドメイン名を指定
myorigin = $myhostname
...
###SMTP接続を待ち受けるネットワークインターフェースを指定
inet_interfaces = all
...
###ローカル配送を行うドメイン名を指定
mydestination =
localhost,
$myhostname,
$mydomain
...
###smtpd_*****_restrictionsでSMTPサーバがそれぞれのセクションでの接続可/否を設定
###smtpd_client_restrictions = クライアントからの接続要求時
###smtpd_helo_restrictions = HELOコマンドの場面
###RCPT TOコマンドの場面
smtpd_recipient_restrictions =
permit_mynetworks
reject_non_fqdn_recipient
reject_unauth_pipelining
permit_sasl_authenticated
reject_unauth_destination
###smtpd_sender_restrictions = MAIL FROMコマンドの場面
smtpd_sender_restrictions =
# hash:/etc/postfix/spamlist_address
reject_unknown_sender_domain
# with SASL2
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
# Max TO
smtpd_recipient_limit = 5000
# Max Message Size
message_size_limit = 51200000
###ソフト名とバージョン番号を非表示にする
smtpd_banner = $myhostname ESMTP
master.cf
各フィールドは以下の通り
service
Postfixのサービス(デーモン)名の指定
type
サービスのタイプの指定
private
メールシステムへのアクセス制限の有無を指定
unpriv
サービスをrootか所有者で動作させるかを指定
chroot
chroot jail環境で動作の有無を指定
wakeup
サービスを何秒後に起動させるかを指定
maxprox
プロセスを同時に起動できる最大数の指定
command + args
サービスの実態プログラムと、その引数の指定
vim /etc/postfix/master.cf
...
#tlsproxy unix - - n - 0 tlsproxy
submission inet n - n - - smtpd
# -o smtpd_tls_security_level=encrypt
...
saslauthd
vim /etc/sysconfig/saslauthd
...
###MECH=pam
MECH=shadow
...
バーチャルドメイン(virtual_maps)の設定
mv /etc/postfix/virtual /etc/postfix/virtual.org
vim /etc/postfix/virtual
# 受信可能なドメイン名 anything
<ドメイン名> anything
# 受信可能なアドレス 転送先アドレスor実ユーザー名
<アドレス> <実ユーザ名>
/usr/sbin/postmap hash:/etc/postfix/virtual < /etc/postfix/virtual
systemctl restart postfix
dovecot
インストール
yum -y install dovecot
設定
vim /etc/dovecot/dovecot.conf
...
#protocols = imap pop3 lmtp
protocols = imap imaps pop3 pop3s
...
vim /etc/dovecot/conf.d/10-mail.conf
...
#mail_location =
mail_location = maildir:~/Maildir
...
yum -y install dovecot
vim /etc/dovecot/dovecot.conf
...
#protocols = imap pop3 lmtp
protocols = imap imaps pop3 pop3s
...
vim /etc/dovecot/conf.d/10-mail.conf
...
#mail_location =
mail_location = maildir:~/Maildir
...
このへんはお好みで
vim /etc/dovecot/conf.d/10-auth.conf
...
disable_plaintext_auth = yes
...
このへんはお好みで
vim /etc/dovecot/conf.d/10-ssl.conf
...
ssl = required
###ssl = no
# PEM encoded X.509 SSL/TLS certificate and private key. They're opened before
# dropping root privileges, so keep the key file unreadable by anyone but
# root. Included doc/mkcert.sh can be used to easily generate self-signed
# certificate, just make sure to update the domains in dovecot-openssl.cnf
ssl_cert = <証明書のパス>
ssl_key = <キーのパス>
...
systemctl enable dovecot
systemctl start dovecot
systemctl status dovecot
もしくは
systemctl restart dovecot
【任意】pop3とimpa4の接続を確認
POP3
$ telnet <ドメイン名> pop3
Trying XXX.XXX.XXX.XXX...
Connected to <ドメイン>.
Escape character is '^]'.
+OK Dovecot ready.
user <ユーザ名>
pass <パスワード>
+OK
+OK Logged in.
quit
+OK Logging out.
Connection closed by foreign host.
IMAP4
$ telnet <ドメイン名> 143
Trying XXX.XXX.XXX.XXX...
Connected to <ドメイン>.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready.
1 login <ユーザ名> <パスワード>
1 OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS SPECIAL-USE BINARY MOVE] Logged in
1 logout
* BYE Logging out
1 OK Logout completed.
Connection closed by foreign host.
mutt
これはサーバ側でなくクライアントです。
リモートサーバに接続してメールをフェッチします。
.mutrc
vim ~.muttrc
set folder=»»---imaps://<ユーザ名>@<ドメイン>/↲
set imap_user=»-<ユーザ名>
set spoolfile=»-+INBOX↲
↲
#色付け↲
color normal green default↲
color hdrdefault cyan default↲
color header yellow default ^(From|Subject):↲
color quoted cyan default↲
color signature red default↲
color attachment blue default↲
color body magenta default "(ftp|http)://[^ ]+" # point out URLs↲
color body magenta default [-a-z_0-9.]+@[-a-z_0-9.]+ # e-mail addresses↲
color search black yellow # how to hilite search patterns in the pager↲
alias 'flkj^[^[qqq' ^[ <^[>↲
Author And Source
この問題について(メールサーバ構築:Postfix, dovecot, mutt), 我々は、より多くの情報をここで見つけました https://qiita.com/kentakozuka/items/ff0c9d1c19b93170dddd著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .