GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu18.04でSSL証明書を暗号化してNginxを保護する

SSL証明書とは何ですか?

時間の経過とともに、ハッカーが悪意のある目的でユーザーデータを盗むために24時間体制で作業を続けているため、インターネット関連のセキュリティ侵害の事例が増えています。 SSL証明書は、主にユーザーのブラウザとサーバー間で送信されるデータを暗号化して、目的の受信者のみがアクセスできるようにするためにWebサイトサーバーにインストールされるデジタル証明書です。暗号化しないと、情報はプレーンテキストデータとして送信され、ハッカーによって簡単に傍受される可能性があるため、これは非常に重要です。

このため、ほとんどのeコマースストアやPayPalなどのオンライン金銭支払いプラットフォームはWebサイトを暗号化します。 SSL証明書は認証も可能にし、情報がハッカーではなく適切なサーバーに送信されることを保証します。

Googleは安全なサイトが好き

SSL証明書は、Googleでサイトを上位にランク付けするのに役立ちます。 Googleの発表によると、SSL暗号化サイトは、安全ではないと見なされているサイトよりもランクが高くなります。保護されたサイトは、URLバーの南京錠と、HTTPではなくhttpsが前に付いたURLで表されます。サイトに安全なHTTPS拡張機能がない場合、GoogleはサイトのURLを「安全ではない」と表示します。これは、
サイトのランキングに悪影響を与える可能性があります。

UbunutuでSSL認証を暗号化するNginx

この記事では、Ubuntu18.04でSSLを暗号化してNginxを保護する方法を見ていきます。 Let’s Encryptは、Let’sEncrypt機関が提供する無料の自動SSLです。 2018年までに、Let’sEncryptは1億5000万を超えるウェブサイトを保護しました。

始めて、Ubuntu18.04でSSLを暗号化してNginxを保護する方法を見てみましょう。

前提条件

開始するには、次のものがあることを確認してください。

  • sshアクセスを使用するUbuntuサーバー18.04のサーバーインスタンス
  • sudo権限でのroot以外の使用
  • サーバーのIPアドレスを指すAレコードを持つ完全修飾ドメイン名(FQDN)
  • この例では、ドメイン名 crazytechgeek.infoを使用します。 これは、IPアドレスが 18.191.46.130のVPSを指している 。

ステップ1.Nginxのインストール

まず、NginxWebサーバーをインストールします。ただし、最初に、root以外のユーザーとしてログインし、次のコマンドを実行して、システムを更新します。

$ sudo apt update

次に、次のコマンドを使用してNginxをインストールします。

$ sudo apt install nginx

出力

インストールしたら、次のコマンドを実行してNginxが実行されていることを確認します。

$ sudo systemctl status nginx

出力

すごい! Webサーバーをインストールしたので、次のステップに進みましょう。

ステップ2.Certbotをインストールします

サーバーにCertbotをインストールしましょう。この例では、更新されたすべてのファイルを含むUbuntuソフトウェアリポジトリを使用します。 Certbotリポジトリを追加するには、次のコマンドを実行します。

$ sudo add-apt-repository ppa:certbot/certbot

出力

Certbotのインストール

加えられた変更をシステムリポジトリに認識させるには、システムを更新してください。

$ sudo apt update

ステップ3.CertbotNginxパッケージをインストールします

次に、CertbotNginxパッケージをインストールします。これを実現するには、以下のコマンドを実行します。

$ sudo apt-get install python-certbot-nginx

出力

ステップ4.HTTPSトラフィックを許可するようにファイアウォールを更新する

SSLがポート443を使用して機能するには、ファイアウォールを通過するHTTPSトラフィックを許可する必要があります。最初にファイアウォールのステータスを確認しましょう。

$ sudo ufw status

出力

ファイアウォールを有効にする前に、まずHTTPとHTTPSの両方を処理する「NginxFull」を許可しましょう。

$ sudo ufw allow 'Nginx Full'

出力

ここで、ufwファイアウォールを有効にしましょう。プロンプトが表示されたら「y」を押します。

$ sudo ufw enable

出力

ルールがファイアウォールに追加されたかどうかを確認しましょう。

$ sudo ufw status

出力

Ufwステータスアクティブ

ステップ5.SSL証明書の生成

最後の部分は、Let’sEncryptSSL証明書の生成です。これを実現するには、以下の構文を使用します。

$ sudo certbot --nginx -d example.com -d www.example.com

これにより、example.comおよびwww.example.comで有効なSSL証明書が生成されます。

私たちの場合、私たちは持っているでしょう;

$ sudo certbot --nginx -d crazytechgeek.info -d www.crazytechgeek.info

出力

Certbotを初めて実行する場合は、最初に電子メールアドレスを入力するように求められます。

次に、Let’s Encryptサーバーとの通信が開始され、証明書を要求しているドメインを制御していることを確認しようとします。

次。 Aを押して、利用規約に同意します。

次に、自分のメールアドレスをEFFと共有するかどうかを尋ねられます。ここで、オプトインするかオプトアウトするかを決めることができます。

次のステップは、すべてが重要な場所です。これは、HTTPをHTTPSリクエストにリダイレクトする必要があるポイントです。 2番目のオプションを選択します。

すべてがうまくいった場合は、すべてがうまくいったことを確認するメッセージが表示されます。

素晴らしい!これで、NginxWebサーバーにSSLを暗号化できます。

これを確認するには、ブラウザでサーバーのアドレスに移動して更新します。

最初にURLがHTTPからHTTPSに変更されていることに注意してください。 SSL証明書の詳細を表示するには、南京錠の記号をクリックして、[証明書]オプションを選択します。

出力

Let'sEncryptのSSL証明書を更新

証明書の有効期間は90日です。これは、更新が3か月後に行われることを意味します。自動化の更新は、Let’sEncryptによって自動的に行われます。更新プロセスをテストするには、図のようにCertbotを使用してドライランを実行します。

sudo certbot renew --dry-run

エラーがなければ、すべてが計画どおりに進み、必要に応じての自動更新が行われます。 CAの有効期限に関するすべてのメッセージは、構成時に指定された電子メールアドレスに送信されます。


Linux
  1. Let'sEncryptによるCentos上のNginxの無料SSL

  2. Debian10/11でSSLを暗号化してNginxを保護する

  3. Ubuntu18.04でLet'sEncryptを使用してNginxを保護する-その方法は?

  1. Ubuntu 20.04/18.04でLetsEncryptを使用してNginxを保護する方法

  2. Ubuntu20.04でLet'sEncryptを使用してNginxを保護する方法

  3. Ubuntu 18.04 で Apache との SSL 接続を保護する方法

  1. Ubuntu18.04でLetsEncryptを使用してNginxを保護する

  2. Ubuntu16.04でLetsEncryptを使用してNginxを保護する

  3. Ubuntu20.04でLetsEncryptを使用してNginxを保護する