web-dev-qa-db-ja.com

軽量の送信SMTPサーバー

送信メールのみの軽量SMTPとして何を使用していますか?

たまにイベントが発生したときにSMTP経由で電子メールを送信するアプリを実行していますが、フル機能の電子メールサーバーは必要ありません。

編集:それが最良の選択であれば、私はpostfixのようなものを使用して(そして実際に)幸せです。私はもっ​​と単純なものがあるかもしれないと思っていました、それは箱を使い果たします。

49
FlappySocks

最小限のリレー専用メール転送エージェント(MTA、または「メールサーバー」)にはいくつかの選択肢があり、その一部は他の回答で言及されています。

これらのいずれかが機能するためには、メッセージをさらに中継する完全な本格的なMTA(「メールハブ」と呼ばれる)が必要であり、このメールハブを制御することを強くお勧めします。それ以外の場合、Bad Things™が発生する可能性があります。

24
user601

私見、これを行う最も簡単な方法はpostfixを使用することです。次のコマンドを使用して、光送信リレーとして構成できます。

postconf -e relayhost=other.mailserver.com
postconf -e myorigin=my.domainname.com

relayhostで指定されたSMTPサーバーが認証を必要としない限り、リレーを許可するか、これが機能する受信者アドレスの有効な宛先です。

myoriginパラメータはデフォルトのドメイン名になります。したがって、fooにメールを送信すると、foo @ my.domainname.comに送信されます。ユーザーbarから送信されるメールは、bar @ my.domainname.comから送信されます。

認証が必要で、TLSをサポートする必要がある場合は、次のコマンドも実行します。

postconf -e smtp_tls_security_level=may
postconf -e smtp_sasl_auth_enable=yes
postconf -e smtp_sasl_password_maps=pcre:/etc/postfix/sasl_password_maps

次に/etc/postfix/sasl_password_mapsこのコンテンツがあります:

/./ username:password

すべてのメールは、指定したユーザー名とパスワードでリレーホストに送信されます。

11
bahamat

Sendmail(8)のようにシェルから実行できるプログラムが必要だとすると、おそらく [〜#〜] msmtp [〜#〜] がニーズに合うでしょうか? sendmailと同じように、リモートSMTPサーバーに接続して、stdinとして取得したメールを送信できます。

[〜#〜] esmtp [〜#〜] は、アプリケーションで機能するリレー専用メール転送サーバーです。

4
moberley

あなたはあなたのニーズに適したsSMTPを見つけるかもしれません。これとその制限について 記事 をお読みください。

正直なところ、たとえメールを送信するためだけのものであっても、postfixやeximをインストールすることにあまりストレスを感じることはありません。

2
Evan

Dockerを使用する場合、 https://hub.docker.com/r/zixia/simple-mail-forwarder/ は簡単にデプロイするのに適していますまた、サイズは10MBのみで、smtp(tls)を完全にサポートしています。

2
Huan

あなたは技術的にあなたのホストに電子メールサーバーを必要としません、あなたが必要とする(そしておそらくすでに持っている)ものはあなたの会社のSMTPサーバーに接続することができるsmtp-クライアント(またはMUA)です。)

アプリ(およびそれが記述されたプログラミング言語)に応じて、アプリがネットワーク上の「the」SMTPサーバーに接続するためのさまざまな方法があります。

通常、PHPまたはPythonでは、「SMTP」サーバーを指定するためのアプリを含む構成ファイルがあります(ホストまたはネットワーク上の他の場所に配置できます)。)すでにメールがある場合ネットワーク上のサーバーの場合、構成をそのサーバーにポイントするだけです。

他のオプションが存在しない場合、アプリは次のようなもので処理できる標準出力に電子メールメッセージを生成できます。

listoftargets = "[email protected] [email protected]" echo "テストコンテンツ" | mail -s "Test Subject" $ listoftargets

一部のシステムでは、送信専用の最小限のメールサーバーがすでに存在します。

サムT.

1
samt