- Hetznerで、スパムメールを送信しないSMTPサーバーを設定する方法を教えてください。
- 提案されたアーキテクチャと初期検討事項
- 送信サーバー(Hetzner)の準備手順
- DKIM、SPF、DMARC — DNS設定
- 別のサーバーでメールを受信し、バウンスメールを管理する
- スパム対策 ― ベストプラクティス
- 送信レートとキューを制御し、悪評を防ぐ
- 配信可能性を確認するためのテストとツール
- 完全なプロセス例:アプリケーションAからHetznerを中継器として使用して送信する
- 追加の安全および操作上のヒント
- 自動化におすすめのオープンソースツール(無料)
- 会社サービスへのリンク(85以上の拠点とサービス)
- 最後のポイント
Hetznerで、スパムメールを送信しないSMTPサーバーを設定する方法を教えてください。
このガイドでは、Hetznerクラウドサーバー上でSMTPを実装してメールを送信し、受信メールを別のサーバーにマッピングする方法をステップバイステップで説明します。また、重要なDNS設定(SPF、DKIM、DMARC、PTR)、認証(SASL/TLS)、バウンスメールと購読解除の管理、ブラックリスト登録を回避するための実践的な推奨事項についても解説します。.
提案されたアーキテクチャと初期検討事項
提案されたアーキテクチャ:
- 送信サーバー(Hetzner Cloud):インストール 接尾辞 + OpenDKIM + OpenDMARC + TLS — メール送信(SMTPリレー)を担当します。.
- 受信サーバー(例:VPSまたはホスティング):MXレコードはこのサーバーを指し、受信メッセージ(POP/IMAP/Dovecotまたはメールサービス)の配信と受信を担当します。.
- バウンスメールと購読解除メール用メールボックス:バウンスメールは専用のアドレスに送信され、そのメールボックスは受信サーバーによって処理されます。.
- ユーザー/アプリケーション: 使用方法 SMTP認証 (またはIPベースの認証)Hetznerサーバーで認証を行い、リレーを許可される。.
送信サーバー(Hetzner)の準備手順
基本パッケージのインストール(Debian/Ubuntu)
Ubuntu/Debianの例:
sudo apt update
sudo apt install -y postfix dovecot-core dovecot-imapd opendkim opendkim-tools opendmarc certbot postfix-policyd-spf-python rspamdホスト名とPTRの設定
転送サーバーにホスト名を設定し、Hetznerの管理画面で逆引きDNSを登録する必要があります。.
sudo hostnamectl set-hostname mail.example.comPostfixの設定に関するヒント: 額 私のホスト名 それをmail.example.comに設定し、Hetznerパネルの逆引きIPアドレス欄にmail.example.comと入力してください。.
Let's EncryptでTLSを設定する
証明書の発行とPostfix設定での参照:
sudo certbot certonly --standalone -d mail.example.comで main.cf 以下の値を追加してください。
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem
smtpd_use_tls = yes
smtp_tls_security_level = may
smtpd_tls_security_level = mayPostfixの基本設定(main.cf抜粋)
重要な設定の選択 main.cf:
myhostname = mail.example.com
myorigin = /etc/mailname
mydestination = localhost
relay_domains =
mynetworks = 127.0.0.0/8
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtpd_tls_auth_only = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
smtpd_helo_required = yes説明: 認証されていない宛先を拒否する サーバーがオープンリレーとして使用されるのを防ぎます。許可されたユーザーまたは既知のマシンのみがリレーできます。.
DovecotでSASLを有効にする(送信ユーザーを認証するため)
ファイル内 /etc/dovecot/conf.d/10-master.conf セクション サービス認証 次のように設定してください。
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
}認証には、ローカルのpasswd、SQLデータベース、またはLDAPを使用できます。その後、サービスを再起動してください。
sudo systemctl restart dovecot postfixDKIM、SPF、DMARC — DNS設定
OpenDKIMを使用してDKIMキーを生成する
送信サーバー上でDKIMキーを作成する例:
sudo mkdir /etc/opendkim/keys/example.com
sudo opendkim-genkey -b 2048 -d example.com -s mail -D /etc/opendkim/keys/example.comファイル メール.txt 生成済み。DNSに追加されるTXTレコードの内容:セレクター = メール → mail._domainkey.example.com.
サンプル設定 /etc/opendkim.conf (抜粋):
Domain example.com
KeyFile /etc/opendkim/keys/example.com/mail.private
Selector mail
AutoRestart yes
Socket local:/var/spool/postfix/opendkim/opendkim.sockそして /etc/postfix/main.cf 追加:
milter_default_action = accept
smtpd_milters = unix:/var/spool/postfix/opendkim/opendkim.sock
non_smtpd_milters = $smtpd_miltersSPFレコード
サンプルドメインのDNS設定:
example.com. IN TXT "v=spf1 ip4:YOUR_HETZNER_IP include:spf.protection.example ?all"より厳密に言えば:
"v=spf1 ip4:YOUR_HETZNER_IP -all"おすすめ: 初めに ~すべて または ?全て 初期段階での不具合によって完全に却下されることがないように、まずは初期段階での不具合を許容し、その後はより厳格な審査を行うようにしましょう。.
DMARCレコード
DNSにおけるDMARCの例:
_dmarc.example.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100; adkim=s; aspf=s"注記: まず、 p=なし それでは報告書を見てみましょう。 p=検疫 または p=拒否 活性化。.
別のサーバーでメールを受信し、バウンスメールを管理する
MXレコードの受信設定方法
DNSにおけるMXレコードの例:
example.com. IN MX 10 mail-receive.example.org注:MXレコードは受信サーバーを指している必要があります。送信者は送信メールにHetznerを使用しているため、送信ドメインに対してSPF/DKIMレコードを設定する必要があります。.
リターンパスの設定とバウンス管理
いくつか重要な点があります。
- Return-Path はリターンを処理するために具体的に指定する必要があります。専用のサブドメインを指すのが最適です。 bounce.example.com 指摘してください。.
- VERPはあらゆるメールに使用できます。
envelope-from="[email protected]"収益率をより正確に算出するため。.
バウンスメールの処理 — 推奨される手順:
- 住所
[email protected]それを作成し、そのMXレコードを、それを処理するサーバーに向けます。. - そのサーバーは フェッチメール / getmail または、IMAPメールボックスを直接取得し、バウンス処理スクリプトを使用してアクションを実行する。.
- バウンスを解析するには、次のようなツールを使用できます。 フランカー または メール::配信::バウンスパーサー 使用。.
flankerを使用したバウンス処理の例(Python)
初回インストール:
pip install flanker簡単なスクリプト例(標準入力からの読み込みと処理):
from flanker import mime
from flanker.utils import bounces
import sys
raw = sys.stdin.read()
msg = mime.from_string(raw)
bounce = bounces.parse(raw)
# classify and store bounce info in database or suppression listカテゴリー別 激しく跳ね返る (5xxエラー) 柔らかい反発力 (4xx)削除ポリシーまたは再試行ポリシーを適用できます。.
スパム対策 ― ベストプラクティス
技術設定
- PTR 調和する
私のホスト名そしてAは記録です。. - SPF、 DKIM、 DMARC 有効化してDKIM署名を行う。.
- HELO/SMTPバナーはホスト名と一致します。.
- TLSが有効で、
smtpd_tls_auth_only = yes暗号化されていない通信を防止するため。. - 履歴に問題のあるIPアドレスは避け、適切なrDNSを使用してください。.
コンテンツポリシーとリスト
- 常にから ダブルオプトイン メールリストに使用します。.
- すべてのメールには、シンプルで分かりやすい購読解除リンクをヘッダーに含めてください。
リスト登録解除使用:
List-Unsubscribe: <mailto:[email protected]>, <https://example.com/unsubscribe?email=...>- IPウォームアップ:初日は少量を送信し、徐々に増やしていく。.
- バウンス率や苦情率が高いアドレスを削除またはタグ付けする。.
- 欧州のユーザー向けに、CAN-SPAM法やGDPRなどの法律を遵守しています。.
送信レートとキューを制御し、悪評を防ぐ
Postfixの同時実行数と宛先遅延制限設定:
postconf -e "smtp_destination_concurrency_limit = 20"
postconf -e "smtp_destination_rate_delay = 1s"ポリシーデーモンよりも複雑なポリシーの場合 ポストフォワード、 ポリシー または rspamd 使用。.
Postfixコマンドによるキュー管理:
postqueue -p
postsuper -d ALLDeferred配信可能性を確認するためのテストとツール
- SMTPをテストするには スワック 使用:
swaks --to [email protected] --from [email protected] --server mail.example.com --auth LOGIN --auth-user smtpuser --auth-password smtppass --tls- ヘッダーをチェック mail-tester.com そして MXToolbox ブラックリストとSPF/DKIM/DMARCをチェックします。.
- ログの監視には以下を使用します。
tail -f /var/log/mail.logDMARCレポートを値に基づいて分析する ルア そして ルフ 配送上の問題点を見つけるのに役立ちます。.
完全なプロセス例:アプリケーションAからHetznerを中継器として使用して送信する
- アプリケーションAから
mail.example.com:587ユーザーと接続しますsmtp_userパスワードが渡され、認証が実行されます。. - 検証後、Hetznerサーバーはメールを出力し、DKIM署名を行います。SPFとPTRも設定されます。.
- 返送された場合は、
[email protected]が送信されます。バウンス用のMXレコードは、解析を行うサーバーを指しています。. - アプリケーションは抑制リストを読み取り、ハードバウンスが発生した場合にそのアドレスを無効にします。.
追加の安全および操作上のヒント
- サーバー上で送信ポート25が開いていることを確認してください(Hetznerはネットワーク制限を設けている場合があります)。.
- 不正利用を防ぐため、認証は必須とするべきであり、サーバーをオープンリレーとして運用してはならない。.
- ログを監視システム(ELK/Graylogなど)に送信して、送信スパイクやエラー応答を分析します。.
- 送信量が多い場合は、専用IPアドレスを使用し、そのIPアドレスを徐々にウォームアップしてください。.
自動化におすすめのオープンソースツール(無料)
- Postfix (SMTP)
- ダブコット(SASL/IMAP)
- OpenDKIM / OpenDMARC
- フィルタリングとスコアリングのためのRspamd
- バウンスメールを取得するには、fetchmail / getmail を使用します。
- バウンス処理には、flanker または Mail::Delivery::BounceParser を使用する。
- 価格設定とポリシーについては、postfwd / policyd を参照してください。
会社サービスへのリンク(85以上の拠点とサービス)
広範なネットワークアクセスと多様な拠点を備えたインフラストラクチャをお探しの場合は、適切なサービスを利用して、ユーザーに最も近いデータセンターを選択することで、遅延を削減し、配信性を向上させることができます。.
- より多い 85か所 データセンター選定のための世界。.
- メールマーケティングおよびSMTPサービス専用のIPアドレスを備えた高性能クラウドサーバー。.
- アンチDDoSサーバー、各種VPS、ネットワークおよびセキュリティ構成のサポート。.
最後のポイント
ご利用開始の準備が整いましたら、クラウドサーバープラン、専用IPアドレス、DNSおよびセキュリティ管理サービスについてご確認ください。また、カスタム構成、DKIM/DMARCの実装、バウンス管理については、技術チームまでお問い合わせください。サポートチームが技術的なガイダンスと支援を提供いたします。.









