WebサイトSSL証明書の初心者向けガイド
個人データを扱うWebアプリケーションを構築する場合、セキュリティが最優先事項です。これは、オンラインストアやショッピングカートだけでなく、TwitterやFoursquareなどの人気のソーシャルネットワークにも当てはまります。 SSLは、インターネットを介してデータを送受信できるという点でHTTPとよく似た安全なプロトコルです。.
全体の概念は確かに少し複雑ですが理解するのはそれほど難しくありません。あなたがウェブマスターであるか、または単にSSL証明書について学ぶことに興味がある誰かであるならば、このガイドはあなたにとって完璧であるべきです。私は初心者のためにレイアウトするために最もわかりにくい用語のこのセットをまとめました。ここでブラウズしたり、トピックに関する他の外部記事を読んだりしてください。セキュリティはあらゆるWebサイトの成功に不可欠であり、SSLは全体像の足がかりに過ぎません.
SSLとは?
SSLプロトコルの略 セキュアソケットレイヤ もともとNetscapeによって開発されました。これは、外部の第三者が接続を乗っ取ることができないように、ユーザーとサーバーの間でやり取りされるデータが暗号化/復号化されるプロセスです。.
SSLは、自分とエンドWebサーバーの両方の資格情報を検証するデジタルパスポートのように動作します。両方のIDが検証されると、SSLはHTTPSを介した安全な接続を許可します。このプロセスは 証明書. 私はSSL証明書の重要な側面を分解しました。
- 所有者の名前
- 識別に使用される証明書のシリアル番号
- 証明書の有効期限
- 情報を暗号化するために使用される証明書の公開鍵
- 情報の復号化に使用される証明書の秘密鍵(通常はWebサーバーから取得されます)
これらすべての情報の用途を完全に理解する必要はありません。場合によっては、証明書にさらに詳しい情報が記載されています。まだそれのどれも直接ユーザーに影響を与えません。サーバーとリモートコンピュータ間の接続にのみ影響します。.
証明書の設定
おそらくSSLがどのように機能するのかという要点を理解することができます。ロックされた金庫の中でメッセージを転送するような、より複雑な形式のデータの受け渡しです。 SSL証明書の重要な要素を覚えたり、Webサーバーとの接続方法を覚えたりする必要はありませんが、自分で設定する前に少なくともプロセスの基本を理解しておくことをお勧めします。.
SSL証明書は、実際にはWeb上の多数の信頼できるベンダーから購入されています。各証明書には有効期限があります。つまり、Webサイトを安全に保つためには証明書を更新する必要があります(通常、これは毎年です)。それは対処するのが本当に面倒なようですが、幸いなことにFatCowのような多くの人気のあるウェブホストがセットアッププロセスを手助けしてくれるでしょう。.
最初にあなたはあなた自身のWebサーバー上でCSRまたは証明書署名要求を生成する必要があります。 SSL証明書を取得する前にCSRが必要です。 Webサーバーに対する完全な管理者権限がある場合は、これを自分で作成することができます。ただし、自分自身でこれを行うことができない可能性があるため、最初にWebホストに連絡することを強くお勧めします。そのことで害はありません、実際には、それは実際にはあなたの仕事をはるかに簡単にします!
この暗号化されたCSRを入手したら、証明書プロバイダに連絡することができます。 VerisignやThawteなど、ほんの一握りの信頼できるベンダーがあります。証明書を購入したら、Webホストのサポートに連絡してください。.
さまざまな種類のSSL
SSL証明書を設定する最も一般的な方法は、自分のプライマリIPアドレスを使用することです。これは 専用SSL証明書. それはあなたのドメインとウェブサーバーにのみ適用されます。誰もが専用のホスティングプランを購入するのに十分なお金を持っているわけではありませんが、私たち全員にとって幸運なことに、他にも解決策があります。.
通常、使用できるSSL証明書は3種類あります。一部のサービスプロバイダは期間限定のトライアルオファーとして無料の証明書を提供するかもしれませんが、これらの証明書は標準的なHTTP接続よりも決して安全ではなく、彼らはすぐに期限が切れます.
- 専用SSL - これが最も安全で、明らかに最も高価なソリューションです。 HTTPS接続は、指定されたIPアドレスを介してターゲットとされているルートドメインに対してのみ検証されます。.
- 共有SSL - 共有ホスティングを提供するWebホストは、同じIPアドレスを指す複数のドメイン名を持つことがあります。この場合、ホストはさまざまなWebサイトにまたがる各サーバー上の単一のSSLを管理するのがはるかに簡単になります。.
- ワイルドカードSSL - これらは、サーバー構成に基づく専用または共有のSSL証明書に似ています。ワイルドカードSSL証明書はあなたのウェブサイトのための複数のサブドメインをターゲットにします。あなたがあなたのウェブサイトの異なる機能を分割するならば、これは実行可能な解決策です。 shop.domain.com、checkout.domain.comなど.
始めたばかりの場合は、共有SSL設定を使用することを強くお勧めします。専用のWebホスト/ IPアドレスをすぐに購入できるとは考えにくいです。たとえあなたができるとしても、専用のSSL証明書のコストは厄介です。しかし、可能であれば絶対に検討する必要があります。.
ただし、このガイドは初心者を対象としているため、共有証明書で始めるには十分すぎると思います。.
ステップバイステップのチュートリアル
SSL証明書に慣れるための最良の方法は、実例を使用することです。 Namecheapからの小さなComodo証明書をまとめましょう。彼らは非常に手頃な価格で初心者を始めるのに最適です。プロセスと概要を説明するだけで十分なので、これはこのチュートリアルの完全な教材になります。.
CSRを生み出す
まず始めに、サーバーのバックエンドに署名要求を作成する必要があります。私は自分のドメインの1つをテストするためにHostGatorを通してビジネスホスティングアカウントを使用しています。各Webホストは少し異なりますので、問題がある場合はサポートスタッフに確認する必要があります。このURLは、HostGatorアカウントでのCSR生成に使用されます。.
この情報の多くは、私のドメインのWhoisウェブデータと一致しなければならないことに注意してください。このフォームに必要なすべての情報を提供するWhois Domain Toolsアプリを使用します。ドメインプライバシーがインストールされている場合は、CSRが一致するように、自分のデータではなくこのデータを使用する必要があります。.
このプロセスは登録を完了するために最大24時間かかるかもしれません。 15分以内に返事がありました。証明書に移動して今すぐ購入しましょう。署名要求とともにインストールする準備ができました。.
購入しよう!
コモドの計画は、年間9ドルからほぼ100ドルまでの範囲です。私はEssentialSSLパッケージを探しています。これは年間25ドルしかかかりません。いくつかの選択肢を考えれば、これは悪いことではありません。.
証明書に満足できない場合、このプランには15日間の返品ポリシーが付いています。さらに私達のドメイン名はwwwサブドメインと非wwwに対して保護されます。このパッケージを私のショッピングカートに追加したら、チェックアウトできます。 Namecheapでは、既存のアカウントにログインするか、新しいアカウントにサインアップする必要があります。.
すべてのアカウントデータを入力すると、最後の支払い画面が表示されます。私のアカウント、クレジットカード、またはPayPalに保存されている資金で支払うこともできます。すべてが順調に進んだ場合は、注文確認フォームにリダイレクトされます(この情報を記載した電子メールをさらに受信する必要があります)。これまでのところすべてが良さそう!
最終インストール
CSRはあなたのウェブホストからの電子メールに現れるべきです。キーは、ごちゃごちゃした文字とキーのブロックのようなものです。これがSSL検証に必要なものです。 Namecheapに戻り、SSL証明書のページを見つけてクリックしましょう。 “有効にする”.
この新しいページでは、サーバーの種類を選択してCSRキーを入力する必要があります。デフォルトの選択としてApache + OpenSSLを選択しました。これはApacheの一般的な設定ですが、よくわからない場合は、事前にホストに確認してください。あなたのウェブホストはもっと長い間戻ってきたはずです RSAキー これは、サーバー側でプライベート認証に使用されます。短いCSRキーをボックスにコピー&ペーストして送信するだけです。.
私たちはそれからに送信される電子メールを生成します “承認者” ドメイン名これにはあなたのSSL証明書についての情報とそれをホスト上で有効にする方法が含まれます。この最後の送信フォームでは、RSAの秘密鍵といくつかの追加のSSLバンドル情報が必要になります。私達がCSRを渡した後これはすべてNamecheapから供給されます.
Webホストによっては、共有環境でSSLを使用できない可能性があることに注目する価値があります。 HostGatorを使用すると、企業は自分のアカウントをプライマリIPアドレスにアップグレードすることができるので、証明書と競合するエラーが発生しません。 HostGatorからのSSLインストールフォームは単純明快で、また非常に迅速に検証されます。.
あなたのホストがすべてが大丈夫であることを確認した後、我々はすべて行く準備ができているはずです。これには数時間から1日以上かかることを理解してください。辛抱してあなたのEメールをチェックし続けなさい。確認したら、HTTPSでWebサイトにアクセスしてみます。証明書の詳細はすべてアドレスバーに表示されます。あなたが始めたばかりのときはいつも奮闘しますが、必要ならSSLプロバイダやウェブホストに助けを求めることを恐れないでください.
安全な接続を管理する
私はこのHostgatorのサポート記事がセットアッププロセスを理解するのに非常に役立つことがわかりました。あなたがHostGatorの顧客ではないとしても、あなたはどんなリモートWebサーバーを管理するためにもcPanelを使用するでしょう。これは、1&1ホスティング、Bluehostなどに当てはまります。.
しかし、サードパーティのWebホストでSSL設定を使用することについての最もよい部分は、あなたがあなたのコードに変更を加える必要がないということです。証明書を購入した後は、ほとんどのWebホストはそれらをインストールするのに十分なほど礼儀正しくなります。すべてがスムーズに実行された後は、HTTPおよびHTTPSを介したすべての接続は同じように機能するはずです。.
WebブラウザのURLアドレスバーを確認して、証明書が認証されているかどうかをテストできます。あなたはあなたのコンピュータとリモートWebサーバー間の確認されたSSL接続を示す小さな南京錠アイコンに気付くべきです。鍵のアイコンをクリックすると、ブラウザによってはさらに証明書情報が表示されることがあります。.
Apache .htaccessリダイレクト
HTTPSプロトコルを使用して訪問者を把握できない場合は、リダイレクトスクリプトの使用を検討してください。これは一般的にファイルを使ってApacheサーバー上でセットアップされます。 .htaccess, 多くのWebホストでcPanel内で正しく設定できます.
あなた自身の.htaccessファイルを設定するのに使用できるいくつかのサンプルコードを以下に追加しました。これにより、すべての着信トラフィックがwwwサブドメインを持つhttps://にリダイレクトされます。あなたはwwwを削除することができますので、すべてのトラフィックは代わりにに向けられるでしょう https://yourdomain.com/ そして書き換えルールはまだ完全に実行されます.
RewriteEngine On RewriteCond%HTTPS = off RewriteRule ^(。*)$ https://www.yourdomain.com/$1 [R = 301、L] RewriteCond%http_host ^ yourdomain.com [NC] RewriteRule ^(。 *)$ https://www.yourdomain.com/$1 [R = 301、L]
ファイルの参照
最も厄介な問題は、相対ファイルパスではなく絶対URLを参照することです。この意志 ではない 完全に安全な接続を表示します。 “保護されていないアイテム” ページに表示されている。ビデオ、画像、スタイルシートなどの外部メディアを呼び出す場合は、ローカルで行う必要があります。以下に例を示しました。
コードの最初の部分では、安全でない可能性のある文書を安全なページに読み込んでいます。これは、インテリジェントなハッカーがあなたの暗号化を回避できるまさにその方法です。ほとんどの場合、JavaScriptまたはVBScriptを使用して解析しました。しかし安全を期すために、あなたの資産がHTTP経由で直接引っ張られていないことを確認してください。.
何らかの理由で絶対URLからファイルを取得する必要がある場合は、代わりにHTTPSを使用してください。外部のWebサイトまたはサーバーでファイルをホストしている場合は、別のHTTPS接続を確認できないため、問題が生じる可能性があります。あなたがまったくこれらの問題に遭遇しないように1つのIPの下ですべてのウェブページメディアを統合し続けるように努力しなさい!
関連リンク
- 私は5のように説明:オンラインセキュリティ証明書、SSL、HTTPSとは何ですか、またそれらはどのように機能しますか?
- SSL認証の進化[インフォグラフィック]
- SSL証明書の生成とインストール手順
結論
この入門ガイドによって、SSLの世界についてのちょっとした洞察が得られたことを願っています。 Webセキュリティは、多くの個人ユーザーデータを保護する急成長中の業界です。 AmazonやeBayを含む有名なオンラインショップはすべて何年もSSLを使用しています。.
私はSSL / HTTPSはあなたがただ理解するために勉強することができるトピックではないことを認めます。プログラミングと同じように、あなたは本当に自分の証明書を設定するために飛び込んで手を汚す必要があります。それは後に着手するのが困難な仕事ですが、それは長期的には素晴らしい達成感を提供します。他の有用なガイドや関連資料を知っているのなら、ポストディスカッションエリアで自由に共有してください。.