Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

GCP

最終更新 Markdown で表示Agent セットアップ

このガイドでは、cloudflared を使って Google Cloud Platform(GCP)の仮想マシンを Cloudflare に接続し、Cloudflare Tunnel 経由で Web アプリケーションを公開する手順を説明します。

前提条件

1. VM インスタンスを作成する

  1. Google Cloud Console で、新しいプロジェクトを作成 します。

  2. Compute Engine > VM instances を開きます。

  3. Create instance を選択します。

  4. VM インスタンスに名前を付けます。この例では http-test-server とします。

  5. 希望するオペレーティングシステムとスペックを選びます。この例では、次の設定を使えます。

    • Machine family: General Purpose
    • Series: E2
    • Machine type: e2-micro
    • Boot disk image: Debian GNU/Linux 12
    • Firewalls: Allow HTTP and HTTPS traffic
  6. Advanced options > Management > Automation で、次のスタートアップスクリプトを追加します。この例では、ポート 80 に基本的な Apache Web サーバーをデプロイします。

    #!/bin/bash
    apt update
    apt -y install apache2
    cat <<EOF > /var/www/html/index.html
    <html><body><h1>Hello Cloudflare!</h1>
    <p>This page was created for a Cloudflare demo.</p>
    </body></html>
    EOF
  7. Create を選択します。

  8. オペレーティングシステムは Apache HTTP サーバーを自動で起動します。サーバーが動作していることを確認するには:

    1. VM インスタンスの External IP をコピーします。
    2. ブラウザーを開き、http://<EXTERNAL IP> にアクセスします。Hello Cloudflare! のテストページが表示されます。
  9. VM インスタンスにログインするには、SSH の横のドロップダウンを開き、Open in browser window を選びます。

2. トンネルを作成する

  1. Cloudflare ダッシュボードNetworking > Tunnels を開きます。
  2. Create Tunnel を選び、名前(例: gcp-tunnel)を入力します。
  3. Create Tunnel を選びます。
  4. Setup EnvironmentDebian 64-bit を選びます。
  5. VM に SSH し、ダッシュボードに表示されるインストールコマンドを実行します。
  6. トンネルが接続されたら、Continue を選びます。

3. アプリケーションを公開する

  1. RoutesAdd route > Published application を選びます。
  2. ホスト名(例: hellocloudflare.<your-domain>.com)を入力します。
  3. Servicehttp://localhost:80 を入力します。
  4. Add route を選びます。

テストするには、ブラウザーで設定したホスト名を開きます。

任意で Cloudflare Access を追加し、サービスへアクセスできるユーザーを制御できます。

ファイアウォールの設定

VM インスタンスを保護するには、VPC ファイアウォール規則 を設定し、すべての受信トラフィックを拒否して、Cloudflare Tunnel の IP アドレス への送信トラフィックだけを許可できます。GCP は 既定 で受信トラフィックを拒否するため、受信規則はすべて削除し、必要な送信規則だけを残して構いません。

VPC ファイアウォール規則を設定したあと、Cloudflare Tunnel 経由で 公開ホスト名 からサービスにアクセスできることを確認します。Cloudflare Tunnel の外からはサービスにアクセスできないはずです。たとえば、http://<EXTERNAL IP> を開いてもテストページは表示されなくなります。

役に立ちましたか?