• ベストアンサー

【fedora7】 sendmail+メールフォーム これで稼動できるのだろうか

fedora7でapacheを立ててサーバーを運営しているのですが、 メールアドレス直接掲載では迷惑メールの爆撃が来るため、メールフォームCGIを利用しようと思い立ちました。 調査するうちに、sendmailというMTAが必要と分かったのですが・・・どうにも不安なのです。 ●現在までに行った操作(1~2がWindows上、3~4がfedora上) 1. メールフォームCGIデータのダウンロード 2. メールフォームを稼動させるHTMLの作成、CGI側の設定 3. sendmailのインストール(バージョン8.14.1-2)※fedoraインストール時に入っていました 4. sendmailの設定ファイル等は一切いじっていない 5. chkconfigによるsendmailの自動起動を設定 ここまでの手順の後にHTMLとCGIをアップして実際に試験稼動(送信テスト)した場合、何か問題は起こるのでしょうか? それともここまでの手順のみでメールフォームの稼動はできるのでしょうか? sendmailの実行パスとCGIのsendmail呼び出しパスは、 /usr/sbin/sendmail で合わせています。 前もって調べたところ、sendmailの設定はとてつもなく複雑(viでの編集は危険とのこと)らしく、 中身がまったく分からないため闇雲な手出しができない状態です。 できれば早い段階で稼動させたいので、ご教授お願いいたします。 ※「●●(キーワード)でググれ」とか「自分で検索しろ」とか「それぐらい調べろよ」とか、あまりに無責任なは一切無しでお願いします。 あれこれググって調べた結果、余計にこんがらがってわけ分かんなくなってしまったからここに来たんですもの・・・。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

おそらくそれで送信はできるのではないかと思います。 ただし そのsendmailの設定が適切にされていないと、スパムの踏み台にされて世界中の人に迷惑を掛けますので、その点はご注意ください。 具体的に言うと、自サーバもしくは自ネットワークからの送信のみ許可するとか、送信時にユーザ認証を掛けるなどが必要です。お見受けしたところメールサーバではないようですので、「自ホストのみ許可」になっているか、もう一度確認してください。 (おそらくデフォルトのインストールではそうなっているとは思いますが) sendmailを起動した状態で、 netstat -nap | grep sendmail というコマンドを打ち、戻り値のLocal Adressが 127.0.0.1:25 しかなければ大丈夫です。もし :::25 (外向きアドレス):25 などがあったら危険なので即刻sendmailを停止してください。 それから、sendmailはプログラムなので普通は編集しません。編集するのは「sendmail.cf」という設定ファイルです。ただしこれも難解なので、普通RedaHat系なら「sendmail-cf」というパッケージを使い、「sendmail.mc」というファイルを編集してからあるコマンドで「sendmail.cf」を生成します。 またそのsendmail経由のFormから外部のメールサーバのアドレスに送信するときは、sendmail以外にもDNSの設定やプロバイダのポリシー(OP25Bとか)にも依存します。

ANIKI2007
質問者

補足

ご回答ありがとうございます。 送信は自分のサーバーからだけ、かつグローバルからの25番ポートはルータ側でステルスにしてあります。 その状態においてnetstatで調べたところ、このような結果でした。 # netstat -nap |grep sendmail tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1819/sendmail: acce unix 2 [ ] DGRAM 6538 1819/sendmail: acce 外からのリクエストに答えるtcpは無かったので、大丈夫そうです。 DNSはルータに一任しており、普段からWindowsでも利用しているため、正常稼動することを確認しています。 設定に関しても、情報提供ありがとうございます。 「sendmail-cf」、がんばって勉強してみます。 早速、試験稼動してみます。

その他の回答 (2)

回答No.3

>DNSはルータに一任しており、普段からWindowsでも利用しているため、正常稼動することを確認しています。 これはPCが名前を引けているという意味ですよね。 メールの配信においてのDNSはちょっと別の意味があって、最近の世の中のメールサーバには、送ってきたIPアドレスの逆引きできなかったりMXが付いていないと受信拒否するものが多くなっているのです。 まぁ外に送信しないなら問題はないですけど。

ANIKI2007
質問者

お礼

LAN内接続と、W-ZERO3のIEから接続(LAN外接続)で テストしたところ、いずれも正常に送信できました。 このたびは丁寧なご指導、大変感謝しております。 本当に、ありがとうございます。

  • ikiss
  • ベストアンサー率43% (34/79)
回答No.1

そこまでしたのなら、テストしてもOKですよ。 もともとsendmailそのものを編集などはしないものです。 CGIのプログラムに引数として渡す値さえ間違ってなければ かつ 呼び出しパスが合っていれば、問題なしです。 テストしても大丈夫だとおもいますよ。

ANIKI2007
質問者

お礼

ご回答ありがとうございます。 なるほど、特に設定が必要なわけではないのですね。 早速、試験運用してみます。ありがとうございました。

関連するQ&A

  • sendmailとPostfixについて

    現在RedHat7.3でsendmail8.2を使用しています。 さて、いろいろ調べたところMTAはPostfixが使いやすいということをわかり導入しようかなとおもっておりますが、ここで疑問が出てきました。 Postfixをインストールした場合既存のsendmailはどうなるのでしょうか? というのも、現在PerlでCGIをいくつかweb上にアップしているのですがプログラム内でのsendmailのパス /usr/sbin/sendmail これをすべて変更する必要があるのでしょうか? どうかご教授おねがいします。

  • sendmailでメールが送信されない。

    こんにちは。 自動応答メールフォームのCGI「ThemeResMail」というのを 使っているのですが、うまく動作しません。 このcgiをアップしたのは以下のレンタルサーバーです。 http://www.dot5hosting.com/dot5/ 使用しているcgiはこれです。 http://apps.cside.com/theme/tmresmail/ メール送信完了画面は出るのですが、 送信者、あて先共にメールが届きません。 同じ設定で他のサーバー(xrea)ではうまくいきました。 sendmailとperlのパスは調べた所、間違いないようです。 ■dot5でのパス sendmail /usr/sbin/sendmail Perl /usr/bin/perl 何が原因なのかどんな事でも結構ですのでコメント頂けると助かります。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • メールが送信できない(sendmail)

    CGIにてsendmailを送信したいのですが、送信されなくなってしまいました。 以前、同じCGIでメールを送信できていたので、原因はsendmail自体にあると考えています。 OSはCentOS5です。 sendmailの仕組みもよく分からないので、皆さんのお知恵をお借りしたいのです。 # /etc/init.d/sendmail status sendmail is stopped sendmailを起動しようとすると # /etc/init.d/sendmail start Starting sendmail: sendmail: usage: sendmail [ -t ] [ -fsender ] [ -Fname ] [ -bp ] [ -bs ] [ arg ... ] [FAILED] となり、起動できません。 qmailにてsendmailを動かしているのかと思い、以下を実行しました。 # which sendmail /usr/sbin/sendmail # rpm -qf /usr/sbin/sendmail sendmail-8.13.8-2.el5 psa-qmail-1.03-cos5.build84080425.19 # ls -l /usr/sbin/sendmail lrwxrwxrwx 1 root root 21 Feb 7 2008 /usr/sbin/sendmail -> /etc/alternatives/mta # ll /etc/alternatives/mta lrwxrwxrwx 1 root root 23 Jun 9 2008 /etc/alternatives/mta -> /var/qmail/bin/sendmail # ll /var/qmail/bin/sendmail -r-xr-xr-x 1 root qmail 10804 Apr 25 2008 /var/qmail/bin/sendmail この後何が必要なのかが分かりません。 今、調べたものも解決に役立つか分からない状況です。 よろしくお願い致します。

  • Fedora7でメールサーバーの設定がうまくいきません。

    Fedora7をlnstall or upgrade an existing systemでインストールしました。 Fedora7でメールサーバーの設定がうまくいきません。 メールサーバーの設定手順 sendmailの停止     ↓ 1Postfixのインストール     ↓ sendmailからpostfixへ移行する ↑の手順でやったのですがsendmailからpostfixへ移行するするときうまくいきません。 sendmailからpostfixへ移行するするときalternatives --config mta と入力するとbash: alternatives: command not foundとでてうまくいきません。 どうしたら改善されますか。 PC環境 マザーボードはBX6(無印) ​http://www.hardwarezone.com/reviews/mb/Bx2/Bx6-2.htm​ CPU Pentium3 500MHz メモリ 448MB HD 320GB 補足するのでお願いします。

  • sendmailを使わないで送れるメールフォームを探しています。

    自宅サーバーでサイトを公開しているのですがsendmailが使えません。 あちこち探したのですが、配布されているメールフォームCGIはほとんどがsendmailを使うものでした。 次のようなメールフォームCGIをご存知の方よろしくお願いします。 (1)sendmailを使わないでプロバイダ(OCN)のメールサーバで送る (2)投稿者に自動返信ができる (3)送信先のアドレスが複数指定できる (4)添付ファイルが複数送れる (5)必須入力項目のチェックができる 勝手なことばかり申しますがよろしくお願いします。

    • ベストアンサー
    • CGI
  • sendmail

    フォームメールのcgiを自宅サーバーで作成しようと して、サンプルのcgiを実行しようとおもったのですが、sendmailのパスを設定してくださいとあるのですがsendmailがどこにもありません。どこから入手すればよいのですか?サーバーはwindowsです。 サンプルcgiは、10日でおぼえるPerl/CGIの第5日4時限目のとこです。 よろしくお願いします。 当方はperl初心者です。

    • ベストアンサー
    • Perl
  • フォームメールの内容確認を行うCGIについて

    CGIにチャレンジを始めた超ビギナーです。 CGIに関するテキスト等を読んで,フォームメールを送信するCGIを設置してみました。 それはサンプルどおりに作成したので,Perlとかsendmailのパスを修正するだけで使用できたのですが,できれば,フォームに記載した内容を確認した後にsendmailに渡し,メールできるようにしたいのです。 そこで,最初に記入したフォームから各データを復元した後に,その記載内容をHTMLで一度出力し,それから次のCGIスクリプトに受け渡すような手順を考えたのですが,その際のデータの受け渡しがうまくできませんでした。 ヘッダやボディの内容をそれぞれファイルに書き込んで,それを別のCGIで読み出してやれば,うまくいくのではないかと思ったのですが...。 つきましては,何か参考になるサンプルCGI,HTML,サイト等があれば教えていただけないでしょうか? 本当に基本的なことで申し訳ありません。 何卒よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • sub sendmailのコマンドで、Toの設定を、フォームに入力され

    sub sendmailのコマンドで、Toの設定を、フォームに入力されたメールアドレスに設定する方法を教えてください。下記のように作成しましたが、うまくいかずでした。 フォームのHTML側で、メールアドレスを入力する場所にこのように設定 <input name="mailad" type="text" class="font1 id="mailad" size="40" /></td> CGI側では、sendmailのパスなどを設定したあたりに $●●● = '????'; 上記のように入力。「????」がいくつか試してみたがうまくいかず。 この「????」が不明。 HTMLタグのmailadの部分を読み込むようにしたらいいと思うのですが・・・ sendmailの部分はこのように明記 open(MAIL,"| $sendmail -t -i"); print MAIL "To: $●●●\n"; 「????」がわからないのと、根本的にこれであっているのかわからないです。 form{/・・・}のようなものが一番近いと思いましたが、これも動かずでした。 ※サーバーエラーにはならず、入力されたアドレスを読み込んでくれませんでした。 もしよろしければお教えください。 調べ方でもうれしいです。 よろしくお願いいたします。

    • 締切済み
    • CGI
  • はじめまして、レンタルサーバーでCGI(sendmail)に苦戦中です

    はじめまして、レンタルサーバーでCGI(sendmail)に苦戦中です 皆さんの知恵を教えてください 現在の状況  サーバー : 大塚商会 アルファメール         新Webに変更済み(CGI可能) 作り方として、直接CGIから実行せず、htmlからメールフォームを表示して そして、sendmail.cgiを実行する形式にしました 参考として ttp://www.site-cooler.com/kwl/cgi/5.htm を手本とさせていただきました 上記のファイルをダウンロードして、必要な箇所を変更しました   ・sendmail     パス:/usr/sbin/sendmail   ですが、なぜか…sendmail.htmは表示できて、送信ボタンを押すとエラーになります   「 internal Server Error 」 です 色々模索中なのですが、全然、解決の目処が立っておりません 模索中なのは  ●パーミッション : アルファメールでは「700」が推進とあったので700にしてみたら   sendmail.htmすら、動かず、755に変更しました   とりあえず、メールフォーム(htm)は表示されます  ●sendmail.cgiは、755・700とも動きません  ●CGIの動作環境は、     ttp://www.alpha-mail.jp/support/server_info/pg/cgi.html   です 下記のように変更しました ------------------------------------------------------------------ #!/usr/bin/perl # 初期設定 -----------------------------------------------# # # sendmailへのパス (変更済み) # $sendmail = '/usr/sbin/sendmail'; # # jcode.plへのパス # $jcode = './jcode.pl'; # # メールの送付先 # $to = 'QQQQQQQ@QQQQQQ.co.jp'; # # メールの題名 # $subject = 'CGIメール送信サンプル'; # # 確認ページより戻るでリンクされるURLを指定 # $back = 'XXX://XXX.XXXXX.XXXX/'; # # 呼出し元。チェックする時はhttpから始まるURLを指定 # $referrer = ''; --------------------------------------------------------- どうかアドバイスをお願いします

    • ベストアンサー
    • CGI
  • sendmailでメールを送るのをhtmlメールにするには?

    sendmailでメールを送るのをhtmlメールにするにはどのようにすればよいのでしょうか。CGIだけでは難しいのでしょうか。また、sendmailではなくほかのやり方があればどういうシステムがあるのでしょうか。HMVなどから来るメールがHTMLメールでくるのですが、知り合いに聞かれて返答できずに困っています。何卒よろしくお願いいたします。

    • ベストアンサー
    • CGI