現状1台で動作しているメールサーバーと(sendmail)、WEB(Apache)サーバーを分けたいのですが、上手くできません。
■ルーター:WebCaster V110
■利用機器:DELL PowerEdge SC430 x2
■グローバルIP:固定
同じ設定のサーバーをもう1つ作り、192.168.1.3として、
ルーターのNAPT設定で、
WAN側ポート: 80>>>LAN側ポート 192.168.1.2: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.2: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.2:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.2: 25
を、
WAN側ポート: 80>>>LAN側ポート 192.168.1.2: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.3: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.3:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.3: 25
とすると、一応分けて動作したんですが、ホームページ(192.168.1.2)で使用しているお問い合わせフォーム(mb_send_mail関数で作成?)が使用できなくなってしまいました。
問題はお問い合わせフォームだけなので、192.168.1.2の方には110と25以外のポートを指示するだけで、いけそうだなと思い、調べたんですが、なかなか引っかかりません。
以上、説明不足があるかもしれませんが、よろしくお願いします。
No.5ベストアンサー
- 回答日時:
かえって混乱させてしまったようで申し訳ないです。
>define(`SMART_HOST', `smtp:[192.168.1.3]')dnl
というのを書き込んでみましたが、192.168.1.3には転送されませんでした。
まず、SMART_HOSTは「自分のマシン以外宛のメールを送る」ホストの指定なので、ローカル配信してしまう部分を直さないと意味がありません。
>また[ローカルで配信すべきアドレスではないという設定]にするため~
おそらく「エラーが戻ってきた」という時点で、192.168.1.2は外へ配信しようとしていると思われるので、一歩前進です。
これはSMART_HOSTをつけた後ですか? 前ですか?
エラーとなって戻ってきたメール(および両方のサーバのmaillog)から、どのようなエラーが起きているかを調べるのがキモです。
・送り先サーバへの接続に失敗している。(どのアドレスに接続しようとしているか?)
・192.168.1.3へ送ろうとしたが(192.168.1.3のsendmailが拒否したのか/それ以前のiptablesなどが拒否したのか/そのた)。
・どこへ送っていいかわからなかった(hoge.co.jpのMXがわからなかった)とか。
など。
>そして[192.168.1.2から直接外へ配信したいなら]もよく理解できなくなってしまいました。
これは一時忘れてください。
>とroot宛てのメールをyahooのWEBメールに転送するようにしてみると、ちゃんと届いていたんです
これはSMART_HOSTをつけた後ですか? 前ですか?
いずれにせよ、まず解決するところは192.168.1.2->192.168.1.3への送信なので、以下を試してみてください。
[192.168.1.2]で
○ 「dig mx hoge.co.jp」コマンドで、ちゃんとMXが引けているか。192.168.1.3に向いているか。(もしグローバルIPアドレスが返ってきたら・・・ ^^);
○ 「telnet 192.168.1.3 25」コマンドで、ちゃんと返事が返ってくるか(繋がったら「quit」で切断してください)。正常なら220から始まる応答が返ってきます。
この回答への補足
申し訳ないですなんてめっそうもありません。こちらこそ何度もお手数おかけして申し訳ないです。
>>とroot宛てのメールをyahooのWEBメールに転送するようにしてみると、ちゃんと届いていたんです
>これはSMART_HOSTをつけた後ですか? 前ですか?
SMART_HOSTを設定しなくても送ることができました。
>>おそらく「エラーが戻ってきた」という時点で、192.168.1.2は外へ配信しようとしていると思われるので、一歩前進です。
>これはSMART_HOSTをつけた後ですか? 前ですか?
sendmail.mcの
define(`SMART_HOST', `smtp:[192.168.1.3]')dnl を
#cd /etc/mail
#make
でsendmail.cfに反映して、sendmail再起動。お問い合わせフォームから送信してみましたが、192.168.1.2の /var/mail/送り先ユーザーのスプールファイルに入ってきました。そして、[ローカルで配信すべきアドレスではないという設定]にするため、 local-host-namesから@hoge.co.jpを削除すると、/var/mail/rootにエラー送信されるようになりました。
root宛のメールをみると
///////////////////////////////////////////////////////
The original message was received at Wed, 6 Dec 2006 20:56:41 +0900
from apache@localhost
----- The following addresses had permanent fatal errors -----
info@hoge.co.jp
(reason: 550 5.1.1 <info@hoge.co.jp>... User unknown)
(expanded from: info@hoge.co.jp)
----- Transcript of session follows -----
... while talking to [127.0.0.1]:
>>> DATA
<<< 550 5.1.1 <info@hoge.co.jp>... User unknown
550 5.1.1 info@hoge.co.jp... User unknown
<<< 503 5.0.0 Need RCPT (recipient)
///////////////////////////////////////////////////////
でした。ローカルに送ってドメインを認識できなかっただけでしょうか?
○ 「dig mx hoge.co.jp」コマンドで、ちゃんとMXが引けているか。
早速、ためさせていただきました。
///////////////////////////////////////////////////////
; <<>> DiG 9.3.1 <<>> mx hoge.co.jp
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15076
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;hoge.co.jp. IN MX
;; AUTHORITY SECTION:
hoge.co.jp. 7200 IN SOA ns2.zoneedit.com. soacontact.zon eedit.com. 1149728924 14400 7200 950400 7200
;; Query time: 206 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Fri Dec 8 12:48:31 2006
;; MSG SIZE rcvd: 95
///////////////////////////////////////////////////////
○ 「telnet 192.168.1.3 25」コマンドで、ちゃんと返事が返ってくるか
220 localhost.localdomain ESMTP Sendmail 8.13.7/8.13.7; Fri, 8 Dec 2006 12:55:57 +0900
220から始まる応答がかえってきました。
これはDNSサーバーがいけないんでしょうか?
最初NAPTでポート指定したときに、ポート53を架空のアドレスに振っても、WEBは機能したのでNAPTで強制的に決めるとおもっていたんですが。;
またお手数おかけして申し訳ないですが、よろしくお願いします。
先日、
新たに買ったアスキーの『すっきりわかったDNS&メール』を読んで解決しました。
あと、
/etc/mail/sendmail.mc
////////////////////////////////////////////////////
(最終行に追加)
define(`SMART_HOST',`smtp:[192.168.1.3]')dnl
////////////////////////////////////////////////////
と
/etc/mail/mailertable
////////////////////////////////////////////////////
hoge.com esmtp:[192.168.1.3]
.hoge.com esmtp:[192.168.1.3]
////////////////////////////////////////////////////
でいけました。ありがとうございました。
No.4
- 回答日時:
ログを見てもやはりwebサーバがローカルに配信しちゃってますね。
sendmail.cfなり/etc/hostsなりを変更して、@hoge.co.jp はローカルで配信すべきアドレスではないという設定にしないと192.168.1.3には配信されません。
別の手法として、ちょっとトリッキー(というかこの場合あまり良い方法ではないかも)ですが、メールのディレクトリをNFSで共有してしまう方法もあります。
また192.168.1.2から直接外へ配信したいなら、sendmail.cfのDS(sendmail.mcだとSMART HOST)を192.168.1.3へ向けるのが良いでしょう。
この回答への補足
またまたお返事ありがとうございます。
あれから色々調べたり試したりしたんですが、なにぶん始めたばかりでよくわからないんです。
本当に申し訳ないんですが、またご教示おねがいできますでしょうか。
>sendmail.cfなり/etc/hostsなりを変更して、@hoge.co.jp はローカルで
配信すべきアドレスではないという設定にしないと192.168.1.3には配信されません。
>別の手法として、ちょっとトリッキー(というかこの場合あまり良い方法ではないかも)ですが、メールのディレクトリをNFSで共有してしまう方法もあります。
>また192.168.1.2から直接外へ配信したいなら、sendmail.cfのDS(sendmail.mcだとSMART HOST)を192.168.1.3へ向けるのが良いでしょう。
教えていただいたことから検索し、
SMART_HOST(CFでいうDEFAULT_RELAY)は
「内部からインターネットにメールを送信する際に、内部メールサーバは一旦DMZなどに置かれるリレーサーバにメールを渡すので内部のメールサーバに設定するもの」
などとたどりつきました。
# sendmail.mc
define(`SMART_HOST', `smtp:[192.168.1.3]')dnl
というのを書き込んでみましたが、192.168.1.3には転送されませんでした。
また[ローカルで配信すべきアドレスではないという設定]にするため、local-host-namesから@hoge.co.jpを削除しましたが、試してみると、192.168.1.2の/var/mail/送り先ユーザーのスプールファイルでなく、/var/mail/rootにエラー送信されます。
そして[192.168.1.2から直接外へ配信したいなら]もよく理解できなくなってしまいました。
ローカルでしか配信できない設定になっているのかと思ったんですが、試しに、
WAN側ポート: 80>>>LAN側ポート 192.168.1.2: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.3: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.3:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.3: 25
この状態で,192.168.1.2の方で、
# echo "root: hoge@yahoo.co.jp" >> /etc/aliases
# newaliases
# echo test|mail root
とroot宛てのメールをyahooのWEBメールに転送するようにしてみると、ちゃんと届いていたんです。
ほんと的外れな事をしてるかも知れませんが、ますますどうしていけばいいかわからなくなってしまいました。
ご指摘、ご指南のほどよろしくお願いします。
No.3
- 回答日時:
>sendmail.cfの設定もデフォルトから特に触っていないんですが、何か必要な事があるんでしょうか?
192.168.1.12側のsendmailの設定を変更したポートに設定はしました?
この回答への補足
お返事本当にどうもありがとうございます。
先ほどの補足で誤りがあり、どうやって編集したらいいかと悩んでいました。
>192.168.1.12側のsendmailの設定を変更したポートに設定はしました?
NAPT設定で、
WAN側ポート: 80>>>LAN側ポート 192.168.1.2: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.2: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.3:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.3: 25
WAN側ポート: 32>>>LAN側ポート 192.168.1.2: 32
WAN側ポート: 34>>>LAN側ポート 192.168.1.2: 34
とした時に
/etc/servicesの
"smtp 25/tcp" を "smtp 34/tcp"
"pop3 110/tcp" を "pop3 32/tcp"
にしてみました。
この部分では反映されないのでしょうか?
そして、
すみませんが前回分の補足を訂正させて下さい。
----------------------------------------------------------------------
>> 1.192.168.1.2のサーバがローカルで配信している(192.168.1.2の/var/mail に配信されてませんか?)
>192.168.1.2の/var/mailには配信されていません。
----------------------------------------------------------------------
と、書きましたが誤りでした。
/var/mailに配信されていました。
No.2
- 回答日時:
可能性として、
1.192.168.1.2のサーバがローカルで配信している(192.168.1.2の/var/mail に配信されてませんか?)
2.192.168.1.3が受信拒否している(iptablesなどでブロックされているか、sendmail.cfの設定の問題か)
とりあえず両サーバのメールログ(/var/log/maillogかな?OSが書かれていないので違うかも)をtail -fで監視しながらcgiからメール送信してみればどんな動作をしてどんなエラーが出ているかわかると思いますが。
この回答への補足
早速のお返事どうもありがとうございます。
またまた説明不足で申し訳有りません。
OSはFedoraCore4を使用し、sendmailはヴァーチャルドメインで運用してます。
> 1.192.168.1.2のサーバがローカルで配信している(192.168.1.2の/var/mail に配信されてませんか?)
192.168.1.2の/var/mailには配信されていません。
> 2.192.168.1.3が受信拒否している(iptablesなどでブロックされているか、sendmail.cfの設定の問題か)
iptablesの設定というのは何もした覚えが有りません。
# iptables -L
Chain INPUT (Policy ACCEPT)
target prot opt source destination
Chain FORWARD (Policy ACCEPT)
target prot opt source destination
Chain OUTPUT (Policy ACCEPT)
target prot opt source destination
sendmail.cfの設定もデフォルトから特に触っていないんですが、何か必要な事があるんでしょうか?
また/var/log/maillogは
192.168.1.3の方は変化なく
192.168.1.2の方は
///////////////////////////////////////////////////////////////////
Dec 6 15:57:31 localhost sendmail[7122]: kB66vU7a007122: Authentication-Warning: localhost.localdomain: apache set sender to info@hoge.co.jp using -f
Dec 6 15:57:31 localhost sendmail[7122]: kB66vU7a007122: from=info@hoge.co.jp, size=440, class=0, nrcpts=1, msgid=<200612060657.kB66vU7a007122@localhost.localdomain>, relay=apache@localhost
Dec 6 15:57:31 localhost sendmail[7123]: kB66vVIi007123: from=<info@hoge.co.jp>, size=775, class=0, nrcpts=1, msgid=<200612060657.kB66vU7a007122@localhost.localdomain>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
Dec 6 15:57:31 localhost sendmail[7122]: kB66vU7a007122: to=info@hoge.co.jp, ctladdr=info@hoge.co.jp (48/48), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=30440, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (kB66vVIi007123 Message accepted for delivery)
Dec 6 15:57:32 localhost sendmail[7124]: kB66vVIi007123: to=<info@hoge.co.jp>, ctladdr=<info@hoge.co.jp> (514/514), delay=00:00:01, xdelay=00:00:01, mailer=local, pri=30984, dsn=2.0.0, stat=Sent
Dec 6 16:02:18 localhost spamd[7058]: server killed by SIGTERM, shutting down
///////////////////////////////////////////////////////////////////
となっていました。
よくわかっていないので、状況を上手く説明できませんが
またまた、よろしくお願い致します。
No.1
- 回答日時:
>ホームページ(192.168.1.2)で使用しているお問い合わせフォーム(mb_send_mail関数で作成?)が使用できなくなってしまいました。
とは、具体的にどんな状況ですか?
CGIがエラーを出す。
エラーは出ないけどメールが192.168.1.2から送信されない。
など。
この回答への補足
お返事どうもありがとうございます。
説明不足で申し訳有りません。
>ホームページ(192.168.1.2)で使用しているお問い合わせフォーム(mb_send_mail関数で作成?)が使用できなくなってしまいました。
192.168.1.3の方にポート110と25を振り分けているためだと思うんですが。
の状況というのは、
「192.168.1.2から送信しようとしてポートが開いてなく失敗するのか」
「192.168.1.2自分自身に受信しようとしてポートが開いてなく失敗するのか」調べ方も分かってないんです。
ただ、PHPの問い合わせフォームで、メール送信完了した場合、"メールを送信しました"と出るようにされていて、その文字は出力されますが、メールが届いてきません。(メーラーでも受信せず、192.168.1.3の/var/mail/の中のspoolファイルの日付も更新されていません。)192.168.1.2と192.168.1.3はユーザーからその他、(IPアドレスに関わる箇所以外)ファイルの設定も192.168.1.2と同じにしているので、
WAN側ポート: 80>>>LAN側ポート 192.168.1.3: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.3: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.3:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.3: 25
と全て192.168.1.3としても、192.168.1.3で正常に動作します。
始めたばかりで、そもそもメールの構成もよくわかってないんですが、
192.168.1.2の方に、110と25以外のポートで送受信しようと思い、
試しに NAPT設定で、
WAN側ポート: 80>>>LAN側ポート 192.168.1.2: 80
WAN側ポート: 53>>>LAN側ポート 192.168.1.2: 53
WAN側ポート:110>>>LAN側ポート 192.168.1.3:110
WAN側ポート: 25>>>LAN側ポート 192.168.1.3: 25
WAN側ポート: 32>>>LAN側ポート 192.168.1.2: 32
WAN側ポート: 34>>>LAN側ポート 192.168.1.2: 34
とし、
/etc/servicesの
"smtp 25/tcp" を "smtp 34/tcp"
"pop3 110/tcp" を "pop3 32/tcp"
にしてみたんですが、やはり、メールはきませんでした。
お手数ですが、よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- ルーター・ネットワーク機器 10Gbpsの恩恵 5 2022/11/16 15:48
- FTTH・光回線 光コンセントとlanポートがある場合 5 2022/04/18 12:46
- ルーター・ネットワーク機器 YAMAHA RTX1210について初歩的な質問 1 2022/05/26 23:06
- その他(インターネット接続・インフラ) 一軒家のインターネット環境について質問です。 現在一軒家に住んでいますがWiFiの速度が遅く困ってお 3 2022/11/06 00:55
- ルーター・ネットワーク機器 ONUにルーターをつなげるとONUのポートは使用できないのでしょうか? 7 2022/12/07 17:32
- ルーター・ネットワーク機器 「マルチSIMルーター」について教えて下さい 3 2022/06/24 08:59
- ルーター・ネットワーク機器 家にLANポートがあったんですが、これって挿したら使えるんですか? また、3階にテレビのケーブルを刺 8 2023/01/10 14:57
- ルーター・ネットワーク機器 一軒家の自宅を購入し、1階にリビングにOUNを設置しました。私は2階の部屋で有線LAN接続してパソコ 5 2023/06/09 23:08
- ファイアウォール ポート開放で利用可能なTCP一覧の中に利用したいTCPが入ってない場合どうすればいいのでしょうか? 2 2022/09/12 10:31
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IIS環境にてJAVAを使用したいの...
-
ゲーミングPCでの質問です ゲー...
-
テレビから”キーン”と耳鳴りの...
-
ディスプレイ上で起こる2重表...
-
買ったばかりの液タブの画面が...
-
【EX2510S】HDMIとDisplayPort...
-
「かりん」を数字で表すとした...
-
インターネットに接続できなく...
-
だれかいい案ありません
-
Cpkのk(偏り)値をExcelで出す...
-
ワークグループとドメインの共存
-
HyperVで仮想マシンがネットワ...
-
AC100Vの電圧を下げる方法は?
-
WO mic のUSB接続でエラーが出...
-
目を左右別々に動かす
-
統計的工程管理
-
PIC16F1827でPCとシリアル接続
-
VBでUSBポートからの入力を制御...
-
PLC間の信号のやりとりについて...
-
薄膜形成の対象は半導体ウエハ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
IIS環境にてJAVAを使用したいの...
-
ギガビットLANなのに100Mで認識...
-
何故 "localhost:8080" なの??
-
ポートの閉じ方について
-
NAPTってどれを変換するんです...
-
ネットワークカメラのポート番...
-
Netscape(R) Communicator 4.78...
-
DHCPとNAPTとの違い
-
AL-mail 送信が出来ません。
-
LPRモードで LPRバイトカウンタ...
-
WEBサーバーとメールサーバーを...
-
★拠点間接続でのセキュリティに...
-
SNMPのポート番号について
-
WEBサーバを2台立てる際の...
-
ひかり電話の追加番号をヤマハR...
-
メールの受信は出来るが送信が...
-
ディスプレイ上で起こる2重表...
-
ゲーミングPCでの質問です ゲー...
-
HyperVで仮想マシンがネットワ...
-
PLC間の信号のやりとりについて...
おすすめ情報