SSL(HTTPS)

サーバ

UbuntuへLet’s Encryptをインストール(Certbot編)

今回は、UbuntuサーバにLet's Encryptをインストールする方法をまとめました。

インストール前の事前準備

まず、インストールに必要な依存パッケージを設定します。

mod_sslを有効にする

mod_sslが有効になっていない場合には、

# a2enmod ssl

で有効化しておきます。

Gitをインストール

Gitからソースをクローンするので、
インストールしていない場合には、

# sudo apt-get install -y git

でGitをインストールしておきます。

これで事前準備は完了したので、
ここからがインストールの開始です。

証明書のインストール

GitからCertbotをインストール

■作業用のディレクトリに移動
# cd /usr/local

■Gitから「Certbot」をクローン
# git clone https://github.com/certbot/certbot

これで、「/usr/local/certbot」以下に「Certbot」がインストールされました。

証明書を発行

# certbot-auto certonly --webroot --webroot-path /var/www/html/ -d sample.com -m info@sample.com
※エイリアス「www」あり・なしの両方に対応する場合には、「-d」を2つ設定する

↓その場合のコマンドはこんな感じ

# certbot-auto certonly --webroot --webroot-path /var/www/html/ -d sample.com -d www.sample.com -m info@sample.com

正常に処理が完了すると、以下のようなメッセージが出ます
====================================
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for sample.com
http-01 challenge for www.sample.com
Using the webroot path /var/www/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/sample.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/sample.com/privkey.pem
Your cert will expire on 2018-12-24. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again. To non-interactively renew *all* of your certificates, run
"certbot-auto renew"
- If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
====================================

証明書が発行されているかを確認

# ll /etc/letsencrypt/live/sample.com/

drwxr-xr-x 2 root root 4096 Sep 25 19:40 ./
drwx------ 5 root root 4096 Sep 25 19:40 ../
lrwxrwxrwx 1 root root 34 Sep 25 19:40 cert.pem -> ../../archive/sample.com/cert1.pem
lrwxrwxrwx 1 root root 35 Sep 25 19:40 chain.pem -> ../../archive/sample.com/chain1.pem
lrwxrwxrwx 1 root root 39 Sep 25 19:40 fullchain.pem -> ../../archive/sample.com/fullchain1.pem
lrwxrwxrwx 1 root root 37 Sep 25 19:40 privkey.pem -> ../../archive/sample.com/privkey1.pem
-rw-r--r-- 1 root root 682 Sep 25 19:40 README

Apacheから証明書を参照できるように設定

証明書の発行が完了したら、
Apacheから証明書を参照できるように読み込みの設定します。

Apacheのconfを修正

# sudo vi /etc/apache2/apache2.conf

でconfファイルを開いて以下を追記します

ここで、Apacheを再起動します。
# sudo service apache2 start

ブラウザからの確認

実際に「https://sample.com」と「https://www.sample.com」にアクセスしてみて、
正常に画面が表示されるかを確認して下さい。

問題なく表示されていれば、
これでインストールまで完了です。

自動更新設定

Let's Encryptは90日毎に更新が必要になります。
が、毎回更新を行うのは手間になるので、Cronで自動更新をスケジューリングしておきます。

自動更新設定の前

自動更新設定の前に、Cronで設定するコマンドの実行テスト
# sudo /usr/local/certbot/certbot-auto renew --post-hook "sudo service apache2 restart"

※インストールしたばかりなので、以下のようなメッセージが出ればOK
====================================
The following certs are not due for renewal yet:
/etc/letsencrypt/live/sample.com/fullchain.pem expires on 2018-12-24 (skipped)
No renewals were attempted.
No hooks were run.


====================================

証明書自動更新の設定

「/etc/cron.d/」の中に「certbot」というファイルを作成して、

スケジュールを設定することにします。
# sudo vi /etc/cron.d/certbot

で、以下を記述します。

30 12 * * 1 root /usr/local/certbot/certbot-auto renew --deploy-hook 2>&1 "sudo service apache2 restart" >&1 | mail -s "Let's Encrypt auto update" info@sample.com
※毎週月曜日の12:30に実行
※念のために、実行結果を指定のメールアドレスに届くようにしています。

これで、設定は完了です。

弊社では、以下の方に向けて、WordPressの短期学習プログラムを
格安(15,000円~)で提供しております。

  • 個人でWordPressを使ったサイト(個人ブログやアフィリエイトサイトなど)構築をお考えの方
  • WordPressを使って副業で稼ぎたい方
  • フリーランスでWordPressを使ったお仕事をお考えの方
  • 自社でホームページの構築・運用をお考えの方
  • 企業のWEB担当者の方

内容

基本的には、初心者の方を対象にした学習プログラムです。

※ WordPress制作の上級者の方の場合、弊社の学習プログラムはあまり役に立たないと考えています。

  • ・ WordPressのインストールからセッティングの方法
  • ・ WordPressのテーマ選びについて
  • ・ WordPressのプラグイン選びと設定方法について
  • ・ サーバの準備方法
  • ・ ドメインの取得・管理の方法
  • ・ FTPの設定方法
  • など

ご用意頂くもの

  • ・ ノートPC
    ※ 弊社はWindowsを業務で利用しておりますので、できればWindowsのPCをおすすめしています。
  • WordPressでサイトの制作を考えているが、何から始めればいいのか分からない。
  • ドメインやサーバはどうやって準備すればいいの?
  • そもそもホームページの公開には何が必要なの?

などなど、

どのような内容でも構いませんので、お気軽にお問い合わせ下さい。

お客様の目的をお聞きした上で、最適の学習プランを提案致します。

ご興味のある方は、以下の内容を記載の上、一度お問い合わせ下さい。
こちらより、折り返しメールを致します。

  • ① お名前
  • ② 折り返し先のメールアドレス
  • ③ 希望の学習内容

関連記事

  1. PHP(ピー・エイチ・ピー)

    PHP

    【CVE-2017-5340】PHP7 脆弱性の対応

    結構前の話になってしまうのですが、PHP7.0.xxとPHP7.1…

  2. サーバー設定

    サーバ

    「ERROR: Module php7.0 does not exist!」というエラーが!!

    PHP7のApacheモジュールを有効化しようと、# sudo a…

  3. Apache(アパッチ)

    サーバ

    開発サーバで文字化けが!!

    弊社の開発サーバーにEUC-JPで作成したサイトをアップすると、な…

  4. サーバ

    FFFTP上で「.htaccess」が見えない

    自分たちでもFFFTPで接続して作業されている業者さんがいらっしゃるの…

  5. サーバ

    【KUSANAGI】プロビジョニング

    前回の記事で初期設定まで完了したので、次はプロビジョニングを行い、…

  6. Apache(アパッチ)

    WP(WordPress)

    WP パーマリンク設定に必要な.htaccessを有効化!!

    WordPressを使ってブログを構築して、パーマリンクの設定を「…

最近の記事

  1. MySQL(マイエスキューエル)
  2. WordPress(WP)
  3. SEO(エスイーオー)
  4. ホームページを活用
  5. SEO(エスイーオー)
  6. SNS(ソーシャルメディア)
  7. ホームページ制作ツール
  8. WordPress(ワードプレス)
  9. SNS(ソーシャルメディア)
  10. Database(DB:データベース)
PAGE TOP