• ベストアンサー

メールフォームのスパム対策

ウェブサイトにメールフォームを持っていますが、最近スパムメールが多くて困っています。 完全な撃退!とまで行かなくてもいいので、簡単に出来る対策はありませんでしょうか。 初心者なので、あまり難しいことが出来ないのです、、、 どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.5

No.2です。 「ソースにメールアドレスが書かれていませんか?」 と書きましたが、それは配布されているメールフォームに、 <input type="hidden" name="mailto" value="****@hoge.***" > と書かれているものを想定していました。  この場合は、メール送信CGIのほうで、送信先を記入するべきです。  あなたの言われるメールフォームが <form action="mailto" ・・・としているのでしたら、これは誤った方法です。 【引用】____________ここから action = uri [CT]   この属性は、フォーム処理エージェントを指定する。HTTPスキームURI以外の  値(mailtoとか)の場合のユーザエージェントの動作は、定義しない。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Forms in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/interact/forms.html#adef-action )]より  と書かれているように、その方法は使うべきではありません。それでメールが送信できるのは、あくまでブラウザのおまけ機能です。ブラウザにMUA(メールユーザーエージェント/メールソフト)が指定されている限られた人にしか利用できませんし、たとえ送信されても文字コードがiso-2022-jpでないため、文字化けの原因になったりします。 <form action="./cgi/mailer.cgi" method="post">のように指定して、サーバーにCGIなどのプログラムを作成してください。  それが出来ない間は、機械的に読み取りにくい--目でも読みづらいですが、メールアドレスを画像にして、フォームではなく直接送信してもらう形にします。 <p>  問合せは<img src="i/images/mailAddresss.jpg" width="240" height="30" alt="">のアドレスに</p> とか  そして、CGIを設置する準備を  ⇒CGI RESCUE - CGIフリーソフト( http://www.rescue.ne.jp/ ) の「フォーム・アンケート・エディタ ほか」などにあります。  このサイトの下の方に 基本的なことなど  CGI設置が初めての方へ(設置練習)  FTPツール/パーミッションについて  ダウンロードファイルの伸張&展開の仕方  テキストダウンロードについて など、詳しい説明があります。

yumi2007
質問者

お礼

ご回答ありがとうございます。 まとめてのお礼ですみませんが、詳しく教えてくださったので、なんとか出来ました。 しばらく様子を見てみます。 本当にどうもありがとうございました。

その他の回答 (4)

回答No.4

> 初心者なので、あまり難しいことが出来ないのです、、、 とのことであれば、フォームに項目を追加するとか、サーバー側の処理を変更するといったことはできないでしょうから、対策機能を持ったメールフォームに入れ替えるくらいしか対処方法はないのではないでしょうか。 ちなみに、特定の掲示板ソフトを使用しているサイトを検索で探し出して、片っ端から宣伝文句を書き込むソフトがあり、被害にあっている掲示板が探せばすぐ見つかるはずです。フォーム上の項目がどのサイトも同じなので、自動処理できてしまうからです。 同様の手法で、多くのサイトで使われているメールフォームからSPAMを送信するソフトも存在しますので、メールアドレスが直接書かれていない場合でも、こういった被害は起こっています。 最近のフォームでは、サーバーで作成した画像から英数字を読み取って、フォームに入力するようにしているものなど、この手の迷惑行為への対処が入っているものが増えてますが、それが使えるかどうかは設置するサイト次第なので。

yumi2007
質問者

お礼

ご回答ありがとうございます。 メールフォームの利用も一つの方法ですね。 どうもありがとうございました。

回答No.3

No2さんが書かれている通り、ソースにアドレスが書かれているのが原因です。 組み直しましょう。 ただし、これまでのアドレスはもうスパム業者に知れ渡っていますので、それを機にアドレスは変更しましょう。

yumi2007
質問者

お礼

ご回答ありがとうございました。 ・・・そうなんですね、、、もうアドレスは変えないといけないのですね、、、ショックです。。。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

メールフォームでSPAMと言うことは考えられないのですが? ひょっとして、ソース内にアドレスが書かれているとかじゃないですよね。

yumi2007
質問者

お礼

お礼をしていなくて申し訳ありませんでした。 ご回答ありがとうございました。

  • MOMON12345
  • ベストアンサー率32% (1125/3490)
回答No.1

どのようなspamかによって対策は異なりますが、一般的なものを書いておきます。 日本語のページで日本語が主に入力されるものと仮定します。 ※全角文字数と半角文字数を数えて、半角文字数が多い場合はリジェクトする。 ※送信元IPを調べてFQDNがなければリジェクトする。 (日本に割り当てられているIPかどうかを調べるのも有効) ※書き込み時間(サイトが表示されてから書き込みボタンが押されるまで)をチェックする。 spamの多くはコピーした文章を貼り付けるだけなので、文字数に応じた時間をチェックするのは有効。

yumi2007
質問者

お礼

ご回答ありがとうございます。 教えてくださったことをチェックしてみます。

関連するQ&A