SMTPサーバーのセットアップ、使用法、およびベストプラクティス

公開: 2022-04-08

電子メールが実際にどのように機能するのか疑問に思ったことはありません。電子メールを送信すると、数秒以内に受信者の受信トレイに届きます。これを実現する技術は、SMTP(Simple Mail Transfer Protocol)です。 IMAP / POP3サーバーを使用して受信したメールがサーバーに保存される方法は別の時代の話です。今のところ、SMTPについて説明します。記事の終わりまでに、STMPプロトコル、SMTPサーバーについて完全に理解していただければ幸いです。 、一般的なオプションと、メールが確実にスパムに届くようにする方法。

目次
SMTPとは何ですか?
SMTPサーバーとは何ですか?
SMTPはどのように機能しますか?
共通のSMTPポートとアドレス
一般的なSMTPサーバー名
バルクSMTPサーバープロバイダー設定
WordPressでSMTPサーバーを使用する
LinuxでセルフホストSMTPサーバーをセットアップする
SMTPサーバーの使用

SMTPとは何ですか?

Simple Mail Transfer Protocol(SMTP)は、電子メールの送信に使用されるプロトコルであり、SMTPサーバーがインターネット上の他のSMTPサーバーまたはPOP3 / IMAPサーバーと通信し、相互に理解できるようにするための共通の標準を定義します。 電子メールの転送に関与するさまざまなエンティティが共通の言語を話すことを保証すると言うことができます。

SMTPサーバーとは何ですか?

SMTPプロトコルは、アプリケーションによって使用可能にする必要があります。電子メールの送信または電子メールのリレーを希望するユーザーのSMTP要求に応答するこのアプリケーションは、SMTPサーブ/SMTPリレーと呼ばれます。 以下に示すように、2つのタイプに分けることができます。どちらも、わずかな違いを除いてほとんど同じです–

  • SMTPサーバー: SMTPリレーと同じものですが、主に受信側ドメインがサーバードメインと同じ場合に使用されます。 これらは通常、gmail.com、yahoo.comなどの無料のメールサービスで使用されます。
  • SMTPリレーサーバー:これもサーバーですが、この用語は、送信元の電子メールドメインと宛先の電子メールドメインがSMTPサーバードメインと異なる場合に使用されます。 例としては、これらを提供するSendGridまたはSendInBlueがあります。これらのサーバーは、主にメールのルーターです。

偽のSMTPサーバー: –これらのサーバーは主に開発者によるテストに使用され、基本的にはキャッチオールサーバーであり、ユーザーは実際に電子メールを送信せずに受信者側で電子メールがどのように表示されるかを確認できます。 MailHogやMailCatcherなどのローカルアプリケーションをインストールするか、MailtrapやOurローカルツールなどの提供されているクラウドを使用できます。

SMTPはどのように機能しますか?

以下は、電子メールの送信プロセスがSMTPでどのように機能するかについての一般的なガイドです。

  • たとえば[emailprotected]から[emailprotected]にメールを送信したいユーザーは、自分のメールクライアントを使用して件名と本文を含むメールの下書きを作成し、[送信]を押します。
  • ユーザーが送信を押すと、電子メールクライアントは構成済みのSMTPサーバーに接続します。今のところ、smtp.source.comであると想定します。 クライアントとSMTPサーバーはハンドシェイクを実行し、承認が必要な場合、クライアントは同じものの資格情報を提供します。
  • ハンドシェイク後、電子メールクライアントは受信者アドレスを送信します。この場合は[電子メールで保護]、件名、本文です。
  • ユーザーが同じドメイン内の誰かに送信していた場合、サーバーはそれをローカルの受信者サーバーに内部的に転送するだけです。
  • 次に、MXレコードのDNS要求を使用するSMTPサーバーは、SMTPサーバーが実行されている受信者のIPアドレスまたはドメインアドレスを見つけます。
  • 次に、受信者のSMTPアドレスに接続し、電子メールの配信を試みました。
  • 受信者のEメールサーバーは、転送されるEメールを処理できるかどうかを確認します。 そして、すべてが順調であれば、これを着信IMAPまたはPOP3サーバーに転送します。

共通のSMTPポートとアドレス

ほとんどの場合、SMTPアドレスは、接続しようとしているドメインの前にあるmailまたはsmtpのプレフィックスになります。 また、これらはDNSのメール交換(MX)レコードによって指定され、電子メールメッセージのルーティング方法を処理することになっているメールサーバーにクライアントを転送します。

SMTPサーバーのアドレスを見つけるには、digコマンドを使用できます

次に、必要に応じてdigコマンドを使用してIPアドレスを見つけることができます

接続するポートはそれほど単純ではありません。サーバーとリレーには通常、接続できるさまざまなポートのセットがあり、それぞれが特定の要件を満たすために時間外になっています。

SMTPポート

ポート番号説明情報
25 標準SMTPポート主にEメールリレーに使用する必要があります
465 非推奨のSMTPポート安全なSMTP用であり、暗号化にSSLを使用しました。 使用を避けてください。
587 最新のセキュアSMTPポート最新の電子メールクライアントのほとんどはこれを使用し、TLS暗号化を使用します。
2525 代替の非標準SMTPポートこれは、587がブロックされた場合の代替として使用されます。

ほとんどの場合、必要に応じてポート587を使用します。

一般的なSMTPサーバー名

SMTPサーバーの一般的なアドレスはsmtpで始まります。 またはメール。 ドメイン名を使用すると、IPアドレスを持つものもあります。 以下に、いくつかの一般的なものとその詳細を示します–

サービス名SMTPサーバーポート
Googleのメールsmtp.gmail.com 587
Outlook.com smtp.live.com 587
Office365.com smtp.office365.com 587
ヤフーメールsmtp.mail.yahoo.com 465
Yahooメールプラスplus.smtp.mail.yahoo.com 465
Yahoo UK smtp.mail.yahoo.co.uk 465
Yahoo Deutschland smtp.mail.yahoo.com 465
Yahoo AU / NZ smtp.mail.yahoo.com.au 465
O2 smtp.o2.ie 25
O2.uk smtp.o2.co.uk 25
AOL.com smtp.aol.com 587
AT&T smtp.att.yahoo.com 465
NTL @ ntlworld.com smtp.ntlworld.com 465
BTコネクトpop3.btconnect.com 25
BT Openworld mail.btopenworld.com 25
BTインターネットmail.btinternet.com 25
オレンジsmtp.orange.net 25
Orange.uk smtp.orange.co.uk 25
ワナドゥーUK smtp.wanadoo.co.uk 25
ホットメールsmtp.live.com 465
O2 Online Deutschland mail.o2online.de 25
T-Online Deutschland securesmtp.t-online.de 587
1&1(1and1) smtp.1and1.com 587
1&1ドイツsmtp.1und1.de 587
Comcast smtp.comcast.net 587
ベライゾン発信.verizon.net 465
Verizon(Yahooがホスト) 発信.yahoo.verizon.net 587
Zoho Mail smtp.zoho.com 465
Mail.com smtp.mail.com 587
GMX.com smtp.gmx.com 465
[メール保護]USA.NETによるsmtp.postoffice.net 465

バルクSMTPサーバープロバイダー設定

複数の電子メール、たとえば10000 Kの電子メールを送信する場合はどうなりますか?バルクSMTPリレーのようなものが必要になります。これらは、APIや、配信追跡、オープンレートなどの他の機能も提供します。プロトコルとしてのSMTPは少し遅いので、電子メールは非常に高速です。

数がそれほど多くない場合は、無料のSMTPサーバープロバイダーのリストを使用して選択できます。

大規模なユーザーベースにメールを送信したい場合、またはメールマーケティングの場合は、さまざまなプロバイダーをリストした価格を以下に示します。

ベンダー無料/月1日あたりの制限有料プランコメントコメント
SendInBlue 9000 300 1万ドルで25ドルから100万ドルで499ドル最高の無料
TurboSMTP 6000 200 50kの場合は14.95、200万の場合は979.95。 6000/月で12か月
アリババダイレクトメール6000 200 1000メールあたり.00029
PepiPost 3000 100 15万ドルで25ドルから200万ドルで445ドル
SendGrid 3000 100 5万通のメールで14.95ドル、15万通で749ドル
SparPost 3000 100 50Kで$20から1Mで$525
Elastic Email 3000 100 アマゾンSESのような原価計算低コストの有料オプション
アマゾンSES 62000 1000通のEメールの場合は.0001 AWS EC2サーバーから送信された場合、最も安価で無料の1つ
Gmail 15000 500 Gsuiteはプレミアムオプションですドメインはgmail.comになり、アカウントの停止につながる可能性があります。

WordPressでSMTPサーバーを使用する

WordPressはインターネット上のサイトのほぼ40%に電力を供給し、デフォルトではPHP Mailを使用してトランザクションメールを送信します。トランザクションメールは、構成されていない場合はsendmailを使用します。配信が懸念される場合、これはヒットまたはミスになる可能性があるため、 SMTP設定またはSMTPAPIを使用できるWordPressプラグイン。

デフォルトでは、WordPressはPHPメールを使用してメールを送信します。正しく設定されていれば十分ですが、ほとんどの共有ホストでは、コンソールに直接アクセスして何が起こっているのかを確認できないため、ほとんどの場合、サードパーティのサービスを使用する方が簡単です。サーバー上に他のユーザーがいて(共通共有ホスティングの場合)、動作せずにIPがブラックリストに登録される可能性があるため、SPAMが原因でホストIPがブラックリストに登録されている可能性があります。 ブラックリストに登録されているということは、サーバーのIPが既知のスパマーのグローバルリストに含まれていることを意味します。これにより、メールの通過がさらに困難になります。ここでステータスを確認できます。

WordPressには、Wp Mail SMTPプラグインをお勧めします。設定、設定が簡単で、Gmailを含むさまざまなベンダーをサポートしています。また、送信されたすべてのメールをログに記録するオプションもあります。 ほとんどのユーザーにとって、無料プランで十分です。

WordPress内から簡単にインストールでき、WordPressのWebサイトからダウンロードすることもできます。 プレミアムプランがありますが、ほとんどのユーザーにとっては無料で十分です。

LinuxでセルフホストSMTPサーバーをセットアップする

クイックMTA比較、Linuxで作業するのでPostfixを選択します–

あなたがいる場合... qmail Exim Sendmail Postfix ノート
経験の浅い
0 3 1 3 EximとPostfixには優れたドキュメントと明確な例があります
セキュリティが心配
3 2 0 3 Postfixは安全で最新です。 qmailは安全ですが、非常に古くて不機嫌です。 Eximはさまざまな基準に対して安全です(上記を参照)。
Sendmailmiltersに依存する
0 1 3 2 Postfixはmilterを実行できます。 同等のEximルーター/フィルタースクリプトを使用できます
最小限の手間が欲しい
0 3 0 3 Sendmailには簡単なフロントエンドがいくつかありますが、深くなるほど悪化します。 PostfixとEximはより予測可能です。
リソースに制約があります
3 2 1 2 その他のコメントについては、以下の組み込みアプリケーションを参照してください
Windowsの場合
0 2 3 0 SendmailにはネイティブのWindowsポートがあります。 EximはCygwinディストリビューションにあります
商業的支援が必要
1 3 3 3 すべてのMTAに有能な会社があります。 qmailは本質的にサポートが難しいため、非常に古いです

Postfixは、SMTPサーバーまたはクライアントとして機能して電子メールを送受信できるメール転送エージェント(MTA)です。 セットアップと構成は簡単で、私たち自身がほとんどのニーズに使用します。また、サードパーティの電子メールサービスを介して電子メールを転送するための仲介者として機能するようにセットアップすることもできます。 基本的な設定についてのみ説明し、最初のメールを送信します。

最も簡単なセットアップはpostfixのインストールで構成されており、準備は整っているはずです。

このような必要最低限​​の設定は技術的には機能しますが、メールがスパムに届く可能性があります。これに対応し、メールの配信可能性を高めるために、メールを確実に送信するために必要なDKIMやSPFなどの他の要件を追加する別のガイドがあります。終えた。 ただし、それでも、非常に正当な理由がない限り、独自の電子メールサーバーを実行することはお勧めしません。

このプロセスは、Ubuntu 20.04が新しくインストールされており、コマンドラインLinuxで作業できることを前提としています。そうでない場合は、既存のSMTPプロバイダーのいずれかを使用することをお勧めします。 Ubuntu 20.04サーバーにpostfixを設定し、それを使用して独自のダミーサービスに電子メールを送信し、動作するかどうかをテストします。

まず、aptパッケージマネージャーのupdatecacheコマンドを発行します

sudo apt update

次に、次のコマンドを使用してpostfixをインストールします–

sudo apt install postfix

インストールすると、一連のプロンプトが表示されます。次の選択を行ってください–

  • メール設定の一般的なタイプ? :このために、インフラストラクチャのニーズに一致するインターネットサイトを選択します。
  • システムメール名:これは、ユーザーが送信者ドメインを指定していない場合にメールを送信するために使用されるベースドメインです。 したがって、たとえばuser1から電子メールを送信し、ドメインが指定されていない場合、これは電子メールに後置されます。 したがって、example.comが指定されている場合、[emailprotected]からメールが送信されます。

これで基本構成が処理されます。 完全なセットアップについては、メールサーバーセットアップガイドに従ってください。 これでポート25が使用可能になります。コマンドのいずれかを使用して、ポートが開いているかどうかを確認できます–

私たちが探しているのはこのようなものです

master 2575 root 13u IPv4 30244 0t0 TCP *:25 (LISTEN)
master 2575 root 14u IPv6 30245 0t0 TCP *:25 (LISTEN)

セットアップを再構成する必要がある場合でも、コマンドを実行するだけです–

SMTPサーバーが稼働している必要があります。 次に、インターネット上の一部のユーザーに電子メールを送信するか、すべての電子メールをキャッチしてテストすることができます。

SMTPサーバーの使用

通常、電子メールクライアントは、ほとんどの人がSMTPサーバーとインターフェイスする最も一般的な方法ですが、telnetを使用して直接対話することもできます。 とてもかっこいいので、この方法から始めましょう。

Linuxでtelnetを使用してメールを送信する

次のコマンドを入力して、ローカルSMTPサーバーに接続します–

このようなものが表示されます–

接続できない場合は、postfixが実行されていることを確認し、ポート25が開いていることを確認してください。

次に、[メール保護](すべてのメールをキャッチ)というメールを送信しましょう。

[メール保護]の受信トレイでメールが受信されているかどうかを確認してください。別の受信者を使用している場合は、受信トレイで確認できます。

Linuxコマンドラインからメールを送信する

Linuxでは、sendmailコマンドを使用してEメールをすばやく送信できます。

私の記事が気に入っていただければ幸いです。いくつかの点を見逃したり、どこかで間違っていたと感じた場合は、お知らせください。ここで更新します。