Apache 2.4:無料SSL証明書「Let’s Encrypt」導入

無料SSL証明書の「Let’s Encrypt」を Apache 2.4環境に導入します。(2016-05-08作成)

vitieubao / Pixabay

Let’s Encrypt とは

認証局( CA )として「SSL/TLSサーバ証明書」を無料で発行するとともに、証明書の発行・インストール・更新のプロセスを自動化することにより、TLS や HTTPS(TLSプロトコルによって提供されるセキュアな接続の上でのHTTP通信)を普及させることを目的としているプロジェクトです。

1.環境整備

2.Python をアップデートする

【参考】 SCLとは、Software Collections(以下 SCL) の略、Red Hat が提供する最新アプリケーション(安定版)のパッケージを提供、yumの旧パッケージと共存できる、サポート期間は「3年間」である。yum でのインストールしようとしたけど、古いのしか無い場合、自分でコンパイルする必要もなく、依存関係の解決から解放されます。

3.Let’s Encypt Client のインストール

★依存パッケージに問題がないようであれば、以下ログが出力されます。

★依存関係のエラーとなった場合…依存するパッケージのインストールを行う。

4.SSL証明書の作成と設定

Let’s Encryptの「SSL証明書」発行には、次の2通りの方法があります。

standaloneモード (httpdサーバ無しで発行する)
webrootモード (稼働中のhttpdサーバを使う)

standaloneモードは、証明書を取得するときに「80番ポート」と「443番ポート」を使うサーバを立ち上げます。つまり両方のポート(httpdサーバー)は停止する必要があります。webrootモードは、既に稼働中の httpdサーバで発行する場合、使用します。

【参考】 どちらの証明書発行モードでも「Let’s Encrypt」側からの「ドメイン認証」のために、サーバの「80番ポート」に外部からアクセスできる必要があります。ファイアウォール等で「80番ポート」をフィルタリングしている場合は、許可する必要があります。

★【standaloneモードでの発行】

⇒メールアドレスの入力が求められるので入力して、<了解>を選択します。
⇒利用規約に同意するか聞かれるので、<Agree>を選択します。

成功例!!

失敗例!! ⇒名前解決できる FQDNと同一のサーバーである必要がある。

★【webrootモードでの作成】

【参考】 http://使用するFQDN/.well-known 配下に「認証用ファイル」が設置されます。

5.Apacheサーバー設定

6.SSL証明書の自動更新設定

★ログイン毎に、自動的に「python2.7.x」を有効化にします

★自動更新を httpdサーバー無停止で行う

★Let’s Encrypt の証明書の有効期限は「90日間」のため、定期的に更新する必要があります。

付録.1 「Let’s Encrypt」の証明書の取得をやり直す場合…

「/etc/letsencrypt」 自体を削除して、httpdサーバーの「https」設定を無効にします。その後、本紙手順3.から再実行します。

以上

Pocket

コメントを残す