Skip to content

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

AWS

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

このガイドでは、cloudflared を使って Amazon Web Services(AWS)の EC2 インスタンスを Cloudflare に接続し、Cloudflare Tunnel 経由でウェブアプリケーションを公開します。

前提条件

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

  1. AWS コンソールで Compute > EC2 > Instances を開きます。

  2. Launch instance を選びます。

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

  4. Amazon Machine Image (AMI) で、希望するオペレーティングシステムと仕様を選びます。この例では Ubuntu Server 24.04 LTS (HVM), SSD Volume Type を使います。

  5. Instance type: では、無料枠で使える t2.micro を選べます。

  6. Key pair (login) で、SSH 用の新しいキーペアを作成します。.pem ファイルをローカルマシンにダウンロードする必要があります。

  7. Network settingsCreate security group を選びます。

  8. 次のセキュリティグループルールをオンにします。

    • Allow SSH traffic from My IP — インスタンスが一般公開されないようにします。
    • Allow HTTPS traffic from the internet
    • Allow HTTP traffic from the internet
  9. Launch instance を選びます。

  10. インスタンスが起動したら、Instances の概要ページを開き、Public IPv4 DNS ホスト名をコピーします(例: ec2-44-202-59-16.compute-1.amazonaws.com)。

  11. SSH でインスタンスにログインするには、ターミナルを開き、次のコマンドを実行します。

cd Downloads
chmod 400 "YourKeyPair.pem"
ssh -i "YourKeyPair.pem" ubuntu@ec2-44-202-59-16.compute-1.amazonaws.com
  1. sudo su を実行し、インスタンスの管理者権限を取得します。

  2. テスト用に、ポート 80 で基本的な Apache Web サーバーをデプロイできます。

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
  1. Apache サーバーが動作していることを確認するには、ブラウザーで http://ec2-44-202-59-16.compute-1.amazonaws.com を開きます(https ではなく http で接続してください)。Hello Cloudflare! のテストページが表示されます。

2. トンネルを作成する

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

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

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

確認するには、ブラウザーで設定したホスト名を開きます。ウェブサーバーのページが表示されます。

ファイアウォールの設定

AWS インスタンスを保護するには、Security Group のルール で、インバウンドトラフィックをすべて拒否し、アウトバウンドは Cloudflare Tunnel の IP アドレス への通信だけを許可できます。Security Group のルールはすべて許可ルールです。ルールに一致しないトラフィックはブロックされます。そのため、インバウンドルールをすべて削除し、必要なアウトバウンドルールだけを残せます。

Security Group のルールを設定したあと、Cloudflare Tunnel の 公開ホスト名 経由で、引き続きサービスにアクセスできることを確認します。Cloudflare Tunnel の外からはアクセスできなくなります。たとえば http://ec2-44-202-59-16.compute-1.amazonaws.com を開いても、テストページは読み込まれません。

役に立ちましたか?