Apache HTTPは、まだ使用されているWebサーバーの市場リーダーです 最も忙しいサイトトップ100.
Nginxが徐々に回復していることがわかります。システム/ Web /ミドルウェアの管理を行っている場合は、その後、あなたは両方のApacheを知るようになった & Nginx Webサーバー.
ただし、この記事では、Apache Webサーバーのみを取り上げます。.
SSLが実装されると、構成されたドメイン/ IPはHTTPS経由でアクセス可能になります。はじめましょうか.
ハイレベルでは、次のことを行います.
- SSLモジュールを使用してApache HTTP 2.4.5をコンパイルする
- SSL証明書を取得
- SSLをサポートするようにApacheを構成する
ソースからSSLを使用してApacheをインストールする
SSLを構成するには、Apache HTTPをmod_sslでコンパイルする必要があります。 CentOS 7 VMを使用します デジタルオーシャン これを実証する.
- rootでLinuxサーバーにログインし、Apacheの最新バージョンをダウンロードします。
wget http://www-us.apache.org/dist//httpd/httpd-2.4.25.tar.gz .
- gunzipコマンドで抽出
gunzip -c httpd-2.4.25.tar.gz |タールxvf –
- 新しいフォルダが作成されますhttpd-2.4.25」
- 内部に入り、次のconfigureコマンドを実行します
./ configure –enable-ssl –-enable-so
注意:これを行うのが新しいサーバーの場合、APR、PCRE、OpenSSLに関連する問題が発生する可能性があります。トラブルシューティングガイドを参照してください。.
上記のconfigureコマンドでエラーが発生しないことを確認し、次にmakeコマンドでインストールする必要があります.
作る
インストールする
通常どおり、上記のコマンドからのエラーがないことを確認します。これであなたは インストール済み SSLをサポートするApache Webサーバー.
SSL証明書の取得
認証局によって署名されたSSL証明書を生成して取得する方法は複数あります.
イントラネットWebサーバーにSSLを実装することを検討している場合、組織のほとんどに内部証明書発行者チームがあるため、それらを確認する必要があります。.
しかし、それでもCSR(証明書署名要求)を生成する必要があり、OpenSSLを使用してそれを行うことができます.
ただし、セキュリティで保護したい場合 インターネット向けURL その後、VeriSign、GoDaddyから証明書を購入できます。, Namecheap, など、またはLet’s Encryptから無料の証明書を取得.
Let’s EncryptはLinux Foundationコラボレーションプロジェクトで、 無料のSSL / TLS証明書. Let’s Encryptを使用して、ドメインの証明書を1つ取得します– Chandan.io
CSRを生成する方法は複数ありますが、 最も簡単 私が見つけたものは「無料のSSL”オンラインツール.
保護したいURLを入力してください
リストされた方法のいずれかでドメインの所有権を確認し、ドメイン証明書ファイルをダウンロードします.
Apache Webサーバーを構成するために次に使用する3つのファイルを取得します.
- 鍵–これは鍵ファイルであり、誰とも公開しないでください。
- 証明書–ドメインの実際のSSL証明書
- Ca_bundle –署名者ルート/中間証明書
ダウンロードしたファイルをWebサーバーに転送します。まもなく必要になります.
Apache SSL設定
そして最後のステップは、HTTPS経由でリクエストを処理できるようにApacheを構成することです。.
- Apache Webサーバーにログインします。
- httpd.confファイルのバックアップを取る(デフォルトの場所/ usr / local / apache2 / conf /)
- viエディターでファイルを開き、mod_sslモジュールを確認します & httpd-ssl.confが存在し、コメントされていない
LoadModule ssl_module modules / mod_ssl.so
conf / extra / httpd-ssl.confを含める
我々は使用するだろう httpd-ssl.conf 証明書の詳細を構成するファイル。適切なパラメータが存在することを確認するために、次のことが必要です.
- SSLCertificateFile –以前にダウンロードした証明書CRTファイルパス
- SSLCertificateKeyFile – private.aキーファイルのパス
- SSLCertificateChainFile – ca_bundle.crtファイルパス
ヒント:「ssl」という新しいフォルダを作成し、証明書に関連するすべてのファイルをこの中に保持することができます.
- 必要に応じてバックアップを取り、viエディターを使用してファイルを変更します。.
SSLCertificateFile "/usr/local/apache2/conf/ssl/certificate.crt"
SSLCertificateChainFile "/usr/local/apache2/conf/ssl/ca_bundle.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/ssl/private.key"
次に、「サーバーの名前」ディレクティブ。通常、これはドメイン/ URL名です
ServerName chandan.io
- ファイルを保存してApache Webサーバーを再起動します
cd / usr / local / apache2 / bin
./ apachectl stop
./ apachectl start
そして最後に、ドメインが新しく構成されたWebサーバーIPにマップされていることを確認する必要があります。完了したら、httpsでドメインにアクセスしてみます.
そしてご覧のとおり、Chandan.ioは https経由でアクセス可能 私が設定した証明書を使って.
上記の手順はSSL証明書の設定に不可欠であり、SSLをさらに調整して、ここで説明したセキュリティを強化および保護する必要があります。.
稼働前に、WebサーバーのSSL / TLSをテストして、一般的なセキュリティの脆弱性にさらされていないことを確認することもできます.
これにより、Apache WebサーバーにSSL証明書を実装する方法がわかり、HTTPS経由でURLにアクセスできるようになれば幸いです。.
あなたがApache Webサーバーに慣れていない場合は、これを取ることをお勧めします オンラインコース.