質問

2009年03月02日 12時02分
  • Sendmailで578ポートから送信する

情シスのオープンナレッジ『Syszo』サービス終了のお知らせ

質問

こんにちは、
是非とも皆様のお知恵をお貸しください。

現在、弊社では25番ポートをファイヤーウォールで閉じています。
今回、監視システムの導入にあたり、アラートメールを送信できる
ようにしたいのですが、25番をブロックしているので、アラートが
飛ばせない状況になっております。デフォルトですと監視サーバは
sendmailを使ってアラートメールを飛ばします。

そのためsendmailが587番を使ってメール送信するように設定を
変えたいのですが、完全に手詰まり状態です。

下記のサイトを参考にsendomail.mcやsubmit.mcを操作しており
ますが、まったくうまくいっておりません。どなたかこれで
うまくいったという事例をお知らせいただけませんでしょうか。

状況補足
・監視サーバの587番は空いている
 →nmap、chkconfig --listで確認済み
・メールサーバはホスティング。ホスティング先の587番は空いている 
 →telnetで587からログイン、メール送信可能

2件の回答があります

回答

OSは具体的にはなにですか?

一般的には
sendmail.mc ( /etc/mail ディレクトリに入っています)
ファイルを root で編集します。
1.
送信がポート587になるので、送信ポートを変更する。
m4マクロでいくと、
/etc/mail/sendmail.mcの以下を追加またはコメントを外す。

define(ESMTP_MAILER_ARGS’,TCP $h 587’)
define(SMTP_MAILER_ARGS’,TCP $h 587’)
define(RELAY_MAILER_ARGS’,TCP $h 587’)
または
define(ESMTP_MAILER_ARGS’,TCP 127.0.0.1 587’)
define(SMTP_MAILER_ARGS’,TCP 127.0.0.1 587’)
define(RELAY_MAILER_ARGS’,TCP 127.0.0.1 587’)

2.
受信ポート587にするなら、更に
DAEMONOPTIONS(`Port=587’)dnl
または
DAEMON
OPTIONS(`Port=submission, Name=MSA, M=Ea’)dnl
(先頭に dnl が無い)事
にする

3.
mcはそのままでは動かない、使われないので
m4 マクロ から、次のように m4 コマンドで sendmail.cf ファイルを生成します。
m4 /etc/mail/sendmail.mc > /etc/sendmail.cf

4.
その後、再起動する 

/sbin/service sendmail restart

・監視サーバの587番は空いている
・メールサーバはホスティング。ホスティング先の587番は空いている 
自分の587は当然送れますよね! 

telnet 外部 587

Trying xxxx
Connected to XXXX
などで確認
2はいらなそうなので Pass? 3をしてないのでは??

2009年03月02日 14時45分

回答

OS CentOS 5.2
sendmail Version 8.13.8

あまりに情報不足でした。

2009年03月02日 18時42分

あなたもコメントしましょう!