この記事では、Ubuntu Server 20.04または24.04を使用することを想定しています。
モチベーション
Sendmailは堅牢な信頼性で有名であり、WordOpsが推奨するメール転送エージェント(MTA)です。しかし、そのコンフィギュレーション、特に認証、暗号化、コンパイルなどのタスクは、熟練したシステム管理者であっても非常に複雑に思えるかもしれません。しかし、心配はいりません!ステップバイステップの明確な理解によって、これらのプロセスは実際にかなり管理しやすくなります。このセットアップをマスターする方法を探ってみよう!
代替案
Sendmailを置き換えるのであれば、Postfix、SSMTP、Nullmailerといった選択肢があります。しかし、WordPressを通してメールを送信するだけで、サーバーから送られてくる貴重な情報をすべて無視する必要がある場合は、以下のような選択肢があります、 FluentSMTP がおそらく最良の選択肢でしょう。ロギング機能などのためにSMTPプラグインが必要な場合は、サーバーに設定済みであるにもかかわらず、追加することができます。
センドメールのインストール
sendmailはWordOps Stackの一部であり、簡単にインストールできる:
wo stack install --sendmail
sudo apt install libsasl2-modules
APTでUbuntuにインストールすることもできる:
sudo apt update
sudo apt install sendmail
sudo apt install libsasl2-modules
インストール メールツール は必須ではありませんが、sendmailにシステムでの互換性を与えます:
sudo apt install mailutils
認証ファイルの作成
に認証情報用の新しいファイルを作成する。 /etc/mail/authinfoそして、次の行をファイルに追加する。 あなたのユーザー名 そして YOUR_API_KEY プロバイダによっては、1つのトークンをユーザー名とパスワードとして使用できるものもあります:
AuthInfo:smtp.youremailprovider.com "U:YOUR_USERNAME" "P:YOUR_API_KEY"
Sendmailは常に最も安全な方法を最初に選択するので、認証タイプを設定する必要はありません。
SMTPプロバイダを使用するようにsendmailを設定する
にあるsendmail設定ファイルを開く。 /etc/mail/sendmail.mc.まず、以下の行を変更して、送信メールに使用するドメインを設定します。 お名前.com を実際のドメインに置き換えてください:
Ubuntu 20.04
MASQUERADE_AS(`yourdomain.com')dnl
Ubuntu 24.04
新しいバージョンでは、sendmailはすべてのマスカレード設定を削除していますので、以下のように必要な設定をすべて追加する必要があります:
MASQUERADE_AS(`yourdomain.com')dnl
FEATURE(`masquerade_envelope')dnl
FEATURE(`masquerade_entire_domain')dnl
次に(どのバージョンでも)、以下の行を追加して、sendmailがSMTPリレーとしてプロバイダーを使用するように設定します。 メーラー定義交換 smtp.youremailprovider.com を実際のトランザクション電子メール・プロバイダーのSMTP URLに置き換えてください:
define(`SMART_HOST',`[smtp.postmarkapp.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo.db')dnl
データベースファイルの生成
保存後 認証情報 ファイルで、Sendmailが使用するデータベースファイルを生成します:
sudo makemap hash /etc/mail/authinfo < /etc/mail/authinfo
sendmailの設定を再構築する
Sendmailは、先ほど編集したファイルを含め、使用するマクロをすべてコンパイルする必要があります。構文エラーがあるとコンパイルに失敗するので、何度も確認してから実行してください:
sudo m4 /etc/mail/sendmail.mc | sudo tee /etc/mail/sendmail.cf
sendmailを再起動する
Sendmailサービスを再起動し、変更を適用します:
sudo service sendmail reload
メール送信のテスト
Sendmailの設定をテストするには、テスト・メールを送信すればよいのですが、プロバイダーによっては件名と本文が必要な場合があります。 test_email.txt 以下の内容で:
件名端末メール送信
メール内容1行目
メール内容2行目
このファイルをベースにしてメールを送信する:
センドメール レ*******@*****le.com < test_email.txt
交換 レ*******@*****le.com を実際のEメールアドレスで入力してください。
リソース
- https://docs.wordops.net/how-to/setup-sendmail-with-sendgrid/
- https://postmarkapp.com/support/article/792-is-sendmail-configurable-through-postmark
- https://sourcedaddy.com/networking/modifying-sendmail-mc.html
- https://stackoverflow.com/questions/57410259/how-to-send-an-email-using-sendmail-command-in-linux
コメントを残す