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

NginxでオリジンCloudflareSSLを設定する方法

概要

この記事では、NginxWebサーバーを使用してオリジンCloudflareSSL証明書を構成する方法について説明します。これらの手順は、Linux(CentOS、Debianなど)で実行されるWebサーバー用です。 Cloudflareは非常に有名なCDNおよびDDoS保護プラットフォームですが、他の多くのサービスを提供しています。それらのサービスの1つがSSL証明書です。すでにCloudflareを使用している場合は、それらからSSL証明書を取得することもできます。 SSL証明書は無料ですが(無料プランでも)、オリジンサーバーの証明書は無料です。エッジ証明書はそうではありません。オリジン証明書の欠点の1つは、生成された証明書が共有証明書(複数のユーザーによる1つのssl証明書)であるということですが、良い面は、提供された証明書が最大15年間持続し、TLS v1.3、HSTS、およびOnionをサポートすることです。ルーティング。

ClouflareでSSL証明書を生成する

したがって、CloudflareからSSL証明書を取得するには、すでにそれらのサービスを使用し、Cloudflareにドメインを追加する必要があります。ダッシュボードで、[SSL / TLS]メニューに移動してから、Originサーバーに移動します。

証明書を作成するオプションをクリックします。次に、キータイプを選択する必要があるプロンプトが表示されます(RSAタイプを選択してください)。また、Cloudflareにキーを生成させることを選択します。

その後、それらを有効にする期間を選択します。 Cloudflareは7日から15年まで有効なキーを提供します。 [作成]ボタンをクリックすると、公開キーと秘密キーが表示されるウィンドウプロンプトが表示されます。

両方のキーをコピーします。これらは次のステップに必要です。

サーバー上に証明書ファイルと秘密鍵ファイルを作成します

SSL証明書が生成されたら、次のステップはLinuxサーバーに証明書をインストールすることです。そのためには、サーバー上に2つのファイルを作成し、それらのファイルにCloudflareからコピーしたキーを貼り付ける必要があります。ファイルを作成するには、テキストエディタを使用して、新しいファイルにキーコードを貼り付けるだけです。各証明書ファイルは、特定のディレクトリに移動する必要があります。次のコマンドを使用してファイルを作成できます:

sudo nano /etc/ssl/certs/cert.pem

sudo nano /etc/ssl/private/key.pem

ご覧のとおり、Cloudflareからコピーしたキーごとに2つのファイルが必要です。また、コマンドラインで、どこに移動する必要があるか、どのディレクトリに移動するかを指定できます。最初にcert.pemファイル–証明書コードとkey.pemファイルを貼り付けて、秘密鍵コードを貼り付けます。コードを貼り付けたら、ファイルを保存します。

CloudflareSSLを使用してサーバーとNginxを構成します

証明書ファイルが作成されたら、今度はnginxを使用してorigin cloudflare sslを構成する必要があります。つまり、以前に生成したcloudflareoriginsslを使用するようにnginxに指示する必要があります。もう一度テキストエディタを使用して、WebサイトのNginxサーバー構成を開きます。通常、次の場所にあります:

etc / nginx / sites-available / default

または、デフォルトの構成ファイルを使用せず、サイトに特定の構成ファイルがある場合は、代わりにそのファイルを編集します。ファイル内の–直後の– 80行を聞く:これらの行も追加します:

listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

ファイルを保存して終了します。最終的に、新しい構成は次のようになります。

server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

root /var/www/html/;
index index.php index.html index.htm;

server_name somesite.com www.somesite.com;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
## include fastcgi_params;
}

}

注–サーバー名の行にはドメイン名が反映されている必要があります。上記の構成のエントリは、単なる例として使用されています。

構成が保存されたら、エディターを終了してNginxサーバーを再起動します。

sudo systemctl restart nginx.service

以上です。

概要

Nginxを使用してオリジンCloudflareSSLを構成する手順について説明しました。繰り返しになりますが、Cloudflare無料プランで無料になっているのはオリジン証明書だけです。これらは完全なSSLソリューションではありませんが、問題なく機能し、多くのSSLプロトコルをサポートしています。 15年までの無料の証明書を提供していることを考えると、それはまったく悪いことではありません。

もちろん、これは無料のSSLでWebサイトを保護するための唯一の無料の方法ではありません。もう1つの優れたオプションは、最も一般的ではないにしても、Let’sEncryptサービスのSSLを使用することです。 Let’sEncryptSSLを使用してNginxWebサイトを保護する方法と同じプロセスについて説明しました。このリンクで投稿を確認できます。

お時間をいただきありがとうございました。情報がお役に立てば幸いです。


Linux
  1. PHP-FPMを介してPHPで動作するようにNginxを構成する方法

  2. Nginxを使用して1つのIPに複数のSSLを設定する方法

  3. SSLを使用してIMAPを設定する方法

  1. NGINXにSSL証明書をインストールする方法

  2. CentOS7でNginxを使用してAskbotをインストールおよび構成する方法

  3. SSL / TLS暗号化接続でVSFTPDを構成する方法は?

  1. CentOS7にNginxとMariaDBを使用してOwnCloud8をインストールする方法

  2. Ubuntu 15.10にNginx、PHP-FPM、SSLを使用してDrupal8をインストールする方法

  3. Ubuntu15.10にNginxとSSLを使用してOpenCart2をインストールする方法