LoginSignup
1
6

More than 5 years have passed since last update.

CentOS6にシンプルで非セキュアなメールサーバーを構築する方法

Last updated at Posted at 2017-12-18

簡単な検証を行うための、セキュリティを全く考慮していないメールサーバーの構築手順。
間違っても外部に公開しないこと。

OSのインストール

OSをインストールしていない場合は、以下のページを元にOSの基本セットアップを行う。
https://qiita.com/SkyLaptor/items/b55c305fdc247fbfa319

必要なモジュールのインストール

メール送信機能
# yum install postfix dovecot telnet

メール送信(SMTP)設定

メーラーとメールサーバー間のメール送信はSMTPにより行われる。
SMTP機能を以下の手順で変更する。

Commands
# cp /etc/postfix/main.cf /etc/postfix/main.cf.original
# vi /etc/postfix/main.cf
# postfix check
# newaliases
# chkconfig postfix on
# service postfix start
main.cf
# 以下の部分を修正もしくは追記する

myhostname = {自ホスト名}
# 例: myhostname = mail.rapnes.mydns.jp

mydomain = {自メールドメイン名}
# 例: mydomain = rapnes.mydns.jp

inet_interfaces = all

inet_protocols = ipv4

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 他サーバーへのリレーサーバーであれば、$mydomainを含めないようにする
# mydestination = $myhostname, localhost.$mydomain, localhost

mynetworks = {自ネットワーク}
# 例: mynetworks = 127.0.0.0/8, 192.168.0.0/16

alias_maps = hash:/etc/aliases

alias_database = hash:/etc/aliases

home_mailbox = Maildir/

mail_spool_directory = /var/spool/mail

smtpd_banner = $myhostname ESMTP

# メールボックスのサイズを制限したい場合
mailbox_size_limit = {制限サイズ(Byte)}
# 1GBに制限する例: mailbox_size_limit = 1073741824

# 1通当たりのメールサイズを制限したい場合
message_size_limit = {制限サイズ(Byte)}
# 100MBに制限する例: message_size_limit = 104857600

# リレーさせたい場合
relayhost = [{リレー先アドレス}]
# 例:
# relayhost = [192.168.1.10]
# relayhost = [mail2.rapnes.mydns.jp]
# メモ: 大括弧で囲わないと、DNS名前解決にてMX検索をしてしまう

smtpd_helo_required = yes

disable_vrfy_command = yes
設定に関する各種確認コマンド
# main.cfに異常が無いか確認する
postfix check
# 設定値を全て確認する
postconf -d
# デフォルト値から変更した部分のみ確認する
postconf -n

メール送信の動作確認

テスト用のグループ及びユーザーを作成し、メールをコマンド上で送信してみる。

# groupadd -g 10001 mailusers
# useradd -u 501 -g 10001 -c "TestMailUser" -s /sbin/nologin testuser
# telnet localhost 25
HELO rapnes.mydns.jp
MAIL FROM: testuser@rapnes.mydns.jp
RCPT TO: testuser@rapnes.mydns.jp
DATA
Subject: TestMail
Hello. postfix!
.
QUIT

メール受信(IMAP/POP3)設定

メーラーとメールサーバー間のメール受信はIMAP/POP3により行われる。
IMAP/POP3機能を以下の手順で変更する。

# cp /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.original
# cp /etc/dovecot/conf.d/10-auth.conf /etc/dovecot/conf.d/10-auth.conf.original
# cp /etc/dovecot/conf.d/10-logging.conf /etc/dovecot/conf.d/10-logging.conf.original
# cp /etc/dovecot/conf.d/10-mail.conf /etc/dovecot/conf.d/10-mail.conf.original
# cp /etc/dovecot/conf.d/10-ssl.conf /etc/dovecot/conf.d/10-ssl.conf.original
# cp /etc/dovecot/conf.d/20-pop3.conf /etc/dovecot/conf.d/20-pop3.conf.original
# vi /etc/dovecot/dovecot.conf
# vi /etc/dovecot/conf.d/10-auth.conf
# vi /etc/dovecot/conf.d/10-logging.conf
# vi /etc/dovecot/conf.d/10-mail.conf
# vi /etc/dovecot/conf.d/10-ssl.conf
# vi /etc/dovecot/conf.d/20-pop3.conf
# doveconf -n
# chkconfig dovecot on
# service dovecot start
dovecot.conf
protocols = imap pop3
listen = *
10-auth.conf
disable_plaintext_auth = no
auth_mechanisms = plain login
10-logging.conf
log_path = /var/log/dovecot.log
log_timestamp = "%Y-%m-%d %H:%M:%S "
10-mail.conf
mail_location = maildir:~/Maildir
# メール利用ユーザーが使用するUIDの開始番号(必要に応じて)
first_valid_uid = 500
10-ssl.conf
ssl = no
20-pop3.conf
pop3_uidl_format = %08Xu%08Xv

参考

http://www.postfix.org/documentation.html
http://www.yukun.info/blog/2014/02/linux-telnet-smtp-pop3-mail.html

1
6
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
1
6