Ubuntu 16.04にWebアプリケーション開発用のMailtrapを使用してsSMTPをインストールする

このチュートリアルでは、シンプルな転送サーバーであるsSMTPをインストールする方法を学びます。

Mailtrap.ioは、開発者向けに偽の電子メールサーバーを提供しています。開発段階で実際のアドレスにレポートまたは電子メールを送信するために使用しますが、Mailtrap.ioでそれらを傍受し(最終的な受信者には配信されません)、HTML電子メールがどのようにレンダリングされるか、または新しいCTOボタンがどのように目立つかを即座に確認します。

sSMTPとMailtrapを統合することにより、Ubuntu開発VPSは、cronジョブ完了レポートなどの一般的なメール目的で同じメール送信サーバーを使用できます。

このようにして、実際のメールアドレスでアプリケーションをテストし、クライアント側での動作を感じ取ることができます。個人または同僚のメールアカウントをあふれさせることはありません。

前提条件

  • Ubuntu 16.04がインストールおよび更新されたVultr VPS。
  • Mailtrap.ioアカウント。
  • root以外のsudoユーザー
  • お好みのテキストエディタを使用しますnano
  • 現在のインストールのバックアップまたはスナップショット。

インストール手順

通常のユーザーとしてVPSにログインします。次のコマンドを発行して、自分を管理者にします。

sudo su

次に、パスワードで確認します。テスト用のメールクライアントとしてmuttを使用して、サーバー側のsSMTPパッケージをインストールします。

apt install ssmtp mutt

構成

今、あなたはそれをあなたのmailtrapアカウントで動作させる必要があります。

資格情報とサーバー名が必要になります。私たちの場合、サーバーにはsmtp.mailtrap.ioポートがあります2525

編集中のファイルは2つあります。まず、rootとしてログインしたまま、構成ファイルを編集します。

nano /etc/ssmtp/ssmtp.conf

デフォルトでは、次のテキストのようになります。

# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=mail

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=example.com

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
#FromLineOverride=YES

この時点で、エントリを編集して独自の値に一致させるか、コンテンツ全体を特定の情報に置き換えることができます。大文字のエントリには、実際のデータが含まれています。[email protected]メールの送信元のメールです。MAILTRAP_USERNAMEそしてMAILTRAP_PASSWORDMailtrap.ioで自動的に生成されます。どちらも長くランダムな文字列です。Mailtrap Inboxので調べてくださいSMTP Settings

[email protected]
mailhub=smtp.mailtrap.io:2525
AuthUser=MAILTRAP_USERNAME
AuthPass=MAILRTRAP_PASSWORD
FromLineOverride=Yes

ファイルを保存します。ナノプレスで「Ctrl-X」を押し、「」で確認しYます。

編集が必要な2番目のファイルは、ローカルユーザーアカウントを外部の電子メールアドレスにマッピングするためのもので、リバースエイリアスを使用します。ファイルを表示します。

nano /etc/ssmtp/revaliases

エントリを最後に追加して、このテキストのようにします。

# sSMTP aliases
#
# Format:       local_account:outgoing_address:mailhub
#
# Example: root:[email protected]:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:[email protected]:smtp.mailtrap.io:2525
username:[email protected]:smtp.mailtrap.io:2525

基本的に、システムはローカルアカウントからのすべての電子メールを、サーバーを介してroot電子メールユーザーとして送信する必要が[email protected]ありmailtrapます。必要な数のユーザーを、それぞれを1行に入力します。rootメッセージを送信するだけでよい場合は、他の行を省略してください。後で戻って、必要に応じてユーザーを追加できます。

ファイルを保存します。ナノプレスで「Ctrl-X」を押し、「」で確認しYます。

完了です。自分にメールを送信して、動作を確認したい場合があります。それを行うには、メッセージを作成して送信します。

echo "This is the body" | mutt -s "Hello World" [email protected]

Mailtrapアカウントにログインして、デモの受信トレイを確認します。メールはすでにそこに待機しているはずです。

結論

最後に、ターミナルセッションをroot通常のユーザーに切り替えます。

exit

必要に応じて、[email protected]crontab に追加します。簡単なテストを行うには、たとえば、/homeフォルダ内のサブフォルダを1分ごとにチェックし、crontabを編集するとします。

crontab -e

必要に応じてエディターを選択し、これらの行を最後に追加/編集して、次のテキストのようにします。

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
[email protected]
* * * * * ls /home

これはls /home毎分実行MAILTOされ、エントリが追加されているため、そのアドレスに応答を送信します。crontabテーブルの詳細については、こちらをご覧ください

終了時に保存します。Mailtrapで毎分電子メールが送信されることを期待してください。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。