サバとエンガワ

サーバーエンジニアしてます、地方に住んでます、、、

【スポンサーリンク】

ダミーメールサーバを使ってみよう【CentOS7】

メール送信機能を含むWebシステムを開発するときに、

ダミーメールサーバが役に立ちます

 

SMTPサーバの接続先を ダミーメールサーバにすることで

それ以降メールが外に出ることはありません

 

今回は、そのダミーメールサーバを立ち上げる設定を示します

f:id:adakkuma:20180808224145j:plain

 

 

 

ダミーメールサーバのインストール

ダミーメールサーバは、「Mailcatcher」を使用します

rubyで動くツールで、このツールで受け取ったメールをWebブラウザから確認する機能もあり、とても使いやすいです

 

CentOS7 にインストールします 

# yum install ruby
# yum install ruby-devel
# yum install gcc
# yum install gcc-c++
# yum install sqlite-devel

# gem install mailcatcher

 

 

ダミーメールサーバの起動

あとは、下記コマンドを実行すれば起動完了です

# mailcatcher
Starting MailCatcher
==> smtp://127.0.0.1:1025
==> http://127.0.0.1:1080
*** MailCatcher runs as a daemon by default. Go to the web interface to quit.

起動完了すれば、上記のように STMPサーバは ポート1025 で待ち受けされるようになります。

#デフォルト 1025 と 1080 を使用します。このポートがすでに使用されている場合は、起動失敗します

 

オプションを指定することで、ポート番号やIPアドレスなどを変更することもできます

SMTPサーバのポート番号を変更(ポート 25に変更)
# mailcatcher --smtp-port 25

SMTPサーバの受け付けるIPアドレスを変更( 0.0.0.0 )
# mailcatcher --smtp-ip 0.0.0.0
→外部から受け付ける場合は、firewallの設定も変更してください

 

ダミーメールサーバへメール送信してみる

ダミーメールサーバを起動したので、それに対してメールを送信してみましょう

telnetで接続して、メールを送ってみます

# telnet 127.0.0.1 1025
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 EventMachine SMTP Server
HELO aaa
250 Ok EventMachine SMTP Server
MAIL FROM: test01@example.com
250 Ok
RCPT TO: test02@example.com
250 Ok
DATA
354 Send it
Subject: test
From: test01@example.com
To: test02@example.com

Hello World!
.
250 Message accepted
QUIT
221 Ok
Connection closed by foreign host.

ダミーメールサーバへ接続し、メール送信することができました。

 

それでは、受け取ったメールを確認してみましょう

 

ダミーメールサーバが受け取ったメールを確認する

 mailcatcherを起動したときに、「==> http://127.0.0.1:1080」というのが出ていますので、ここにアクセスすることで確認することができます

termtermなどでmailcatcherを起動したサーバにSSH接続している場合は、SSHポート転送設定をすることで、接続できます

(「設定」→「SSH転送」→「追加」)

ローカルのポート と リモートのポート に 「1080」を入力して OK を押します

f:id:adakkuma:20180808231714p:plain

 

SSHポート設定完了後に、Webブラウザで「http://127.0.0.1:1080」にアクセスします

f:id:adakkuma:20180808231932p:plain

先ほどのメールを確認することができます

 

右上の「Quit」を押せば、mailcatcherを終了することができます

 

これで、ダミーメールサーバの使い方は以上になります

ぜひ参考にしてみてください

 

では