• ベストアンサー

SSL対応のホームページを作る際

会社のホームページから、商品の注文をとれるようにしてと言われました。相手の住所や商品をメールで貰って、代引きという形にしようと思います。 クレジットカード等は使わないのですが、やはりSSL対応のページにした方がいいのですよね?サーバの構築は、SEの人にやってもらうとして、注文はフォームで必要項目を入力してもらい、送信を押したら私のところに注文のメールが来るというようにしたいのです。その際何かしておかなくてはならないのでしょうか?SSL対応のページから発信したメールは勝手に暗号化するのでしょうか? メールサーバにも何かしないといけないのでしょうか? 浅い知識しかないので的がはずれた質問になっているかもしれませんが、お分かりになる方どうかお力を貸してください。

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

  • ベストアンサー
noname#227796
noname#227796
回答No.1

システム設計する人にもよりますが、この場合は、 ブラウザ ←(SSL)→ 注文CGI を実行 → メール送信 → 担当者へ って感じでしょうか。 テキストベースなので書きにくいですが。(^^; 注文CGIが実行されたときに、担当者にメールを送るわけですが、サイト内部で完結していれば、特に暗号化は必要ないでしょう。 そのメール自体が外に出ていかないようにはするはずですので。 ただ、メールサーバ自体は、外部からアクセスできないようになっているとは思いますが、会社でOCNなどの外部のメールサーバを使っている場合は別です。 どっちかというと、メールで担当者に送るよりも、外部からは参照できないところに、注文書のファイルとして保管し、担当者が定期的に確認した方が良いような気がします。 内部の特定の人間(例えば管理者など)が常に参照できるようにしておけば、処理状況はどうなっているかなども、逐次確認できますし、漏れもなくなりますから。 利用者に住所等を送信してもらうときには、情報が漏れないようにSSL通信を行った方が良いのは確かです。 SSL通信を行うためには、サーバ証明書というものが必要になります。 証明書は、ベリサインなどから発行して貰う必要があります。 まあ、いずれにしても、制作会社の担当SEと直接話をした方がすぐに疑問点が解決すると思いますけど。 設計や運用に関わる話もありますしね。 少し専門的な話にもなってしまいますが下記URLを参考にすると良いかもしれません。 http://www.atmarkit.co.jp/fsecurity/special/01ssl/ssl01.html http://www.atmarkit.co.jp/fsecurity/rensai/elesign01/elesign01-1.html

参考URL:
http://www.atmarkit.co.jp/fsecurity/special/01ssl/ssl01.html
sakura35
質問者

補足

早速にありがとうございます。サイト内部で完結とはどういう意味でしょうか?ホームページから注文を取るということは外部からですよね?なのでやはりSSLが必要にならないのですか。cgiで全て解決なら嬉しいのですが。 あと「サーバー証明書」っていうのは絶対に必要ですか?サーバにLinux、OpenSSL、modsslを使って仕組みを作るだけでは駄目なのでしょうか。実はその担当者も仕組みを作るのは初めて。私がホームページ部分を作るのですが、私はプログラムのことがまるっきり分からない。なので「お任せするから作ってねー」だけじゃ、不安なんです。

その他の回答 (3)

  • JOYBOX
  • ベストアンサー率52% (75/143)
回答No.4

SSL専用レンタルサーバー --==W==-- (ダヴリュー):レンタルWeb+SSLサーバー!独自CA鍵生成、運用中! http://www.w-w.ne.jp/ssl/sslservicew.html

参考URL:
http://www.w-w.ne.jp/ssl/sslservicew.html
sakura35
質問者

お礼

レンタルサーバという手もあるのですね。 コスト面なども合わせて考えてみます。

回答No.3

i_am_aliveさんが書いている図を拝借して ブラウザ ←(SSL)→ 注文CGI を実行 → メール送信 → 担当者へ となっていますが、注文CGIから右側は同一サーバ内だとすれば同サーバーでの暗号化の必要はなく、ブラウザとCGIのところにSSLにて暗号化してあげればいいです。ただメールをそのサーバーではなく他の端末でみるのでしたら、その間でまた暗号化が必要となります。メールの暗号化も多くのものがありますが、一般的にはPGPで文章を暗号化でしょう。 ただ、i_am_aliveさんも提案しているようにメールを送信ではなく、その部分を  注文CGI→データベース とするほうが良いと思います。データベースにはPostgreSQLを使用すればよいと思いますし。 なんかごちゃごちゃしてしまったので最終的な図を ブラウザ ←(SSL)→ 注文CGI を実行 → データベース(PostgreSQL) です。

sakura35
質問者

お礼

そうですね。何もメールにしなくてもいいのですよね。 少し目の前が開けた感じです。ありがとうございました。

noname#227796
noname#227796
回答No.2

>内部で完結とはどういう意味でしょうか? 利用者側に利用できる部分は、先の注文CGIまでで、そこから先のメールを送信する部分とか、メールサーバとかは内部の話で、利用者側からは見れない・直接利用できない、ということです。 サイトの内部じゃなくて、ローカルネットワーク(LAN)内と言った方が適切でした。 >ホームページから注文を取るということは外部からですよね?なのでやはりSSLが必要にならないのですか。 SSL通信を行うのは、あくまでもWWWサーバとブラウザの間ですから、注文CGIが実行されるときはSSLで通信が行われ、暗号化された情報がやりとりされます。 注文CGIが実行され、注文CGIにパラメータが渡ったときには、すでに情報は複合化されているので、注文CGI自体には特別な仕掛けは必要ありませんので、普通のCGIと変わりません。 注文CGI内部では、メールを送信する処理を行いますが、そこの部分でも、特に何の設定も必要ないでしょう。 sendmailを使うのか何を使うのかわかりませんが、普通にメールを送ればいいと思います。 ただし、そのメールが外部(インターネット、WAN)に出てはまずいので、ローカルに存在するメールサーバにメールを送るようにする必要があるわけです。 >あと「サーバー証明書」っていうのは絶対に必要ですか? SSLを使うなら必要です。 >サーバにLinux、OpenSSL、modsslを使って仕組みを作るだけでは駄目なのでしょうか。 OpenSSLを利用することが決まっているなら、ベリサイン等にサーバ証明書を発行してもらう必要はなく、OpenSSLを使って自己署名型の証明書を発行して利用すれば、とりあえずはSSL通信できます。 ただ、OpenSSLを使って“自分自身で”発行した証明書を使用する場合、そのサイトが信頼できるサイトであるかどうかを保証する第三者機関であるベリサイン等のお墨付きを得たサーバ証明書ではないため、本来は、サイトの正当性を証明する(サーバ認証)ことはできません。 利用者としては“「信頼することができないサイト」とSSL通信を行おうとしている”ことになるということは、考慮しておいて下さい。 ということで、単に暗号化したいだけであれば、自己署名型証明書を使って行えばいいだけなのですが、本来は、商売をするのであれば、まっとうなサーバ証明書を利用するべきだと私は思います。 >実はその担当者も仕組みを作るのは初めて。 それは怖い・・・ 個人情報が漏れないように十分注意して構築して下さい。(^^; ※ああ、今日は久しぶりに何もない、穏やかな(暇な(笑))一日だった・・・

sakura35
質問者

お礼

丁寧な説明ありがとうございます。何度も何度も読み返しました。(説明が分からないのではなくて、私の頭がなかなかついていかないのです)今日担当と話あったのですが、なんとかなりそうです。頑張ってみます。

関連するQ&A