26
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ローカル環境のPostfix構築

Last updated at Posted at 2019-05-18

CentOS7で実施。Postfix、Dovecotを使ってローカルネットワーク向けの
メール送受信環境を構築。メール配信の仕組み理解のため。

Postfix

インストール

sudo yum -y install postfix

起動

systemctl restart postfix

postfixのバージョン確認

postconf | grep mail_version

自動起動

systemctl enable postfix

main.cf

cp -p /etc/postfix/main.cf /etc/postfix/main.cf.org
vi /etc/postfix/main.cf

# 自身のドメイン設定
mydomain = mail-server.test
myorigin = $mydomain
 
# ローカルホスト以外からも受け付ける
inet_interfaces = all
 
# ipv4しか使用しないため
inet_protocols = ipv4
 
# 宛先ドメインに自身のドメインを追加
mydestination = $myhostname, localhost.$mydomain, localhost, mail-server.test
 
# 初めはローカルホストで動かすため
mynetworks = localhost
 
# メールボックスの形式設定
home_mailbox = Maildir/

再起動

systemctl restart postfix

user1というアカウントを作成する。

useradd user1 -s /sbin/nologin
任意のパスワード入力
passwd user1

server1というアカウントを作成する。

useradd server1 -s /sbin/nologin
任意のパスワード入力
passwd server1

ディレクトリの書き込み権限

chmod 777 /var/spool/mail

telnetインストール

yum -y install telnet

テスト

ローカルホストの25番ポートに接続
telnet localhost 25
 
出力
220 localhost.localdomain ESMTP Postfix
 
入力
helo localhost
 
出力
250 localhost.localdomain
 
入力:送信元アドレス
mail from: user1@mail-server.test
 
出力
250 2.1.0 Ok
 
入力:宛先アドレス
rcpt to: user1@mail-server.test
 
出力
250 2.1.5 Ok
 
入力:メールの本文かきますコマンド
data
 
出力
354 End data with <CR><LF>.<CR><LF>
 
入力:メール本文
helo postfix

入力:本文書き終えましたコマンド
.
 
出力
250 2.0.0 Ok: queued as ・・・
 
入力:telnet終了
quit
 
出力
221 2.0.0 Bye
 
以下ディレクトリ存在すること
ll /home/user1/Maildir

Dovecot

インストール


yum -y install dovecot

起動

systemctl start dovecot

自動起動

systemctl enable dovecot

設定

vi /etc/dovecot/dovecot.conf
 
# 使用するプロトコル列挙
protocols = imap pop3 lmtp
 
# IPv4のみ使用。v6へのバインドを行わない
listen = *

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

# ファイルの場所を指定
mail_location = maildir:~/Maildir

vi /etc/dovecot/conf.d/10-auth.conf

# 平文認証の許可
disable_plaintext_auth = no
 
auth_mechanisms = plain login

vi /etc/dovecot/conf.d/10-ssl.conf

ssl = no

再起動

systemctl restart dovecot

テスト

telnet localhost 143
 
出力
Connected to localhost.
 
入力:user1でログイン
1 login user1 パスワード
 
出力
Logged in
 
入力:ホームディレクトリの一覧を見る
2 list "" *
 
出力
* List () "." "INBOX"
2 OK List completed.
 
入力:INBOXの中身を見る
3 select INBOX
 
出力
1 EXISTS  ←1通のメールがある
1 RECENT  ←最新のメールは1通
3 OK Select completed.
 
入力:1通目のメールを見る。送信時のテストのものが見れる。
4 fetch 1 body[]
 
出力
From: user1@mail-server.test
To: undisclosed-recipients:;
 
helo postfix
)
4 OK Fetch completed.
 
入力:終了
5 logout
 
出力
5 OK logout completed.

ネットワーク設定

vi /etc/postfix/main.cf

# 割り当てているネットワークを追記
mynetworks = localhost, 192.168.2.0/24

再起動

systemctl restart postfix

設定

vi /etc/dovecot/dovecot.conf
 
# ネットワークを記述
login_trusted_networks = xxx.xxx.xxx.xxx/xx (プライベートネットワークのCider)

再起動

systemctl restart dovecot
26
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?