【忘備録】Ubuntu18.04LTS / メールサーバーを建てる

PostfixとDovecot でメールサーバーを構築

Postfix をインストールして SMTPサーバーを構築します。SMTP は 25/TCP を使用します

PostfixとDovecotをインストールしてメールサーバを構築します。

$ sudo apt -y install postfix sasl2-bin
# 一般的な構成設定の選択を求められるが、後で手動設定するため [No Configuration] を選択
+------+ Postfix Configuration +-------+
| General type of mail configuration:  |
|                                      |
|       No configuration               |
|       Internet Site                  |
|       Internet with smarthost        |
|       Satellite system               |
|       Local only                     |
|                                      |
|                                      |
|       <Ok>           <Cancel>        |
|                                      |
+--------------------------------------+

$ sudo cp /usr/share/postfix/main.cf.dist /etc/postfix/main.cf
$ sudo vi /etc/postfix/main.cf
# 78行目:コメント解除 mail_owner = postfix
# 94行目:コメント解除しホスト名指定 myhostname = mail.dowata.xyz
# 102行目:コメント解除しドメイン名指定 mydomain = dowata.xyz
# 123行目:コメント解除 myorigin = $mydomain
# 137行目:コメント解除 inet_interfaces = all
# 185行目:コメント解除 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 228行目:コメント解除 local_recipient_maps = unix:passwd.byname $alias_maps
# 270行目:コメント解除 mynetworks_style = subnet
# 287行目:自ネットワーク追記 mynetworks = 127.0.0.0/8, 10.0.0.0/24
# 407行目:コメント解除 alias_maps = hash:/etc/aliases
# 418行目:コメント解除 alias_database = hash:/etc/aliases
# 440行目:コメント解除 home_mailbox = Maildir/
# 576行目:コメントにしてその下に追記 #smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) smtpd_banner = $myhostname ESMTP
# 650行目:追記 sendmail_path = /usr/sbin/postfix
# 655行目:追記 newaliases_path = /usr/bin/newaliases
# 660行目:追記 mailq_path = /usr/bin/mailq
# 666行目:追記 setgid_group = postdrop
# 670行目:コメント化 #html_directory =
# 674行目:コメント化 #manpage_directory =
# 679行目:コメント化 #sample_directory =
# 683行目:コメント化 #readme_directory =
# 最終行へ追記:送受信メールサイズを10Mに制限 message_size_limit = 10485760
# メールボックスサイズを1Gに制限 mailbox_size_limit = 1073741824
# SMTP-Auth 設定 smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject

$ sudo newaliases $ sudo systemctl restart postfix

DovecotをインストールしてPOP/IMAPサーバーを構築します。POP は 110/TCP, IMAP は 143/TCP を使用します

Postfix に SASL機能が提供できるように Dovecot を設定します。

$ sudo apt -y install dovecot-core dovecot-pop3d dovecot-imapd
$ sudo vi /etc/dovecot/dovecot.conf

# 30行目:コメント解除
listen = *, ::
$ sudo vi /etc/dovecot/conf.d/10-auth.conf

# 10行目:コメント解除し変更(プレーンテキスト認証も許可する)
disable_plaintext_auth = no

# 100行目:追記
auth_mechanisms = plain login

$ sudo vi /etc/dovecot/conf.d/10-mail.conf

# 30行目:Maildir形式に変更
mail_location = maildir:~/Maildir

$ sudo vi /etc/dovecot/conf.d/10-master.conf

# 96-98行目:コメント解除し追記
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}


$ sudo systemctl restart dovecot


# 仮想メールボックス管理ユーザー作成
$ sudo adduser --uid 20000 --disabled-password --disabled-login vmail
$ sudo vi /etc/postfix/main.cf
# 185行目:コメントにする #mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 最終行に追記 # 複数ドメインを設定する場合はカンマ または スペース区切りで指定 virtual_mailbox_domains = dowata.xyz virtual_mailbox_base = /home/vmail virtual_mailbox_maps = hash:/etc/postfix/virtual-mailbox virtual_uid_maps = static:20000 virtual_gid_maps = static:20000 $ sudo vi /etc/dovecot/conf.d/10-auth.conf # 100行目:追記 auth_mechanisms = cram-md5 plain login
# 122行目:コメント化 #!include auth-system.conf.ext
# 125行目:コメント解除 !include auth-passwdfile.conf.ext
# 128行目:コメント解除 !include auth-static.conf.ext

# 185行目:コメント化 #mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
$ sudo vi /etc/dovecot/conf.d/auth-passwdfile.conf.ext # 8行目:変更 passdb { driver = passwd-file args = scheme=CRAM-MD5 username_format=%u /etc/dovecot/users # 11行目:[userdb] セクション全てコメント化 #userdb { # driver = passwd-file # args = username_format=%u /etc/dovecot/users #..... #..... #} $ sudo vi /etc/dovecot/conf.d/auth-static.conf.ext # 21-24行目:コメント解除して変更 userdb { driver = static args = uid=vmail gid=vmail home=/home/vmail/%d/%n } $ sudo vi /etc/dovecot/conf.d/10-mail.conf # 30行目:変更 mail_location = maildir:/home/vmail/%d/%n/Maildir

$ sudo systemctl restart postfix dovecot

仮想ユーザーアカウントを登録

$ sudo vi vi /etc/postfix/virtual-mailbox
# 新規登録
# [ユーザーアカウント] [メールボックス]
wataru@mail.dowata.xyz   mail.dowata.xyz/wataru/Maildir/
zabbix@mail.dowata.xyz   mail.dowata.xyz/zabbix/Maildir/

$ sudo vi postmap /etc/postfix/virtual-mailbox
# 暗号化パスワード生成
root@mail:~# doveadm pw
Enter new password:
Retype new password:
{CRAM-MD5}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

$ sudo vi vi /etc/dovecot/users # 新規登録 # [ユーザーアカウント] [パスワード] wataru@mail.dowata.xyz:{CRAM-MD5}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx zabbix@mail.dowata.xyz:{CRAM-MD5}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です