• ベストアンサー

SSLのページをつくるには?

PHP勉強中なのですが、友人に頼まれPHPで申し込みフォームのようなものを作って欲しいといわれたのですが、住所などを扱うためSSLのほうがいいのだろうと思っています。 が、SSLについてよくわからないので質問させてください。 調べたところサーバー側とSSLの契約をすればSSL使用可のようなのですが、そこで使うプログラムは何か特別な作り方をするのでしょうか? 通常通りのPHPプログラムで問題ないのでしょうか? 内容的にはフォームに入力したものをメールで受け取る。というふうに考えています。(他にも方法があれば教えてください。) よろしくお願いします。

  • PHP
  • 回答数3
  • ありがとう数1

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

  • ベストアンサー
  • technova
  • ベストアンサー率66% (10/15)
回答No.3

<SSLの目的とするところ> SSLとは通信プロトコルの一種で、ウェブサーバ側にVeriSignなどの事業者から購入したサーバ証明書を設定すると、ユーザとウェブサーバ間でSSL通信が可能となります。ユーザにとってのメリットは、次のようなものです。 1.ユーザが申し込みフォームのページにアクセスした際、サーバ側に設定されたサーバ証明書を確認できます。サーバ証明書を確認できるというのは、サーバ証明書にはサーバのドメイン名やウェブサイトの運営者の情報が入っているため、目的のウェブサイトであることを確認できます。これで、ユーザはアクセスしたサイトがフィッシングサイトのように成りすまされたサイトかどうか判断することが可能になります。 2.ユーザが申し込みフォームのページにアクセスした際、そのページの内容やユーザの入力送信情報が全て暗号化されます。これで、ユーザは安心して入力情報を送信することが可能になります。 ※ただしユーザが1の確認をした上で目的のサイトにアクセスしている場合に限ります。もしユーザが成りすましサイトにアクセスしていたら、入力情報の送信データが暗号化されていたとしても個人情報などはそのまま成りすましサイト運営者に盗まれてしまいます。 というようにユーザを保護するために導入するのがSSLです。よくウェブサイト運営者側を守るためにSSLを導入するという発想をしがちですが、実際にSSLで守られるのはユーザ側です。飲食店で食中毒を発生させないよう衛生に注意を払うのと同じ考え方です。サーバ証明書は、発行している事業者によっていろいろな種類がありますから、ユーザを守るという観点でどのサーバ証明書にするか決めましょう。 <SSLの適用範囲> ・ユーザとサーバ間が保護されます。 ・PHPより手前のセッションレイヤのレベルで保護されます。つまり必ずSSLの処理がされた後にPHPの処理がされます。ただし、SSLとPHPは全く別の処理ですので、お互いに意識する必要はありません(依存関係はありません)。 <メールはSSL範疇外> 「内容的にはフォームに入力したものをメールで受け取る」とありますが、メールはSSLの範疇外ですので保護されません。PHPからインターネット経由でメールを受信する場合は、そのメールは保護されない状態でインターネットを流れるわけですから、ユーザの個人情報が漏洩する可能性があります。 ※インターネットを経由せずLAN内に閉じてメール受信する場合などは安全とは言い切れないものの、第三者に情報漏えいすることはないと思われます。 <PHPで個人情報を受け付けた後の対策> ・メールをS/MIMEというメッセージフォーマットで暗号化する方法がありますが、そういうアプリケーションを開発する必要があります(かなり大変だと思います)。 ・PHPで個人情報を暗号化してメール送信する方法がありますが、PHPに詳しくないので具体的な方法はわかりません。ただし受信する側で暗号化データを復号するためのツールを別途用意する必要があります。 ・他に容易な方法があればよいのですが、思いつきません。 というわけで中途半端な解説になってしまい申し訳ありません。

その他の回答 (2)

  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.2

>一般的にSSLのページでは、管理者はどのように情報を受け取るのでしょうか? SSLはあくまでも通信を暗号化するものです。 受け取るデータは平分時と何ら変わりはありません。 その辺を意識する必要はありません。 >具体的にはどのような手法があるのでしょうか? 全開の解答で示した通り、サーバーローカルでメールを読むというのも一つの手です。 他にも、送られてきた内容をDBに取り込み、それをSSL通信化のブラウザで確認するというのも一つの手です。 方法は考えれば無限にありますよ。

  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.1

SSLとPHPは全く無関係です。 よって、コーディングのさい、SSLを意識する事はありません。 *注意 あえて言えば、例えば https://www.sample.com/form.phpで入力してもらうとします。 しかしながら、http://www.sample.com/form.phpでも普通に送信出来てしまいます。 (違いはhttpとhttps) ですから、PHP側で、その辺りを制御し、強制的にhttps://www.sample.com/form.phpで送信してもらうようにしてもらうかどうかです。 > 内容的にはフォームに入力したものをメールで受け取る。 メールを平分で飛ばせば、いくらユーザー→サーバー間が暗号化されていても、その時にdumpされてしまう恐れがあります。 (そのメールをサーバーローカルで読むのなら問題ありませんが) しかしながらユーザーにはそれは分かりません。 もしSSLを用いる理由が、ユーザーを安心させたいという事であれば、別にメールでもいいかもしれませんが、もし本当に個人情報うんぬんと言われるのなら、何か対策をしなければなりません。 しかしこのような事を言ってしまえば、そもそもSSLをカマス意味があるのかどうか…と言う問題になってしまいますけどね(^^; その辺りは、sana0930さんの考え方次第だと思いますよ。

sana0930
質問者

補足

回答ありがとうございます。 本当に個人情報うんぬんと言われるのなら、何か対策をしなければなりません。とありますが、具体的にはどのような手法があるのでしょうか? 一般的にSSLのページでは、管理者はどのように情報を受け取るのでしょうか?

関連するQ&A

  • SSLのサーバーとかはどうやって手に入れるのですか?

    ネットビジネスをする予定があるのですが、その際に、SSLの入力フォームがないとまずいと思っています。そこで、レンタルサーバー屋にそういった入力フォームがSSL対応にしてもらうにはどんな風に言えばよいですか?また、一般的に私が、SSLのベリサインとかと契約する必要があるのですか?それともレンタルサーバー屋が契約して、それの一部を私が借りる形ですか?

  • SSLのページについて

    宜しくお願い致します。 SSL-IDを取得して、特定のページ(入力フォーム等)だけSSLで通信したい場合に、HTMLやPHP上でなにか指定する必要があるのでしょうか?SSLにしたくないファイルと同じフォルダにファイルをアップして、アドレスに『https』と入れるだけなのでしょうか?

  • レンタルサーバのSSL

    現在、ロリポップでサーバをレンタルしています。 SSLでのセキュアなフォームをおきたいと考えているのですが、初めてなもので質問させて頂きます。 私のドメインをhttp://www.AAA.comとします。 SSLのきくメールフォームをレンタルし、http://www.AAA.comからレンタルしたメールフォームのサイトへリンクする。そのサイトのフォームから入力された内容はレンタルメールフォーム側のサーバに蓄積される。そこからデータをエクスポートするのは可能だとします。エクスポートしたデータを自分のレンタルしているサーバのDBに自動で入れたいのですが、これは手動じゃなきゃ無理なのでしょうか。 ※SSLを使わなければ、自分のレンタルしているサーバ内でフォームを作り、DBに直接送信できるのですが・・・。 ※SSLをgeotrust等で独自に取り、レンタルサーバで使用する手もあるのですがこれでは費用が高く付いてしまう・・・。 (1)http://www.AAA.com→レンタルメールフォームで送信→レンタルメールフォーム内のDBに蓄積→ローカルにエクスポート→http://www.AAA.comのDBにインポート ではなく、 ↓ (2)http://www.AAA.com→レンタルメールフォームで送信→http://www.AAA.comのDBにインポート と手動を省ければと考えています。 ロリポップはSSL不可です。 チカッパ(http://chicappa.jp/)などは共用SSLがありますが、この共用SSLが利用可のレンタルサーバでは(2)が可能と考えてよろしいのでしょうか? SSL可でレンタルしたサイト→レンタルしたサイト以下にあるオリジナルのメールフォーム→SSL可でレンタルしたサイトのDB といった具合に。 どなたか経験あるかたいらっしゃいますでしょうか? ご教示お願いいたします。

  • SSLでメールフォーム

    メールフォーム入力画面でSSLを使用したいと思っています。SSLはレンタルサーバの共有SSLを使用します。SSLの対応にはメールフォームのプログラム(CGI)がSSLに対応していないとダメなのでしょうか? メールフォームは有料cgiを使っています。

    • ベストアンサー
    • CGI
  • SSL 設定

    友人のお店のHPで、問い合わせフォームをPHPで何とか作りました。 SSLを設定したいのですが、方法が分かりません。 独自ドメインでさくらサーバーを使っています。 マニュアルを読んではみたものの・・・ 初心者でも分かるやり方を教えてください。お願いします。

  • SSLの導入と認証について

    SSLの導入と認証について メールフォーム内に口座を記入する項目があるのですが、 ・クライアントとしてはべりサインマークなどを貼って信頼性を出したい。 ・使用しているサーバーを見ると「SSL通信(汎用型)のサーバIDは○○(サーバー会社名)で取得しておりますので、お客様のサイト上でシールを使用することはできません。」と書かれている と、いうような状態です。 このような場合、クライアント側の希望する「信頼性」という点でどのような対策をとればよいのでしょうか?テキスト等で「このサーバーは~」というような文言を入れてもよいのでしょうか?? また、送信プログラムに関してですが、当方PHPでシステム自体は組めるのですがそれ以外に特別なプログラムを利用したりしないといけないでしょうか? (認識としては、PHPで組んだプログラムをSSLサーバにアップするというイメージなのですが…) プログラムが特殊でこちらですぐに対応できなさそうな場合は外注も考えているのですが、その場合はどのようなところへお願いするのがよいですか?(大き目の制作会社とかでしょうか??) クライアントもどこに聞けばよいかわからず、私に相談に来たのですが私もどういう会社に問い合わせてみればいいのかもよくわからず右往左往しております。(検索ワードも良くわからない状態です) 宜しくお願いします。

  • SSL対応のメールフォームを作成するのに必要な知識

    SSLを使ったメールフォームを作成したいと考えていますが、今までSSLは見て見ぬフリしてきたもので、よく分かりません。 まず、メールフォームを設置するサーバはSSL対応のサーバです。そこに、住所・氏名等を入力してもらうメールフォームを置きたいと考えています。私はまず何をすればいいんでしょうか? セキュリティ面はもちろん、ユーザーの安心感のためにもベリサインを使いたいんですが、値段がイマイチ分からないので、あまりに高額な場合はOpenSSLにしようと思っています。 メールフォームは、メール送信と同時に、サーバ上のCSVファイルにログを書き込む形にしたいと考えています。 以上の事を踏まえて、どなたか詳しい方、アホにも分かるように教えていただけないでしょうか。SSLを使う場合のメールフォームも、お勧めのプログラムがあればお願いします。

  • phpMyAdminはSSL下でアクセスする必要がない?

    以前ネットワークセキュリティカテゴリで「問い合わせフォームをSSL対応させたい」(QNo.3671803)を質問させていただいた者です。その後phpMyAdminをレンタルサーバーにインストールし、phpも少し勉強してSSL下にあるPHPのフォームページから入力されたデータをDBに格納することまでなんとかできたのですが、このphpMyAdminがある領域にパスワード制限はかけたものの、http://からでもアクセスできてしまうことにさきほど気が付きました。これをhttps://からしかアクセスできないようにするにはどうすればいいのでしょうか。もしくはphpMyAdminがhttps://下にある必要はないのでしょうか?? 超初歩的な質問であることは重々承知なのですが、 どなたかどうかよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 共用SSLか独自SSLか

    住宅リフォーム関係の商用HPを外注で制作中の者です。問い合わせ、見積り依頼のフォームが有るのでSSLを導入したいと考えていますが、色々とレンタルサーバーを検討していくなかで、ひとまず共用SSLで運用してみるか、商用サイトなのだから信頼性も考慮して独自SSLとすべきかで迷っています。フォームに入力される情報は氏名、住所、電場番号などの個人情報が中心で、クレジットカード番号等金銭が絡む情報はありません。サイトは独自ドメインでの運用を考えてますが、共用SSLで運用することのデメリットを自分なりに考えてみても、ドメインが変わってしまう、引いては信頼性の面でマイナス、といったことくらいしか思い浮かびません。SSLのページだけドメインが変わってしまうこと自体が、ユーザー(お客様)にとってどんな影響、インパクトがあるのか?という点でいまいちピンときません。商用サイトにおいて、共用SSLを導入することのデメリット、ユーザー側から見た悪い点など、ご教示頂ければと思います。なにぶん素人の質問ですので的外れな表現などあるかもしれませんが、宜しくお願い致します。

  • SSLの設定方法

    自分の契約しているサーバーから、SSLの証明をもらったのですが、このよく分からない英語が並んだものをどうしたらよいのか分からないで困っています・・・ パソコンは初心者です。ビルダー7でHPをつくっています。 住所や名前を入力してもらうページにSSLをつかいたいと思っています。 これをそのままHTMLとして貼るのではないですよね? どうやってこのあと設定したらよいのでしょうか。

専門家に質問してみよう