コンテンツにスキップ

DataKit で HTTPS を設定する


概要

HTTPS はセキュリティを目的とした HTTP チャネルであり、HTTP をベースに伝送暗号化と身元認証により転送の安全性を確保します。安全性を確保するため、フロントエンドアプリケーションのデプロイ時には https プロトコルがよく使用されます。https プロトコルを使用するフロントエンドを対象に、リアルユーザーモニタリング(RUM)を構成する際、デプロイされた DataKit が依然として IP + ポート の http プロトコルを使用している場合、ブラウザは安全でないと判断し、アプリケーションの RUM データを Guance に報告できなくなります。

本記事では Nginx の SSL を使用してサーバーの HTTPS を有効にする方法を説明します。

前提条件

  • 一台のクラウドホスト CentOS 7.9
  • Alibaba Cloud ドメイン、ドメインは既にクラウドホストの 80 番ポートに解決されていること
  • クラウドホストに <DataKit がインストール済みであること>

操作手順

Warning

本ケースでは DataKit バージョン1.4.20(最新版)、Nginx バージョンは 1.22.1 を使用してテストしています。

1 Nginx のインストール

1.1 yum-utils パッケージのインストール

クラウドホストにログインし、以下のコマンドを実行します。

yum install yum-utils -y

1.2 nginx.repo の新規作成

/etc/yum.repos.d/nginx.repo ファイルを新規作成し、内容は以下の通りです。

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/\$releasever/\$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key

1.3 インストールコマンドの実行

yum install nginx -y
systemctl start nginx
systemctl enable nginx
systemctl status nginx

running と表示されれば、Nginx のインストールは成功です。

image.png

1.4 ssl モジュールの確認

nginx -V と入力し、出力に --with-http_ssl_module が含まれていれば、ssl モジュールがインストールされています。

image.png

2 証明書のダウンロード

2.1 SSL 証明書のダウンロード

「Alibaba Cloud」→「デジタル証明書管理サービス」→「SSL 証明書」にログインし、無料証明書を作成します。
証明書の作成が成功したら、Nginx を見つけて「ダウンロード」をクリックします。

image.png

2.2 証明書のアップロード

SSL 証明書を解凍し、7279093\_www.zzdskj.cn.key7279093\_www.zzdskj.cn.pem をクラウドホストの /opt/key ディレクトリにアップロードします。

image.png

2.3 Nginx 設定ファイルの修正

/etc/nginx/conf.d/default.conf ファイルを編集し、以下の内容を入力します。
ここでは 443 番ポートが DataKit の 9529 番ポートにリダイレクトされます。

server {
    listen       80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;
    rewrite ^(.*)$ https://$host$1 permanent;
}

   server {
        listen       443 ssl http2;
        server_name  zzdskj.cn;
        ssl_certificate        /opt/key/7279093_www.zzdskj.cn.pem;
        ssl_certificate_key    /opt/key/7279093_www.zzdskj.cn.key;



        location / {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://localhost:9529/;
        }


        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

2.4 設定の再読み込み

以下のコマンドを実行します。

nginx -s reload

3 確認

ブラウザに https のドメインを入力し、以下の画面が表示されれば設定は成功です。

image.png

フィードバック

このページは役に立ちましたか?