11
11

More than 5 years have passed since last update.

Route53でレコードを登録し、メールの送受信を行なってみた(AWS, Route53, CentOS7, postfix)

Last updated at Posted at 2017-03-26

やること

  • postfixで送受信メールサーバーを構築する
  • Route53でレコードの登録をする
  • 送受信サーバーから、自分のgmailアカウントにメールを送信する(送信テスト)
  • 自分のgmailアカウントから、送受信サーバーにメールを送信する(受信テスト)
    ※メーラー設定まではやりません

前提

  • AWS EC2
  • CentOS7.3
  • postfix
  • 受信ドメインはRoute53で取得済み(smtp.perfectakahashi.com)
  • Aレコードは登録済み
  • 受信ユーザー: test
  • 受信アドレス: test@smtp.perfectakahashi.com

サーバー内設定

1.インストール

# yum install postfix mailx

2.起動、自動起動設定

# systemctl start postfix
# systemctl enable postfix

3.main.cf編集(※変更箇所のみ記載)

送受信できるように設定していきます。

# vi /etc/postfix/main.cf
75行目 myhostname = smtp.perfectakahashi.com   ←★コメントアウト解除、ホスト名を記載
83行目 mydomain = perfectakahashi.com   ←★コメントアウト解除、受信ドメインを記載
98行目 myorigin = $myhostname   ←★コメントアウト解除、@以降指定するものを記載(今回は75行目で指定したホスト名である、smtp.perfectakahashiを受信用アドレスで使う。)
113行目 inet_interfaces = all   ←★コメントアウト解除(受信するインターフェイスアドレスの指定。今回は、全てのメールを受け取る設定。)
418行目 home_mailbox = Mailbox   ←★コメントアウト解除、受信するメールボックスを有効にする設定

4.設定の反映

# systemctl restart postfix

5.受信ユーザーの作成

# useradd test

DNSレコード登録(Route53)

1.AWSコンソールにログイン

2−1.レコードの登録

[サービス]→[Route53]→[Hosted Zone]→[取得済みのドメインを押下]
スクリーンショット 2017-03-26 12.22.31.png

2−2.レコードの登録

[Create Record Set]→[Name: smtp]→[Type: MX - Mail exchange]→[Value: 10 smtp.perfectakahashi.com. ]→[Create]
スクリーンショット 2017-03-26 12.37.02.png
登録後は下記のように、表示されます。
スクリーンショット 2017-03-26 12.39.37.png

Route53の登録は以上です!
※先述していますが、Aレコードはすでに登録済みです。

送受信テスト

まずは送信テスト(サーバーからgmailへ送信)

1.mailコマンドで送信します!

# mail 任意のもの@gmail.com
Subject: test
test
.
EOT

2.送信先のgmailの受信BOXを確認しましょう。

ちゃんと来ていました!
スクリーンショット 2017-03-26 13.16.10.png

送信元の変更

ですが、送信元がroot@smtp.perfectakahashi.comになっていますね。。。
送信元を意図的に変えたい!
そんな時は、下記の設定を行ってください!

●canonicalの設定
# vi /etc/postfix/main.cf
canonical_maps = hash:/etc/postfix/canonical ←★最終行に追記

●rootから送信しても、testから送信したように見せる設定!
# vi /etc/postfix/canonical
root@smtp.perfectakahashi.com test@smtp.perfectakahashi.com ←★最終行に追記

●設定の反映
# postmap /etc/postfix/canonical ←これを行うと、canonical.dbというファイルができます。
# systemctl restart postfix

●送信してみましょう
# mail 任意のもの@gmail.com
Subject: from変えたよ!
from変わってる??
.
EOT

gmailで確認すると。。。。
rootから送信したのに、送信元はtestになっています!
スクリーンショット 2017-03-26 15.09.02.png

次に受信テスト(gmailからサーバーに送信)

1.gmailから送信します。

スクリーンショット 2017-03-26 14.46.43.png

2.サーバーでメールが届くか確認しましょう

手順1.で送信する前に、下記コマンドを行うとリアルタイムで受信を確認できます。

# tail -f /home/test/Mailbox
From 任意のもの@gmail.com  Sun Mar 26 14:50:20 2017
Return-Path: <任意のもの@gmail.com>
X-Original-To: test@smtp.perfectakahashi.com
Delivered-To: test@smtp.perfectakahashi.com
Received: from mail-yw0-f170.google.com (mail-yw0-f170.google.com [209.85.161.170])
    by smtp.perfectakahashi.com (Postfix) with ESMTP id CF063207301D
    for <test@smtp.perfectakahashi.com>; Sun, 26 Mar 2017 14:50:19 +0900 (JST)
Received: by mail-yw0-f170.google.com with SMTP id d191so14214027ywe.2
        for <test@smtp.perfectakahashi.com>; Sat, 25 Mar 2017 22:50:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=Bwo6XJ5WJV6JgU0vhLfwYwTtiD+22q6jQ+ESksXFLyI=;
        b=ahSZjJ+H8xDHiBb3i/oZbScEVo1hOMGFYWDGG2Lw1s6qsGt6FN9CoTHW8w3NRYxvy0
         BaUPP1lSwcYDItV/KHcvkeBZZ0+/YMPKPwrpoxDj5W5sSDDmo4AXUiU0pl4EKVkW7K4P
         TVMB6MvVvIn8to/EPH67Xqo0WD9jumLXVMXz9TcdB4YY5xdy0n3KWb+x1HtGI8VxoWlv
         hS51h1RwhAVB35B7a1Ou3LXczlK+0+3pcDuM39Z5Okw3p2Zpi4xKLMxlCp44/fwvXLOZ
         3MK5F7vDQtOqh8Y2Pinfs/fLFgBhs3bJkFFc111AwqDYoGPdAwTWu+WclaPd47f2Pciy
         /XAg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=Bwo6XJ5WJV6JgU0vhLfwYwTtiD+22q6jQ+ESksXFLyI=;
        b=d4zyFTB2rIT8TcN+J1WxL7gT0nFIX8GaObKSdg5XsxbXs0E1Agx8uwr3N4rCEpw/7D
         iw8QXo3KB42M8jXW28lg01g8uA9bRLifBcweAsT8uDZoFk5U8pEU8Hv4wEZZlG7Dv+pn
         6PI9N7RSNSHiH+jj10FNemjwQL76jqDQqHr1gg4IFS0CRgM8ft6Bp+P8Yim9/hP2eVFv
         ByW6c+/VVek8MIej/V+yt+5d6vuCmLj3EBPFJH4ETR7BGWhnX3i1UIDr5dnA9wqU2qJq
         gVlNibmsFtqNxUPGjgONY2PBwHF02/333V/IfgytbwQEWq76gwdJBBjWPtv511c4+bOb
         JlKg==
X-Gm-Message-State: AFeK/H0C9nM50rBYy9d8Ds3FzH9iA7q6zKfA3kzdiGXcV5onX02ekwWAc4ezCehW37wETRl1NpouqUKKZEvLeg==
X-Received: by 10.37.55.88 with SMTP id e85mr10670359yba.164.1490507418554;
 Sat, 25 Mar 2017 22:50:18 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.37.124.4 with HTTP; Sat, 25 Mar 2017 22:50:18 -0700 (PDT)
From: =?UTF-8?B?6auZ5qmL5LiA5qi5?= <任意のもの@gmail.com>
Date: Sun, 26 Mar 2017 14:50:18 +0900
Message-ID: <CADysH3EURAnUqS_fnJV40CkA_7xVbEEiy3CBgB-F9U_FWTEOug@mail.gmail.com>
Subject: test
To: root <test@smtp.perfectakahashi.com>
Content-Type: multipart/alternative; boundary=001a11473c3637da94054b9bcd6e

--001a11473c3637da94054b9bcd6e
Content-Type: text/plain; charset=UTF-8

test

--001a11473c3637da94054b9bcd6e
Content-Type: text/html; charset=UTF-8

<div dir="ltr">test</div>

--001a11473c3637da94054b9bcd6e--

構築完了です!

root宛てのメールを他のユーザー(今回はtest)で受け取る設定

1.下記ファイルを編集します。

# vi /etc/aliases ※変更箇所のみ記載
postfix:        test   ←★受信したいユーザーを記載する。元々rootでした。

2.設定の編集

# newaliases

3.gmailからroot宛てに送信してみましょう

スクリーンショット 2017-03-26 15.20.29.png

4.testの受信BOXに来るか確認

root宛てなのに、testの受信BOXに来ました!

# tail -f /home/test/Mailbox ※該当箇所を抜粋してます。
From 送信元@gmail.com  Sun Mar 26 15:20:40 2017
Return-Path: <送信元@gmail.com>
X-Original-To: root@smtp.perfectakahashi.com
Delivered-To: test@smtp.perfectakahashi.com
Received: from mail-yw0-f176.google.com (mail-yw0-f176.google.com [209.85.161.176])

終わりに

dkimやspfでの迷惑メール対策、dovecotを使用したPOPサーバー構築は別の機会にやります!

11
11
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
11
11