IMAP

The Readdle Team
作成日:

定義

💡 IMAP:Internet Message Access Protocol の略で、メールクライアントがメールサーバーからメッセージを取得するための標準的な方式です。 IMAP は RFC 9051 で定義されており、複数のメールクライアントからメールボックスを完全に管理できるようにすることを目的として設計されました。 メールをデバイスにダウンロードする POP3 とは異なり、IMAP はすべてをサーバー上に保持します。

なぜ IMAP が重要なのか

IMAP の主な特徴は、サーバーからメールをメールクライアントにダウンロードするのではなく、メールサーバーとメールクライアントの仲介役として機能し、ユーザーがどのデバイスからでもメールにアクセスできるようにすることです。 つまり、スマートフォンでメールを確認し、その後ノートパソコンに切り替え、さらにタブレットで再度確認しても、すべてが同期されたままです。 あるデバイスでメールを読むと? どこでも既読として表示されます。 何かを削除すると? すべてのデバイスから消えます。 メッセージをフォルダに移動すると? その変更はすべてに反映されます。

IMAP は、メールサーバーからローカルデバイスへメッセージをダウンロードするために使われていた Post Office Protocol(POP)の代替として、1986 年に Mark Crispin によって作られました 

大きな違いは、メールがどこに保存されるかです。 POP とは異なり、IMAP はメールサーバー上にメッセージとフォルダ構造を保存し、クラウドメールのように機能します。 現在のほぼすべてのメールクライアントとサーバーはIMAPをサポートしており、IMAPは、以前からあるPOP3と並んで、メール受信のための最も普及している2つの標準プロトコルです。 Gmail、Outlook、Yahoo Mail はいずれも IMAP を使用しています。 今ではそれが標準です。

IMAP の仕組み

IMAP はクライアント・サーバーモデルで動作します。 メールアプリ(クライアント)は、特定のコマンドを使ってメールサーバーと通信します。

IMAP サーバーは通常、ポート番号 143 を待ち受けます。一方、SSL/TLS 上の IMAP(IMAPS)にはポート番号 993 が割り当てられています。 ポート 143 は暗号化されておらず、インターネットに公開すべきではありません。 ポート 993 は TLS 暗号化を追加したもので、実際に使うべきなのはこちらです。

基本的な流れは次のとおりです。ユーザーがサインインすると、メールクライアントは IMAP を介してサーバーに接続し、接続確立用の特定のポートを使用します。 その後、ユーザー名とパスワードで認証します。 その後、クライアントはコマンドの送信を開始できます—受信トレイを開くSELECT、特定のメッセージを取得するFETCH、特定の条件に一致するメールを探すSEARCHです。

巧妙なのは、メールクライアントが最初に各メールのヘッダーだけを表示し、メッセージ本体や添付ファイルはユーザーがタップしたときにのみクライアントへダウンロードされる点です。 つまり、メールアプリを開くたびにメールボックス全体をダウンロードしているわけではありません。 ダウンロードするのはヘッダーだけなので、処理はずっと高速になります。

クライアントは、ユーザーインターフェースがアクティブな間は接続を維持し、必要に応じてメッセージ内容をダウンロードすることがよくあります。 メールアプリはサーバーとの接続を開いたまま維持し、新しいメールが届くと通知を受け取ります。 だから即時通知を受け取れるのです。

IMAP と POP3 の違い

選択のポイントは、基本的にメールをどこに保存したいかです。

IMAP はメールをサーバー上に保持します。 IMAPでは、メールは削除するまでサーバー上に保持され、柔軟性と安心感をもたらします—デバイスが故障しても、コピーが必ず残っているとわかるからです。 すべてがデバイス間で同期されます。 サーバー上でメールをフォルダに整理でき、そのフォルダはどのデバイスにも表示されます。

POP3 はメールをデバイスにダウンロードします。 POP3 は、メールサーバーからメールやファイルを直接取得してデバイスにダウンロードする仕組みで、いったんメールがダウンロードされると、通常はサーバーから削除されます。 そのメールには、その特定のデバイスからしかアクセスできません。 同期も、複数デバイスからのアクセスもありません。

IMAP は、特に複数のデバイスからメールを確認する必要がある場合、現代的なメール利用に適しているとしてよく推奨されます。 1台のコンピューターしか使わず、すべてのメールにオフラインでアクセスしたいという場合でなければ、IMAPのほうが適しています。

トレードオフは? IMAP では はるかに多くのサーバー側リソースが必要となり、メールボックスあたりのコストも大幅に高くなります。 ただし、ユーザーにとってはそれは問題ではありません。 メールプロバイダーが対応してくれます。

IMAP の設定方法

ほとんどのメールアプリは、アカウントを追加すると IMAP 設定を自動検出します。 ただし、たとえば自動設定が失敗した場合や、アプリで認識されない独自仕様、仕事用、またはあまり一般的ではないメールプロバイダーを使用している場合など、手動で設定する必要があるなら、次を試してください: 

受信サーバー(IMAP):メールプロバイダーの IMAP サーバーアドレス。 Gmail では imap.gmail.com です。 Outlook では imap-mail.outlook.com です。 プロバイダーのドキュメントを確認してください。

ポート:暗号化された IMAP(IMAPS)には 993 を使用します。こちらを使うべきです。 ポート 143 は暗号化されておらず、安全ではありません。

セキュリティ:SSL/TLS 暗号化。 暗号化されていない接続は使用しないでください。

送信サーバーSMTP):IMAP が扱うのはメールの受信のみです。 送信には引き続き SMTP が必要です。

Spark は Gmail、iCloud、Yahoo、Exchange、Outlook、Kerio Connect、およびその他の IMAP/EWS メールアカウントに対応しています。 アプリが適切な設定を検出し、手動設定なしで安全に接続します。 Sparkがそれらを自動的に検出できない場合は、追加設定を入力するためのウィンドウが表示されます。

IMAP を安全に使う

必ず暗号化を使用しましょう。 IMAPにおける最大のセキュリティ上の問題の1つは、デフォルトではクライアントからサーバーへログイン情報を平文で送信することです。つまり、ユーザー名とパスワードは暗号化されません。 認証情報を保護するために、TLS 上の IMAP(ポート 993)を設定してください。

サーバーの保存容量を管理しましょう。 IMAP はすべてをサーバー上に保持するため、メールボックスの容量は際限なく増える可能性があります。 不要な古いメールは削除し、容量が不足している場合は重要なメールをローカルにアーカイブしましょう。

アプリ固有のパスワードを使いましょう。 IMAP は本質的に多要素認証(MFA)と互換性があるわけではなく、この点が悪用されて MFA 要件を回避される可能性があります。 多くのメールプロバイダーでは、メインアカウントを MFA で保護したまま IMAP で使えるアプリ固有のパスワードを生成できます。

クライアントを常に最新の状態に保ちましょう。 セキュリティの脆弱性は定期的に修正されます。 古いメールクライアントはセキュリティリスクです。

ポート 143 を開放したままにしないでください。 ポート 143 は安全ではないため、外部からアクセス可能な状態で開放すべきではありません。犯罪者に悪用され、さまざまな攻撃のきっかけになるおそれがあります。 常にポート993の暗号化された接続を使用してください。

関連コンテンツ

関連用語

 

The Readdle Team
Spark

集中力を維持。スマートなメールアプリ。

高速かつクロスプラットフォームなメールアプリは、重要なことに集中できるように設計されています。