Let’s encryptのSSL証明書をCertbotを使って、Nginxに設定する方法

Nginxで各種ドメインを設定して、

Webサーバーを管理していく中で、

SSL証明書を設定しようとしたときに、

無料のLet’s Encryptから証明書を取得して、

設定しようとする方法が、

個人的にはよくやる方法です。

この方法に関しては、

各種コマンドなど、

忘れたりするので、

概要も含めて、

メモを残します。

「Let’s Encrypt」と「SSL証明書」

Let’s Encryptは、

  • 無料でSSL証明書を提供するオープンソースの認証局(CA)

です。

SSL証明書は、

ウェブサイトのセキュリティを強化し、

ユーザーのデータを保護するために使用されます。

有料のSSL証明書もありますが、

中小企業や個人ブログ運営者などにとっては、

予算的なことや、敷居が高いという点がネックになることがあります。

しかし、

Let’s Encryptは、

無料で手軽に取得できることから、

広く使われるようになっていますので、

1度、試してみると良いでしょう。

「Certbot」とは

Certbotは、

オープンソースで無料のSSL証明書を自動的に取得するためのツールです。

SSL証明書を使って、

ウェブサイトのセキュリティを強化するために使用しますが、

Certbotを活用することで、

Webサーバーの設定と通信を自動化することで、

証明書の発行と更新を簡単に行うことができます。

ちなみに、

Certbotは、LinuxとmacOSで使用でき、

多くのWebサーバーに対応しているため、

Apache、Nginx、Google Cloud Platformなどの、

クラウド上のサーバーで使うことができるので、

よく使われているWebサーバーの環境であれば、

問題なく、各環境で使うことができます。

Certbotの大きなポイントは、

  • コマンドラインを使用してインストール、設定、更新することができる

という点です。

初心者でも簡単に使用できるので、

Certbotのインストールと設定などについて、

最新情報に関しては、

公式ウェブサイトのドキュメンテーションを、

参照することをお勧めします。

「Let’s encrypt」と「Certbot」

Let’s Encryptは、非営利団体であり、

大手テクノロジ企業やファウンデーションから、

支援を受けているSSL証明書発行機関です。

Certbotは、

Let’s Encryptのクライアントであり、

自動的に証明書を生成するためのコマンドラインツールです。

簡単に言えば、

  • 「Let’s Encrypt」はSSL証明書を管理している組織
  • 「Certbot」は「Let’s encrypt」のSSL証明書を使うためのツール

という感じで、

Let’s Encryptは証明書を発行する機関であり、

Certbotは証明書を自動的にインストールするための、

クライアントであるという関係になります。

Let’s encryptのSSL証明書をCertbotを使って、Nginxに設定を試してみる

サーバーOSのバージョン

サーバーに関しては、

Ubuntuを使用しているので、

lsb_release -a

のコマンドで、

バージョンを確認します。

確認すると、

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.3 LTS
Release:	20.04
Codename:	focal

このバージョンを使っていることがわかります。

Nginxのバージョン

Nginxに関しても、

使用している環境のバージョンについては、

nginx -v

のコマンドで、

バージョンを確認してみると、

$ nginx -v
nginx version: nginx/1.21.4

というバージョンであることがわかりました。

Certbotのインストール

まずは、

SSL証明書を設定するためのツールとして、

Certbotをインストールします。

各環境への導入コマンドに関しては、

こちらのサイトで、

このように、

OSとミドルウェアを自分の環境に合わせることで、

自分の導入したい環境にあった、

Certbotの導入コマンドが確認できます。

CertbotをNginxに設定するためのコマンド

Certbotを自分自身のドメインに設定する上で、

パラメータとして使う値としては、

  • Webサーバーが「Nginx」
  • 設定したい先の「ドメイン名」

の2つを使用します。

コマンドとしては、

sudo certbot --nginx -d ドメイン名

というコマンドになるので、

例えば、

ドメイン名が「sample.com」だとすると、

sudo certbot --nginx -d sample.com

というコマンドになります。

こちらを実行することで、

sample.comに関して、

こちらの証明書の状況が、

このように変われば、

うまく設定ができています。

関連記事

今回のように、

Ubuntu+Nignxに対して、

Let’s encryptをCertbotを使って、

SSL証明書を設定することは多いですが、

The requested nginx plugin does not appear to be installed

が起きた時の対応は、

以下の記事にメモしておいたので、

必要であれば参照ください。

スキルを使って、就職/転職/副業する時のサイト

プログラミングのスキルなどを、自分なりに高めた上で、

自分のスキルをアピールして就職や転職を行い、年収をあげるか、

副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。

まずはできる範囲で取り組むことで、

少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。

おすすめ書籍

広告

おすすめ記事