Cuộc sống Nhật Bản
Yuto Blog

UbuntuでLet's Encryptを使用してSSL証明書を作成する方法

Mua ngay trả dần cùng Muadee iOS
Nội dung chính

Let's Encryptとは

Let's Encryptは無料のオープンソースの証明書発行機関で、インターネットセキュリティを強化するために設立されました。ユーザーは簡単にSSL/TLS証明書を取得し、Webサイトの安全なHTTPS接続を実現できます。Let's Encryptは自動化されたプロセスを提供しており、証明書の取得と更新を容易に行えるため、特に小規模なWebサイトや個人の開発者にとって理想的な選択肢です。

SSL照明証の重要性

SSL(Secure Sockets Layer)証明書は、インターネット上で情報を安全に送受信するために不可欠です。SSL証明書を使用すると、Webサイトとそのユーザー間のデータが暗号化され、第三者によるデータの盗聴や改ざんを防ぐことができます。これは、特に個人情報や金融情報などの機密データを扱うWebサイトにとって重要です。さらに、SSL証明書はWebサイトの信頼性を高め、Googleなどの検索エンジンによるランキング向上にも寄与します。

Let's Encryptのインストール

Copy
1
sudo apt-get install letsencrypt
SSL証明書の発行

まずはnginxを停止する

Copy
1
sudo systemctl stop nginx
それから以下のコマンドで証明書を取得する。your_domainのところはドメイン名を指定する。

Copy
1
sudo letsencrypt certonly --standalone -d your_domain.com
このようなメッセージが出たら、証明書の発行が成功した。

Copy
1
2
3
4
IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/your_domain/fullchain.pem
   Your key file has been saved at:
nginxの設定

以下の例はyour_domain.comに対する設定です。

Copy /etc/nginx/sites-available/your_domain.com
1
2
3
4
5
6
7
8
9
10
server {
  listen 80;
  server_name localhost your_domain.com;
  return 301 https://$host$1$request_uri;
}

server {
  listen 443 ssl http2;
  ssl_certificate /etc/letsencrypt/live/your_domain.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/your_domain.com/privkey.pem;

証明書の更新

手動の場合

SSL証明書の有効期限は90日なので、まだ期限が切れないうちに更新する必要があります。

更新するには、まずはnginxを停止して、SSLを更新して、それからnginxを起動するフローです。

Copy
1
2
3
sudo systemctl stop nginx
sudo letsencrypt renew
sudo systemctl start nginx
これによってウェブサーバーが一旦停止されるのが留意点。

自動の場合

cronで自動化することができます。設定するには sudo crontab -eコマンドを実行して、それから以下の内容を入れます。

Copy
1
2
# Renew the Let's Encrypt SSL certificates at 3:00 AM on the 1st of every month
00 03 01 * * sudo systemctl stop nginx; sudo letsencrypt renew; sudo systemctl start nginx
保存してから反映されます、サーバーの再起動は必要ありません。

これによって、毎月1日の朝3時に、nginx停止 → SSL証明書更新 → nginx起動というフローで自動的にSSL証明書が更新されます。

午前3時を設定する理由は、その時にサイトを利用するユーザーがあまりいないからです。

Updated at 2024-01-05
Nếu bài viết có ích thì các bạn hãy chia sẻ nhé
Rate this article: 4.9/5 (44 ratings)
You didn't rate yet
Le Minh Thien Toan

Tác giả:Yuto Yasunaga

Xin chào các bạn. Mình là kỹ sư IT đang làm việc ở Nhật Bản. Mình tạo blog này để chia sẻ về cuộc sống và những kinh nghiệm trong quá trình học tập và làm việc.
Hy vọng bài viết này sẽ có ích cho bạn.