バージョン0.1.1、2026年9月30日。ダウンロード(94 KB)、SHA-256 4909ff8402b3244711bc13bac96cfc22810ee33d48f80885f87e44809572cdd0。インストール手順はこのページの末尾にあり、同じ内容がアーカイブ内のINSTALL.mdにも含まれています。ソースコード、テスト、リリースはGitHubにあります。
対象者
他社向けにcPanel & WHMサーバーを運用する企業向けです。rootとして一度インストールすると、選択したパッケージのcPanel » Emailに表示されます。Feature Managerで有効にするまでは、顧客側に新しい項目は表示されません。
これがない場合、メールがスパムに振り分けられる理由を知りたい顧客は、テストツールを探し、メールクライアントを開いて、手動でメールを送信する必要があります。これを導入すると、各メールボックスの横にテストボタンが表示されます。メールは実際にサーバーから送信され、そのサーバーのIP、HELO名、DKIM署名、経由するリレーが使用されます。
cPanelで顧客が利用できる機能
テスト
顧客はメールボックスを選び、標準のテストメール(英語の短い個人メールで、テキストパートとHTMLパートを含む)または独自のメッセージを送信します。独自のメッセージの場合は、件名、HTML、任意のプレーンテキスト版を貼り付けると、その内容がそのまま送信されます。Eximは、そのアカウントからの通常のメールと同じように送信します。約1分後、同じページに42件すべてのチェック結果が表示されます。対象は、SPF、DKIM、DMARCとアライメント、逆引きDNSとHELO、TLS、IPブロックリスト、SpamAssassinとRspamd、GmailとYahooが公開している送信者要件、メールの内容です。スコアは2種類あり、100点満点の技術スコアと、従来の0から10までのスコアです。
「メールプロバイダーでフォルダーを確認」はデフォルトで選択されています。有効にすると、メールのコピーが各テスト用メールボックスにも送信されます。Gmail、Outlook、Yahoo、GMX、Protonなど、14のプロバイダーに約30通を送信します。Gmailでは公開テスト用メールボックスを使用するため、誰でも件名、送信者名、振り分け先フォルダーを確認できます。表は最長30分かけて更新され、プロバイダーごとに受信トレイ、迷惑メール、プロモーションのどこに届いたかを表示します。プロバイダーがメールを受信前に拒否した場合は、その旨とサーバーの応答内容を表に表示します。SMTPコードを含む応答は、お使いのサーバー上にあるEximのログから取得されます。
スコアの下には修正する項目が表示されます。ドメインのDNSがお使いのサーバー上にある場合、cPanelはボタン操作でDKIM、SPF、DMARCを修正できます。プラグインは現在のレコードと変更後のレコードを表示し、変更前に確認を求めます。DNSが別の場所でホストされている場合、顧客にはコピーする正確なレコードが、名前、タイプ、値とともに表示されます。逆引きDNSとサーバー自体のAレコードは、値が入力された状態で、サーバー管理者向けの別グループに表示されます。チェックの数分後にEmail Spam Testerによる書面の対応計画が表示され、レコードを設定した後に「再チェック」を選ぶと、新しいメールが送信されます。
履歴
アカウントから送信したすべてのテストが新しい順に表示されます。日付、メールボックス、送信したメールの種類、両方のスコア、振り分け先フォルダーごとの件数を確認できます。グラフには、テストごとのスコアの推移が表示されます。各テストには、同じドメインの前回のテストから結果が変わったチェック項目が表示されます。たとえば、修正後にDKIMのチェックが失敗から合格に変わった場合、その内容が行内に表示されます。テストを開くと、そのレポートと、受信サーバーからの応答をプロバイダーごとに確認できます。各アカウントの直近200件のテストは、お使いのサーバー上に保存されます。
常時監視
メールボックスからのテストでは、そのメールボックスからメールがどのように送信されるかを確認できます。しかし、cPanelでよくある問題は別の場所にあります。WordPressサイトやお問い合わせフォームがエンベロープ送信者user@hostnameで送信すると、SPFアライメントが崩れます。この問題は、メールボックスからのテストでは検出できません。監視機能なら検出できます。
監視機能が作成する非表示のコピーは、元のメールと同じ経路を通り、同じIP、同じHELO、同じDKIM署名でお使いのサーバーから送信されます。Eximは監視対象ドメインが送信するメールごとにコピーを作成し、そのドメイン専用の非公開アドレスへ配信します。そのため、レポートには実際の送信経路が反映され、元のメールは変更されることなく受信者に届きます。
監視タブには、ドメインのメールがフィード形式で表示されます。各メールには、受信者のドメイン(アドレスは表示されません)、送信元、失敗した項目が表示されます。送信元には、ウェブメール、メールクライアント、PHPまたはWordPress、sendmailを呼び出すスクリプトがあります。フィードの上には、過去24時間の1行の概要とアラートが表示されます。アラートの対象は、DKIMが合格しなくなった場合、特定の送信元でSPFまたはDMARCが失敗した場合、送信元IPがブロックリストに登録された場合、受信サーバーがメールを拒否した場合です。各メールを開くと、チェック項目の技術レポートが表示されます(メールのヘッダーは含まれません)。顧客は、そのメールに対するAIの対応計画を依頼できます。
管理者がサーバー上で許可するまで、監視機能は無効です。許可後、各顧客が自分のドメインごとに監視機能を有効にします。
WHMで利用できる機能
WHM » Plugins » Email Spam Testerは、1つのページで構成されています。
- このサーバーを登録します。 登録するまでテストは実行できません。登録時には、サーバーのホスト名、cPanelのバージョン、プラグインのバージョン、アカウント数、および入力した場合はメールアドレスが送信されます。返されたキーは、rootだけが読み取れるファイルに保存されます。
- 1日あたりの上限を、アカウントごとのテスト数(デフォルトは20件)とサーバーごとのテスト数(500件)に設定します。これに加えて、APIにもインストール環境ごとの上限があります。
- 利用できるユーザー。 初回インストール時に、すべての機能リストで
email_spam_tester機能が無効になります。利用を許可する機能リストについて、WHM » Packages » Feature Managerで有効にします。アップグレードしても、この設定は変更されません。 - 常時監視。 "Allow constant monitoring on this server"を有効にすると、稼働中のExim設定を確認し、Eximの2つの送信ブロックにカスタムACLを1つ追加し、カスタムシステムフィルターオプションを1つ追加してから、Eximを再構築して再起動します。いずれかの手順が失敗した場合は、追加したすべての設定を削除します。このルールは、Eximの再構築やcPanelの更新後も維持されます。スイッチの横には、ドメインごとの1時間あたりのコピー数(20件)、サーバーごとの1時間あたりのコピー数(2,000件)、アカウントごとの監視対象ドメイン数(20件)、アカウントごとの1日あたりのAIプラン数(10件)という上限があります。"Disable monitoring on the whole server"を選択すると、同じ方法でルールが削除されます。
料金
現在は無料で、監視も含まれています。email-spam-tester.comではアカウントを作成する必要はなく、現時点で支払いも必要ありません。今後変更される場合は、まず変更履歴でお知らせします。
データとプライバシー
サーバーから送信されるデータ:
- 登録時には、上記のWHMの項目に記載された情報。
- 各テストでは、受信者が受け取る形式のメール本文と、サーバーのIPアドレスおよびホスト名を含む、Eximが追加したヘッダー。アカウントについて当方が把握するのは、アカウント名の鍵付きハッシュのみです。
- 監視では、メールのコピー。
テストレポートはサイト上のものと同じ仕組みです。レポートはそのリンク先に残り、リンクを知っている人なら誰でも、件名と送信者を含めて開くことができます。メール自体は、チェックの実行後、受信から1時間で削除されます。それまでは、リンクを知っている人なら誰でも全文を読むことができます。前述のとおり、受信フォルダチェックのGmail部分も公開されるため、機密メールはこのチェックを使用せずにテストすることを推奨します。
監視用のコピーは実際のメールであり、そのレポートは非公開です。インストールキーを使用して開けるのは、サーバー上のプラグインだけです。公開リンクはありません。コピーは受信から2日後に削除され、そのレポートは90日後に削除されます。履歴と監視フィードはサーバー上に残ります。
完全なポリシーについては、プライバシーページを確認してください。
ホスティングプロバイダーからよくある質問
DNSは自動的に変更されますか?
いいえ。レコードが変更されるのは、顧客が検出結果の横にあるボタンを押し、変更前と変更後の内容を確認した場合だけです。また、サーバーがそのドメインのDNSをホストしている場合に限られます。SPFとDMARCのボタンは、不足しているレコードを作成するだけです。既存のレコードがある場合は、顧客が手動でコピーできるようにマージ後の内容が表示され、ボタンで既存のレコードが置き換えられることはありません。DKIMボタンでは、サーバーのキーと一致しないレコードを置き換えられますが、対象のレコードが1つだけの場合に限られます。すべての変更はアカウントのログと、rootだけが編集できる /var/cpanel/email_spam_tester/ 内のログに記録されます。変更前にDNSが提供していたレコードも一緒に記録されます。
サーバーは送信メールをスマートホスト経由でリレーしています。それでも動作しますか?
動作するはずですが、スマートホスト経由ではまだテストしていません。テストメールは、そのアカウントの他のメールと同じ経路で送信されます。そのため、レポートにはリレーのIPと名前が表示されます。受信側から見えるのがその情報だからです。リレーの逆引きDNSを修正したり、ブロックリストから解除したりする作業は、リレーの運用者が行う必要があります。ただし、1つ失われる情報があります。プロバイダーがメールを拒否した理由はサーバー上のEximログから取得しますが、リレーを使用している場合、そのログにあるのはリレーからの応答だけです。リレーが受け付けた後でプロバイダーに拒否されたメールは、「未受信」と表示される場合があります。監視用のコピーもリレー経由で送信されます。
監視は到達率に影響しますか?
顧客のメールは変更されず、これまでどおり送信されます。コピーは当サービスのアドレスに別の配信として送られるため、受信者には何も見えません。ただし、1時間あたりの送信上限には影響します。各コピーはドメインの「max emails per hour」に対して1通としてカウントされます。そのため、上限に近いドメインでは、デフォルト設定の場合、1時間あたり最大20通早く上限に達します。1時間のコピー数がこの件数を超えると、それ以降のメールはコピーなしで送信されます。
フォルダーチェックも1時間あたりの上限にカウントされますか?
はい。約30通のメールを送信します。開始前に、プラグインはその時間内にドメインがあと何通送信できるかを確認し、不足している場合は顧客に通知します。
実環境でテスト済みの範囲はどこまでですか?
cPanel & WHM 134以降をサポートしています。これまでに、Ubuntu 24.04上の138(11.138)で実環境テストを行いました。テスト範囲には、インストールとアップグレード、登録、機能の切り替え、フォルダーチェックありとなしのテスト、履歴、4つすべての送信元からのメール監視が含まれます。まだ実環境でテストしていないのは、その他のオペレーティングシステム、CageFSを使用するCloudLinux、DKIM、SPF、DMARCの各ボタン(テストサーバーのDNSが別の場所でホストされているため)、スマートホスト経由でリレーするサーバー、サーバー全体の監視を無効にする操作です。最後の項目はドライランだけ実施しています。これらの環境のいずれかでプラグインを実行した場合は、結果をお知らせください。
インストール手順
このガイドは、サーバーのroot権限があり、WHMプラグインをこれまで使用したことがないことを前提としています。以下のコマンドはすべて、そのままコピーして貼り付けられます。
1. 必要なもの
- サーバーへのroot SSHアクセス。
- Jupiterテーマを使用するcPanel & WHM 134以降。
- AlmaLinux、Rocky Linux、CloudLinux、またはUbuntu 24.04。現時点でプラグインの実環境テストが完了しているのは、Ubuntu 24.04上のcPanel & WHM 138(11.138)のみです。
- サーバーからのメールが
t.email-spam-tester.comに到達できるように、送信ポート25が開いていること。多くのVPSプロバイダーではデフォルトでブロックされています。代わりにリレー(スマートホスト)も使用できるはずですが、まだテストされていません。 email-spam-tester.comへの送信HTTPS通信。
インストール前に両方の接続を確認できます。最初のコマンドでは220で始まる行が表示され、2番目では200が表示される必要があります。
timeout 10 bash -c 'exec 3<>/dev/tcp/t.email-spam-tester.com/25 && head -1 <&3'
curl -s -o /dev/null -w '%{http_code}\n' https://email-spam-tester.com/health
2. インストール
rootとしてSSHでログインし、以下のコマンドを1つずつ実行します。
プラグインを配置するrootのホームディレクトリに移動します。
cd /root
アーカイブとそのチェックサムをダウンロードします。正常に完了した場合、何も表示されません。
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256
ダウンロードしたファイルが破損していないことを確認します。latest.tar.gz: OKと表示される必要があります。FAILEDと表示された場合は、再度ダウンロードし、先に進まないでください。
sha256sum -c latest.tar.gz.sha256
/root/email-spam-tester-cpanelに展開します。ここでも何も表示されません。
mkdir -p email-spam-tester-cpanel
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1
インストーラーを実行します。最初にすべてのファイルを確認し、その後、所定の場所にコピーします。
cd /root/email-spam-tester-cpanel && ./install.sh
Checking Perl syntax…、Root module…、cPanel pages…、cPanel独自のプラグインインストーラーからの数行、Switching the feature off in all feature lists…、WHM page…が表示される必要があります。最後の行は次のようになります。
Installed. Next: WHM » Plugins » Email Spam Tester » Register this server.
Customers do not see it yet: turn on email_spam_tester in WHM » Feature Manager
for the feature lists (packages) that should have it.
/root/email-spam-tester-cpanelディレクトリは削除しないでください。アップグレードとuninstall.shはこのディレクトリから実行します。
3. WHMでサーバーを登録
- rootとしてWHMにログインします。
- 左側のメニューでPluginsを開き、Email Spam Testerをクリックします。
- Registrationボックスには「Not registered」と表示されます。その下にある管理者メールアドレス欄は任意です。
- Register this serverをクリックします。
ページ上部に「Registered. Installation #…」という緑色の行が表示され、ボックスにはStatus: Registered、インストール番号、キーの先頭部分が表示されます。登録時には、サーバーのホスト名、cPanelのバージョン、プラグインのバージョン、アカウント数、入力した場合はメールアドレスが送信されます。キーは/var/cpanel/email_spam_tester/config.jsonに保存され、rootだけが読み取れます。
同じページで1日あたりの上限を変更できます。デフォルトでは、アカウントごとに20件、サーバー全体で500件です。
4. 顧客向けに有効化
インストール直後は、誰にもプラグインが表示されません。どのパッケージで使用可能にするかを選択します。
- パッケージが使用している機能リストを確認します。WHM » Packages » Edit a Packageを開き、パッケージを選択して、Feature Listフィールドを確認します。多くのサーバーでは
defaultです。 - WHM » Packages » Feature Managerを開きます。
- Manage feature listでそのリストを選択し、Editをクリックします。
- リスト内でEmail Spam Testerを探し、チェックボックスをオンにしてSaveをクリックします。リストが長い場合は、ブラウザーの検索機能が役立ちます。
- 使用可能にするすべての機能リストで同じ操作を繰り返します。
これで、該当するパッケージを使用している顧客には、cPanelのEmailセクションにEmail Spam Testerが表示されます。後で作成する機能リストでも忘れずに有効にしてください。
5. 顧客として最初のテストを送信
該当する顧客の1人としてcPanelにログインします。WHMでは、Account Information » List Accountsを開き、アカウントの横にあるcPanelアイコンを使用できます。
- Email » Email Spam Testerを開きます。ページにはTest、History、Monitoringの3つのタブがあります。
- Testタブでメールボックスを選択します。アカウントにメールボックスがない場合は、先にEmail » Email Accountsで作成します。
- Standard test emailを選択したままにし、Check the folder at email providersもオンのままにします。
- Send testをクリックします。
ページには、DNSレコードの確認、送信、メール到着の待機など、現在実行中の処理が表示されます。約1分後にレポートが表示されます。100点満点の技術スコアと、従来の0から10のスコアの2つがあり、その下にWhat to fixがあります。このリストには、このサーバー上でcPanelがレコードを修正できる場合のボタン、DNSが別の場所でホストされている場合にコピーする正確なレコード、サーバー管理者向けの逆引きDNS値が表示されます。その下にすべてのチェック結果が続きます。Where the email landedには、その後30分かけて、各メールプロバイダーでのInbox、Spam、Promotionsの結果と、メールが拒否された場合はプロバイダーからの応答が表示されます。チェック完了から数分後に、文章形式の対応計画が追加されます。
フォルダー確認では約30通のメールが送信されます。ドメインの1時間あたりの送信上限に十分な余裕がない場合、メールを送信する前にページにその旨が表示されます。
6. 常時監視(任意)
ドメインで監視を有効にすると、Eximはそのドメインから送信されるすべてのメールの非表示コピーをEmail Spam Testerの専用アドレスに送信し、顧客は各メールの技術レポートを確認できます。受信者には何も表示されません。各コピーはドメインの1時間あたりの送信上限に1通としてカウントされ、デフォルトでは1時間あたり最大20通です。
- WHM » Plugins » Email Spam TesterでConstant monitoringボックスを探し、Allow constant monitoring on this serverをクリックします。プラグインはExim設定を確認してルールを追加し、Eximを再構築して再起動します。いずれかの手順に失敗した場合は、すべてを元に戻します。正常に完了すると、「Constant monitoring is allowed on this server: the Exim rule is in, Exim was rebuilt and restarted.」と表示され、ボックス内のルールがActiveになります。
- 顧客はcPanelでMonitoringタブを開き、ドメインの横にあるTurn onをクリックして確認します。それ以降に送信されたメールは、1分から2分以内にタブに表示されます。
サーバー全体で停止するには、同じボックス内のDisable monitoring on the whole serverをクリックします。
7. アップグレード
新しいバージョンをダウンロードして古いバージョンの上に展開し、インストーラーを再度実行します。
cd /root
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256
sha256sum -c latest.tar.gz.sha256
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1
cd /root/email-spam-tester-cpanel && ./install.sh
最後に「Updated. The registration, limits and feature settings are unchanged.」と表示される必要があります。監視が許可されている場合、インストーラーはEximルールも最新の状態に更新します。
8. アンインストール
cd /root/email-spam-tester-cpanel && ./uninstall.sh
これにより、Eximから監視ルールが削除され、すべてのドメインで監視が無効になり、cPanelとWHMからプラグインが削除されます。最後に「Removed. The key is kept in /var/cpanel/email_spam_tester (use --purge to delete it).」と表示されます。キーも削除するには、代わりに./uninstall.sh --purgeを実行します。
顧客がプラグインのボタンを使用して作成したものを含め、DNSレコードが変更されることはありません。
9. 問題が発生した場合
顧客にアイコンが表示されない。 顧客のパッケージの機能リストで、この機能が無効になっています。手順4をもう一度実行し、パッケージが実際に使用している機能リストを確認してください。
ページに「The server administrator has not activated Email Spam Tester in WHM yet」と表示される。 サーバーが登録されていません。手順3を実行してください。
登録に失敗する。 WHMページ上部の赤いメッセージに理由が表示されます。多くの場合、サーバーがHTTPS経由でemail-spam-tester.comに接続できないことが原因です。手順1のcurl確認を実行してください。200が表示される必要があります。また、送信トラフィックに対するファイアウォールルールも確認してください。
テストに「The message has not arrived in 3 minutes」と表示される。 メールがキューに滞留しているか、拒否されています。手順1のポート25確認を実行してください。何も表示されない場合やタイムアウトする場合、プロバイダーが送信ポート25をブロックしています。プロバイダーにポートを開放するよう依頼するか、リレー経由でメールを送信してください。Eximがメールをどのように処理したかを確認するには、次を実行します。
grep 't.email-spam-tester.com' /var/log/exim_mainlog | tail -5
顧客は、メールボックスのEmail » Track Deliveryでも確認できます。
cpanel.<domain>上のページで502エラーが発生することがある。 これはcPanelのサービスサブドメインに対するApacheのプロキシが原因で、このプラグインだけでなく、すべてのcPanelページに影響します。直接アドレスhttps://<domain>:2083は影響を受けません。修正するには、WHM » Service Configuration » Apache Configuration » Include Editorを開き、すべてのバージョンに対してPre VirtualHost Includeを選択し、次の行を追加して保存します。
<IfModule setenvif_module>
SetEnvIfNoCase Host "^(cpanel|webmail|whm|webdisk|cpcalendars|cpcontacts)\." proxy-nokeepalive=1 proxy-initial-not-pooled=1
</IfModule>
その後、適用します。
apachectl configtest && /scripts/rebuildhttpdconf && /scripts/restartsrv_httpd
10. サポート
hi@email-spam-tester.comまでメールで連絡してください。インストールに失敗した場合は./install.shの出力を、テスト結果に問題があると思われる場合はレポートのリンクを含めてください。プラグインの詳細はhttps://email-spam-tester.com/cpanel-integration/にあります。