※代表的なターミナルエミュレータ
apt-getからパッケージインストールを実行します。
$ sudo apt-get install postfix sasl2-bin dovecot-common
インストール内容を確認し”y”を入力してインストールが開始します。
Do you want to continue [Y/n]?y
途中設定画面での入力が必要となります。
![]() |
|---|
OKを押して進みます。
![]() |
|---|
Postfixの自動設定内容を選択します。(後で設定ファイルから自由に変更可能です。)
| No configuration | 何も設定しません |
| Internet Site | SMTPサーバを経由してメールの受信・送信を行う |
| Internet with smarthost | SMTPサーバorSMARTホスト(別サーバでの送信受信)を利用する |
| Satellite system | SMARTホストのみを利用する |
| Local only | ローカル下のユーザのみとメールを利用する |
今回の手順ではInternet Siteを選択します。
次にメールアドレスに付与するドメイン名を設定します。
![]() |
|---|
有効な自身のドメインを指定し、OKで進みます。
インストールに成功するとpostfixが起動され終了します。
Postfix設定ファイルの編集を行います。
$ sudo vi /etc/postfix/main.cf
myhostname = <インストール時に設定したドメイン>
有効なドメインが設定されている事を確認します。
myorigin = /etc/mailname
/etc/mailnameにはインストール時に設定したドメイン名が書かれています。メール送信者の”~@「△△△.jp」”部分となります。
inet_interfaces = all
デフォルトではallとなっており外部からのメールも受信できます。allからlocalhost(ローカル内)に変更することで、内部からのメールのみに制限も出来ます。
mydestination = <自身のドメイン>, localhost.<自身のドメイン>, localhost
“~@$mydestination”のメールを自身へのメールと判断し、サーバにメールを保存します。
設定内容にMailboxをMaildir形式として追記します。
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
下記の様に編集します。メールにサーバ情報が載るのを防ぎます。
smtpd_banner = $myhostname ESMTP unknown
外部の悪意ある第三者から、メールサーバを不正利用させない為、認証を使用します。
以下の内容を最終行に追記します。
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
postfixを再起動して設定を反映します。
$ sudo service postfix restart
SMTP認証デーモンを起動します。
SMTP認証に使用するsaslauthを起動するため、設定ファイルを編集します。
$ sudo vi /etc/default/saslauthd
START=no
上記を以下のように編集します。
START=yes
編集後、起動します。
$ sudo service saslauthd start Starting SASL Authentication Daemon: saslauthd.
デフォルトで有効になっていますが、自動起動がON(ランレベル2,3,4,5でON)となっている事を確認します。
$ sysv-rc-conf --list saslauthd saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
認証で使用されるパスワードは、システムのユーザ・パスワードと同一となります。
Mailbox形式の追加に伴い
新規ユーザのホームディレクトリに受信Maildirの自動作成が行われる様設定します。
# sudo mkdir -p /etc/skel/Maildir/{new,cur,tmp}
設定ファイルを編集します。
$ sudo vi /etc/dovecot/dovecot.conf
# Protocols we want to be serving: imap imaps pop3 pop3s managesieve # If you only want to use dovecot-auth, you can set this to "none". #protocols = imap imaps pop3 pop3s protocols = none
Dovecot使用プロトコルにimap,popアクセスを追加します。
# Protocols we want to be serving: imap imaps pop3 pop3s # If you only want to use dovecot-auth, you can set this to "none". #protocols = imap imaps pop3 pop3s protocols = imap imaps pop3 pop3s
# mail_location = maildir:~/Maildir # mail_location = mbox:~/mail:INBOX=/var/mail/%u # mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
コメントアウトを外し、メール配送先にMaildirを指定します。
mail_location = maildir:~/Maildir # mail_location = mbox:~/mail:INBOX=/var/mail/%u # mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
デフォルトで有効になっていますが、自動起動がON(ランレベル2,3,4,5でON)となっている事を確認します。
$ sysv-rc-conf --list |grep dovecot dovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off
メールの送信をテストを行います。
$ mail <有効なメールアドレス>
入力待機の状態となるので以下を入力します。
Subject:<任意の題名> <任意の本文>
入力後、<Ctrlキー+D> を2回(※1回目はCC設定)で送信となります。
送信先のメールボックスを確認し、メールが届いていることを確認します。
/var/log/mail.logの出力にてエラー(mail.warningやmail.error)が出力されていないことを確認します。
メールの受信テストを行います。
ローカル以外のメールアドレスからメールを送信します。
サーバ側へのメールは<ユーザ名>@<ホスト名>を宛先にして送信してください
宛先にしたユーザの/Maildir/new/配下にメールが届いていることを確認します。
/var/log/mail.logの出力にてエラー(mail.warningやmail.error)が出力されていないことを確認します。
以上でメールの送受信検証は完了です。
| postfix設定ファイル | /etc/postfix/main.cf |
| postfixと各プロセスとの連携設定等 | /etc/postfix/master.cf |
| dovecot設定ファイル | /etc/dovecot/dovecot.conf |
| SASLAUTHD設定ファイル | /etc/default/saslauthd |
| ログ出力先(Postfix,Dovecot共通) | /var/log/mail.log |