---
title: "Apache APISIX 与 open-appsec WAF 集成 - API7.ai"
description: "Apache APISIX で公開されている Web API やアプリケーションを、既知および未知の攻撃から保護しましょう。open-appsec を使用して、機械学習ベースの自動 WAF でセキュリティを強化します。"
url: "https://www.openappsec.io/post/announcing-open-appsec-WAF-integration-with-Apache-APISIX-API-Gateway"
---

[Blog](https://api7.ai/ja/blog)

[Products](https://api7.ai/ja/category/products)[Technology](https://api7.ai/ja/category/technology)[Ecosystem](https://api7.ai/ja/category/ecosystem)[Case Study](https://api7.ai/ja/category/usercase)[Team & Community](https://api7.ai/ja/category/community)

Search

⌘ + K

[Blog](https://api7.ai/blog)

Ecosystem

# Apache APISIX 与 open-appsec WAF 集成

[![Christopher Lutat](https://github.com/ByteSkater.png)](https://github.com/ByteSkater)

[Christopher Lutat](https://github.com/ByteSkater)

October 21, 2024

[Ecosystem](https://api7.ai/category/ecosystem)

## はじめに

open-appsec WAFは、オープンソースのAPIゲートウェイであるApache APISIXとの新たな統合を発表できることを嬉しく思います。

このopen-appsecとAPI7チームの新たなコラボレーションにより、ユーザーはApache APISIXによって公開されているWeb APIやその他のWebサービスを、open-appsecの先進的な機械学習ベースの技術に基づいて、未知および既知の攻撃タイプから効果的に保護できるようになります。さらに、いくつかの強化されたセキュリティ機能も追加されます。

### Apache APISIXについて

[Apache APISIX](https://apisix.apache.org/)は、モダンで柔軟性が高く、高性能なオープンソースのAPIゲートウェイソリューションです。マイクロサービスやクラウドネイティブアーキテクチャにおけるさまざまなユースケースを処理するために設計されています。その主な目的は、クライアントとバックエンドサービス間のAPIトラフィックを管理、保護、最適化するゲートウェイとして機能することで、API管理を容易にすることです。

APISIXのAPIゲートウェイとしてのさらなるユースケースには、ロードバランシング、レートリミット、認証、認可などがあります。トラフィック制御、動的なアップストリーム、プラグインの拡張性など、包括的な機能を提供し、開発者が特定のニーズに応じて機能をカスタマイズおよび拡張できるようにします。

- ウェブサイト: [apisix.apache.org](https://apisix.apache.org/)
- GitHub: [github.com/apache/apisix](https://github.com/apache/apisix)
- ドキュメント: [apisix.apache.org/docs](https://apisix.apache.org/docs)

### open-appsec WAFについて

[open-appsec WAF](https://www.openappsec.io/)は、自動的で先制的な脅威防止を提供し、NGINXなどのリバースプロキシやAPISIXなどのAPIゲートウェイと統合します。機械学習ベースであるため、シグネチャ（または更新）を一切必要としません。これにより、真のゼロデイ攻撃に対しても自動的で最先端の脅威防止を提供し、管理者の負担と誤検知の量を大幅に削減します。

さらに、open-appsecは、AntiBot、レートリミット、スキーマ強制、Snortシグネチャサポート、カスタムルール/例外など、多くの追加セキュリティレイヤーを提供します。open-appsecは、SaaSサービスとして提供されるWeb UIを使用して中央管理することも、宣言型の設定ファイルを使用してローカルで管理することもできます。

- ウェブサイト: [www.openappsec.io](https://www.openappsec.io/)
- GitHub: [github.com/openappsec](https://github.com/openappsec)
- ドキュメント: [docs.openappsec.io](https://docs.openappsec.io/)
- プレイグラウンド: [www.openappsec.io/playground](https://www.openappsec.io/playground)

## Apache APISIXとopen-appsecの統合

この新たな統合により、APISIXユーザーは、Web APIやWebアプリケーションを保護するための統合された最先端の機械学習ベースのWAFソリューションであるopen-appsec WAFにアクセスできるようになります。

これにより、例えばopen-appsecの無料でオープンソースの「Community Edition」を使用して、APISIX APIゲートウェイによって公開されているすべてのものに対して、既知および未知の攻撃から効果的なAIベースの保護を提供し、同時に誤検知の量を大幅に削減し、管理者を例外の作成や従来のシグネチャベースのポリシーの更新などの面倒なタスクから解放します。

この統合は、Linux、Docker、Kubernetesなど、すべての一般的なプラットフォームで利用可能です。

### Linux

**Linuxの「組み込み」デプロイメント**の場合、open-appsecインストーラーは既存のAPISIXインストールに「open-appsecアタッチメント」モジュールを追加し、それと共に「open-appsecエージェント」をインストールします。このエージェントは、アタッチメントからトラフィックを受信し、検査し、ブロックまたは許可する結論をAPISIXまたはそれに統合されたopen-appsecアタッチメントに返します。

以下は、Linuxデプロイメントの簡単なアーキテクチャ図です。

![Linuxデプロイメントのアーキテクチャ](https://static.api7.ai/uploads/2024/10/18/6QZvRy6P_linux-deployment.png?imageMogr2/format/webp)

### Docker

**Dockerベースのデプロイメント**の場合、open-appsec WAFと統合されたAPISIXの特別なコンテナイメージが利用可能です。このイメージには既にopen-appsecアタッチメントが追加されており、APISIXゲートウェイコンテナとセキュリティ検査を行い、結論をAPISIXゲートウェイに返してトラフィックを許可またはブロックするopen-appsecエージェントの両方をデプロイするための拡張されたdocker-composeファイルも提供されます。

以下は、Dockerベースのデプロイメントの簡単なアーキテクチャ図です。

![Dockerベースのデプロイメントのアーキテクチャ](https://static.api7.ai/uploads/2024/10/18/bxKsXOqW_docker-deployment.png?imageMogr2/format/webp)

### Kubernetes

**Kubernetesベースのデプロイメント**の場合、公式のAPISIX Helmチャートを基にしたHelmチャートが利用可能です。このチャートは、APISIXゲートウェイコンテナにopen-appsecアタッチメントを含めるように拡張されており、open-appsecエージェントもデプロイします。さらに、open-appsecをK8sのカスタムリソースを使用して宣言型の「DevOpsスタイル」で設定するオプションも提供されます。これは、open-appsecの中央管理Web UIを使用する代わりに使用できます。

以下は、Kubernetesデプロイメントの簡単なアーキテクチャ図です。

![Kubernetesデプロイメントのアーキテクチャ](https://static.api7.ai/uploads/2024/10/18/SEZQ6E14_k8s-deployment.png?imageMogr2/format/webp)

## Linux上のAPISIXにopen-appsec WAFを追加する

APISIXがインストールされているLinuxシステムにopen-appsecをインストールするには、以下の手順に従ってください。

### 1. 前提条件

- LinuxプラットフォームはUbuntu 22.04である必要があります。
- APISIXがインストールされていることを確認してください。

サポートされているAPISIXバージョンのリストはこちらで確認できます: <https://downloads.openappsec.io/packages/supported-apisix.txt>。

APISIXがまだインストールされていない場合は、以下のコマンドを使用して「従来のモード」でAPISIXをインストールできます。これらのコマンドを実行すると、まずAPISIX用のetcdデータベースをインストールし、必要なリポジトリを追加してからAPISIXをインストールして起動します。

**etcdデータベースのインストール**

```
ETCD_VERSION='3.5.4'
wget https://github.com/etcd-io/etcd/releases/download/v${ETCD_VERSION}/etcd-v${ETCD_VERSION}-linux-amd64.tar.gz
tar -xvf etcd-v${ETCD_VERSION}-linux-amd64.tar.gz && cd etcd-v${ETCD_VERSION}-linux-amd64
cp -a etcd etcdctl /usr/bin/
nohup etcd >/tmp/etcd.log 2>&1 &
etcd
```

**パッケージリポジトリの追加と更新**

```
apt install gnupg
echo "deb http://openresty.org/package/debian bullseye openresty" | tee /etc/apt/sources.list.d/openresty.list
wget -O - https://openresty.org/package/pubkey.gpg | apt-key add -
wget -O - http://repos.apiseven.com/pubkey.gpg | apt-key add -
echo "deb http://repos.apiseven.com/packages/debian bullseye main" | tee /etc/apt/sources.list.d/apisix.list
apt update
```

**APISIXのインストール、初期化、起動**

```
apt install apisix=3.9.1-0
apisix init
apisix start
```

### 2. open-appsecインストーラーのダウンロード

```
wget https://downloads.openappsec.io/open-appsec-install && chmod +x open-appsec-install
```

### 3. open-appsecのインストール

既存のAPISIXインストールと統合するためにopen-appsecをインストールします。

> `--prevent`フラグを使用すると、open-appsecがデフォルトのポリシーで予防モードに設定されてインストールされます。

```
./open-appsec-install --auto --prevent
```

### 4. APISIX管理キーの取得と保存

APISIXの`config.yaml`設定ファイルからAPISIX管理キーを取得し、`APISIX_KEY`環境変数に保存します。

```
export APISIX_KEY=$(awk '/key:/{ if ($2 ~ /^edd1/) print $2 }' /usr/local/apisix/conf/config.yaml )
```

### 5. サービスを公開するためのルートの設定

APISIXゲートウェイで外部のWebサービスまたはWeb APIを公開するための例としてルートを設定します。この例では、`httpbin.org`をバックエンドとして使用します。

```
curl http://127.0.0.1:9180/apisix/admin/routes/100 -H "X-API-KEY:$APISIX_KEY" -X PUT -d '{
    "methods": [
      "GET"
    ],
    "uri": "/anything",
    "upstream": {
      "type": "roundrobin",
      "nodes": {
        "httpbin.org:80": 1
      }
    }
  }'
```

### 6. 検証

このルートが機能するかどうかを確認するためにアクセスします。

```
curl -s -v -G --data-urlencode email=user@domain.abc http://localhost:9080/anything
```

### 7. SQLインジェクション攻撃のシミュレーション

次に、APISIXゲートウェイによって公開されている`httpbin.org`サービスに対してSQLインジェクション攻撃をシミュレートしてみます（以下のHTTPリクエストの`'OR '1'='1`を参照）。このゲートウェイは現在、open-appsec WAFによって保護されています。

```
curl -s -v -G --data-urlencode email=user@domain.abc' OR '1'='1 http://localhost:9080/anything
```

このシミュレートされた攻撃は、open-appsecのコンテキストベースの機械学習WAFエンジンによって成功裏にブロックされます。

### 8. ログファイルの確認

送信したシミュレートされた攻撃を含むHTTPリクエストの「prevent」を示す対応するログファイルを確認します。

```
tail -f /var/log/nano_agent/cp-nano-http-transaction-handler.log*| grep -i user@domain.abc
```

または、`open-appsec-ctl`ツールを使用することもできます:

```
open-appsec-ctl --view-logs | grep -i user@domain.abc
```

### 9. open-appsecに接続して中央管理を行う（オプション）

オプションで、デプロイメントを[https://my.openappsec.io](https://my.openappsec.io/)に接続して、open-appsecを簡単に使用できるWeb UIで中央管理し、セキュリティイベントを監視することができます。詳細については、以下の**open-appsec WAFデプロイメントを中央管理する方法**セクションを参照してください。

**おめでとうございます！** 既存のAPISIXインストールにopen-appsec WAFを追加し、APISIXゲートウェイによって公開されているWebサービスがWeb攻撃から保護されていることを確認しました。

## コンテナ化プラットフォーム（Docker）でのAPISIXとopen-appsec WAFのデプロイ

Docker上でopen-appsecと統合されたAPISIXをインストールするには、以下の手順に従ってください。

上記の例とは異なり、ここではAPISIXを「スタンドアロンモード」でデプロイします。これは、設定を保持するyamlファイルを使用して宣言的に設定されるため、etcdデータベースのデプロイを必要としません。

> APISIXは、すべてのデプロイメントタイプ（Linux、Dockerなど）で従来のモードとスタンドアロンモードの両方をサポートしています。

### 1. 前提条件

Dockerとdocker-composeツールがインストールされているLinuxプラットフォームを用意してください。

### 2. open-appsec用のフォルダを作成

デプロイメントに使用するディレクトリ内に、open-appsecの宣言型設定ファイルを保持する`appsec-localconfig`フォルダを作成します:

```
mkdir ./appsec-localconfig
```

### 3. open-appsecファイルをフォルダにダウンロード

そのフォルダにopen-appsecの初期宣言型設定ファイルをダウンロードします。

```
wget https://raw.githubusercontent.com/openappsec/openappsec/main/config/linux/latest/prevent/local_policy.yaml -O appsec-localconfig/local_policy.yaml
```

> この例の宣言型設定ファイルは、既に攻撃を予防するように設定されています。

### 4. APISIX用のフォルダを作成

APISIXの宣言型設定ファイルを保持する別のフォルダ`apisix-localconfig`を作成します: `mkdir ./apisix-localconfig`.

### 5. APISIXファイルをフォルダにダウンロード

デプロイメント後にopen-appsecの保護を検証するために、APISIXの簡単な宣言型設定ファイルもダウンロードします。

```
wget https://raw.githubusercontent.com/openappsec/openappsec/main/deployment/apisix/apisix-example-config/apisix-standalone.yaml -O ./apisix-localconfig/apisix-standalone.yaml
```

### 6. `docker-compose.yaml`ファイルを作成

以下の内容の`docker-compose.yaml`ファイルを作成します。このファイルは以下のようにダウンロードできます:

```
wget https://raw.githubusercontent.com/openappsec/openappsec/main/deployment/apisix/docker-compose.yaml
```

```
version: "3"

services:
  apisix:
    container_name: apisix
    image: "ghcr.io/openappsec/apisix-attachment:latest"
    ipc: service:appsec-agent
    restart: always
    volumes:
      - ./apisix-localconfig/apisix-standalone.yaml:/usr/local/apisix/conf/apisix.yaml:ro
    environment:
      - APISIX_STAND_ALONE=true
    ports:
      - "9180:9180/tcp"
      - "9080:9080/tcp"
      - "9091:9091/tcp"
      - "9443:9443/tcp"

  appsec-agent:
    container_name: appsec-agent
    image: 'ghcr.io/openappsec/agent:latest'
    ipc: shareable
    restart: unless-stopped
    environment:
      # 以下を自分のメールアドレスに調整してください
      - user_email=user@email.com
      - registered_server="APISIX Server"
    volumes:
      - ./appsec-config:/etc/cp/conf
      - ./appsec-data:/etc/cp/data
      - ./appsec-logs:/var/log/nano_agent
      - ./appsec-localconfig:/ext/appsec
    command: /cp-nano-agent
```

### 7. メールアドレスを更新（オプション）

`docker-compose.yaml`ファイルを編集し、"<user@email.com>"を自分のメールアドレスに置き換えてください。これにより、将来の特定のデプロイメントに関する問題のサポートや、open-appsecに関する情報を積極的に提供することができます。

これはオプションのパラメータであり、削除することもできます。自動メールを送信する場合、将来の同様の通信を受信しないためのオプトアウトオプションも含まれます。

### 8. すべてのコンテナを起動

docker-compose upを実行して、関連するすべてのコンテナのデプロイメントを開始します:

```
docker-compose up -d
```

### 9. コンテナのステータスを確認

`apisix-attachment`と`appsec-agent`コンテナが起動して実行されているかどうかを確認します。

```
docker ps
```

### 10. スタンドアロン設定を検証

スタンドアロン設定が機能するかどうかを確認するためにアクセスします。

```
curl -s -v -G --data-urlencode email=user@domain.abc http://localhost:9080/anything
```

### 11. SQLインジェクション攻撃のシミュレーション

次に、open-appsecによって保護されているAPISIXゲートウェイコンテナによって公開されている`httpbin.org`サービスに対してSQLインジェクション攻撃をシミュレートしてみます。

```
curl -s -v -G --data-urlencode email=user@domain.abc' OR '1'='1 http://localhost:9080/anything
```

### 12. open-appsecに接続して中央管理を行う（オプション）

オプションで、デプロイメントを`https://my.openappsec.io`に接続して、open-appsecを簡単に使用できるWeb UIで中央管理し、セキュリティイベントを監視することができます。詳細については、以下の**open-appsec WAFデプロイメントを中央管理する方法**セクションを参照してください。

## Helmを使用してKubernetes上でAPISIXとopen-appsec WAFをデプロイ

### 1. 前提条件

KubernetesプラットフォームとHelmツールが利用可能であることを確認してください。

### 2. open-appsecをダウンロード

APISIX Helmチャート用のopen-appsecをこちらからダウンロードします。

```
wget https://downloads.openappsec.io/packages/helm-charts/apisix/open-appsec-k8s-apisix-latest.tgz
```

### 3. Helmチャートをインストール

この例の`helm install`コマンドは、公式のAPISIX Helmチャートを基にしたopen-appsec for APISIX Helmチャートをインストールします。

これにより、APISIXゲートウェイがAPISIX Ingress Controllerとしてデプロイされ、それに統合されたopen-appsec WAFもデプロイされます。また、open-appsec WAFの追加設定オプションも提供されます（Helmチャート内の`values.yaml`とopen-appsecの[ドキュメント](https://docs.openappsec.io/)を参照）。

デプロイメント後、K8sのIngressリソースをAPISIXゲートウェイに割り当てるために、以下のIngressクラスを使用するように設定できます: `appsec-apisix`.

```
helm install open-appsec-k8s-apisix-latest.tgz \
--name-template=appsec-apisix \
--set rbac.create=true \
--set appsec.mode=standalone \
--set service.type=LoadBalancer \
--set appsec.persistence.enabled=false \
--set ingress-controller.enabled=true \
--set ingress-controller.config.ingressClass=appsec-apisix \
--set appsec.userEmail=”<your-email-address>” \
--set appsec.agentToken= \
--create-namespace \
-n appsec-apisix
```

> 上記のHelmインストールコマンドのを自分のメールアドレスに置き換えてください。これにより、open-appsecに関するニュースやアップデートを送信し、必要に応じてデプロイメントをサポートすることができます！いつでも購読を解除できます。または、メールを提供したくない場合は、その行を削除してください。

### 4. 検証

ポッドが正しくデプロイされ、準備状態にあることを確認します:

```
kubectl get pods -n appsec-apisix
```

### 5. open-appsecポリシーリソースを作成

以下のコマンドを実行して、K8sに「open-appsec-best-practice-policy」を作成します。

> この例のポリシーは、既に攻撃を予防するように事前設定されています。

```
kubectl apply -f https://raw.githubusercontent.com/openappsec/openappsec/main/config/k8s/v1beta1/open-appsec-k8s-prevent-config-v1beta1.yaml
```

独自のカスタムポリシーを作成することもできます。詳細は[こちら](https://docs.openappsec.io/getting-started/start-with-kubernetes/configuration-using-crds)で確認できます。

### 6. ターゲットリソース名を取得

保護したいIngressリソースの名前を確認します:

```
kubectl get ing -A
```

### 7. Ingressリソースを編集

```
kubectl edit ing/<ingress name> -n <ingress namespace>
```

### 8. ingressClassnameを変更

ingressClassnameをopen-appsecを使用するように変更します:

```
spec: ingressClassName: appsec-apisix
```

### 9. Ingressリソースにアノテーションを追加

このアノテーションをIngressリソースに追加して、open-appsecをこのIngressに対してアクティブにし、指定したopen-appsecポリシーカスタムリソースを使用します。

```
openappsec.io/policy: open-appsec-best-practice-policy
```

### 10. スタンドアロン設定を検証

スタンドアロン設定が機能するかどうかを確認するためにアクセスします:

```
curl -s -v -G --data-urlencode email=user@domain.abc http://[YOUR-INGRESS-HOSTNAME]
```

### 11. SQLインジェクション攻撃のシミュレーション

次に、open-appsecによって保護されているAPISIXゲートウェイコンテナによって公開されている`httpbin.org`サービスに対してSQLインジェクション攻撃をシミュレートしてみます。

```
curl -s -v -G --data-urlencode email=user@domain.abc' OR '1'='1 http://[YOUR-INGRESS-HOSTNAME]
```

上記のコマンドの\[YOUR-INGRESS-HOSTNAME]を、先の手順でopen-appsec WAFで保護したIngressリソースに設定したホスト名に置き換えてください。また、必要に応じて「http」を「https」に変更してください。

**おめでとうございます！** APISIXとopen-appsec WAFを統合してデプロイし、APISIXゲートウェイによって公開されているWebサービスが攻撃から保護されていることを確認しました。

## open-appsec WAFデプロイメントを中央管理する方法

必要に応じて、open-appsec WAFデプロイメント（APISIXと統合されたもの）を中央管理するために、[https://my.openappsec.io](https://my.openappsec.io/)で利用可能なopen-appsec Web UI（SaaSサービス）を使用できます。これにより、open-appsecエージェントを中央Web UIのデプロイメントプロファイルに接続することができます。

また、ローカルでデプロイメントを管理しつつ、中央Web UIプロファイルに「宣言型モード」で接続することもできます。これにより、ローカルの設定をWeb UIで（読み取り専用で）確認することができます。

open-appsecの設定に加えて、Web UIでは、デプロイされたopen-appsecエージェントのステータス、セキュリティログ、ダッシュボードなどを確認することができます。

デプロイメントを中央Web UIに接続する方法については、[https://docs.openappsec.io](https://docs.openappsec.io/)で利用可能なopen-appsecドキュメントを参照してください。

以下に、Web UIのスクリーンショットをいくつか示します。

![Open-websec UI 1](https://static.api7.ai/uploads/2024/10/11/MzsUwqh3_open-appsec-4.jpeg?imageMogr2/format/webp)

![Open-websec UI 2](https://static.api7.ai/uploads/2024/10/11/YFofdEzT_open-appsec-5.jpeg?imageMogr2/format/webp)

## まとめ

このブログでは、open-appsecがApache APISIXと統合する方法について、通常のLinuxベースのデプロイメント、コンテナ化されたデプロイメント（Docker）、およびKubernetes環境のすべてについて説明しました。

APISIXとopen-appsec WAFのデプロイメント手順に従って、SQLインジェクション攻撃をシミュレートし、open-appsecの機械学習ベースのWAF技術によって効果的に防止されることを確認しました。

さらに、open-appsecの中央Web UIに接続して管理、監視、ログ分析、レポート作成を行う利点についても説明しました。

これらの新たな統合が、APISIX APIゲートウェイとその公開されているWeb APIおよびWebアプリケーションのセキュリティを強化するために非常に役立つことを願っています。

フィードバックや質問、または技術的な課題がある場合は、ぜひお問い合わせください。open-appsecチームには、[https://www.openappsec.io](https://www.openappsec.io/)のチャットまたはメールで連絡できます: <info@openappsec.io>。

## 追加リソース

### open-appsec WAF

ウェブサイト: [https://www.openappsec.io](https://www.openappsec.io/)

GitHub: <https://github.com/openappsec>

ドキュメント: [https://docs.openappsec.io](https://docs.openappsec.io/)

プレイグラウンド: <https://www.openappsec.io/playground>

ブログ: <https://www.openappsec.io/blogs>

### Apache APISIX

ウェブサイト: [https://apisix.apache.org](https://apisix.apache.org/)

GitHub: <https://github.com/apache/apisix>

ドキュメント: <https://apisix.apache.org/docs/>

ブログ: <https://apisix.apache.org/blog/>

Tags:

[WAF](https://api7.ai/tags/waf)

[API Security](https://api7.ai/tags/api-security)

[Data Security](https://api7.ai/tags/data-security)

Share article link

Share

Related Posts

[![mTLS Everywhere: APISIX の TLS 設定方法](https://static.api7.ai/uploads/2024/12/24/DVhnbLpy_apisix-mtls.png)](https://api7.ai/blog/configure-tls-for-apisix)

## [mTLS Everywhere: APISIX の TLS 設定方法](https://api7.ai/blog/configure-tls-for-apisix)

[![API7.ai 实现 SOC 2 Type 1 合规认证](https://static.api7.ai/uploads/2024/12/25/GkohvXzz_api7-soc2.png)](https://api7.ai/blog/api7-achieves-soc-2-type-1-compliance)

## [API7.ai 实现 SOC 2 Type 1 合规认证](https://api7.ai/blog/api7-achieves-soc-2-type-1-compliance)

Table of Contents

- [はじめに](#%E3%81%AF%E3%81%98%E3%82%81%E3%81%AB)

  - [Apache APISIXについて](#apache-apisix%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6)
  - [open-appsec WAFについて](#open-appsec-waf%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6)

- [Apache APISIXとopen-appsecの統合](#apache-apisix%E3%81%A8open-appsec%E3%81%AE%E7%B5%B1%E5%90%88)

  - [Linux](#linux)
  - [Docker](#docker)
  - [Kubernetes](#kubernetes)

- [Linux上のAPISIXにopen-appsec WAFを追加する](#linux%E4%B8%8A%E3%81%AEapisix%E3%81%ABopen-appsec-waf%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B)

  - [1. 前提条件](#1-%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6)
  - [2. open-appsecインストーラーのダウンロード](#2-open-appsec%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%A9%E3%83%BC%E3%81%AE%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89)
  - [3. open-appsecのインストール](#3-open-appsec%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)
  - [4. APISIX管理キーの取得と保存](#4-apisix%E7%AE%A1%E7%90%86%E3%82%AD%E3%83%BC%E3%81%AE%E5%8F%96%E5%BE%97%E3%81%A8%E4%BF%9D%E5%AD%98)
  - [5. サービスを公開するためのルートの設定](#5-%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%82%92%E5%85%AC%E9%96%8B%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E3%83%AB%E3%83%BC%E3%83%88%E3%81%AE%E8%A8%AD%E5%AE%9A)
  - [6. 検証](#6-%E6%A4%9C%E8%A8%BC)
  - [7. SQLインジェクション攻撃のシミュレーション](#7-sql%E3%82%A4%E3%83%B3%E3%82%B8%E3%82%A7%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E6%94%BB%E6%92%83%E3%81%AE%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3)
  - [8. ログファイルの確認](#8-%E3%83%AD%E3%82%B0%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E7%A2%BA%E8%AA%8D)
  - [9. open-appsecに接続して中央管理を行う（オプション）](#9-open-appsec%E3%81%AB%E6%8E%A5%E7%B6%9A%E3%81%97%E3%81%A6%E4%B8%AD%E5%A4%AE%E7%AE%A1%E7%90%86%E3%82%92%E8%A1%8C%E3%81%86%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3)

- [コンテナ化プラットフォーム（Docker）でのAPISIXとopen-appsec WAFのデプロイ](#%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E5%8C%96%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0docker%E3%81%A7%E3%81%AEapisix%E3%81%A8open-appsec-waf%E3%81%AE%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4)

  - [1. 前提条件](#1-%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6-1)
  - [2. open-appsec用のフォルダを作成](#2-open-appsec%E7%94%A8%E3%81%AE%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%82%92%E4%BD%9C%E6%88%90)
  - [3. open-appsecファイルをフォルダにダウンロード](#3-open-appsec%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AB%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89)
  - [4. APISIX用のフォルダを作成](#4-apisix%E7%94%A8%E3%81%AE%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%82%92%E4%BD%9C%E6%88%90)
  - [5. APISIXファイルをフォルダにダウンロード](#5-apisix%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AB%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89)
  - [6. `docker-compose.yaml`ファイルを作成](#6-docker-composeyaml%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E4%BD%9C%E6%88%90)
  - [7. メールアドレスを更新（オプション）](#7-%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%82%92%E6%9B%B4%E6%96%B0%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3)
  - [8. すべてのコンテナを起動](#8-%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E3%82%92%E8%B5%B7%E5%8B%95)
  - [9. コンテナのステータスを確認](#9-%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E3%81%AE%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%92%E7%A2%BA%E8%AA%8D)
  - [10. スタンドアロン設定を検証](#10-%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%89%E3%82%A2%E3%83%AD%E3%83%B3%E8%A8%AD%E5%AE%9A%E3%82%92%E6%A4%9C%E8%A8%BC)
  - [11. SQLインジェクション攻撃のシミュレーション](#11-sql%E3%82%A4%E3%83%B3%E3%82%B8%E3%82%A7%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E6%94%BB%E6%92%83%E3%81%AE%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3)
  - [12. open-appsecに接続して中央管理を行う（オプション）](#12-open-appsec%E3%81%AB%E6%8E%A5%E7%B6%9A%E3%81%97%E3%81%A6%E4%B8%AD%E5%A4%AE%E7%AE%A1%E7%90%86%E3%82%92%E8%A1%8C%E3%81%86%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3)

- [Helmを使用してKubernetes上でAPISIXとopen-appsec WAFをデプロイ](#helm%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6kubernetes%E4%B8%8A%E3%81%A7apisix%E3%81%A8open-appsec-waf%E3%82%92%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4)

  - [1. 前提条件](#1-%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6-2)
  - [2. open-appsecをダウンロード](#2-open-appsec%E3%82%92%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89)
  - [3. Helmチャートをインストール](#3-helm%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)
  - [4. 検証](#4-%E6%A4%9C%E8%A8%BC)
  - [5. open-appsecポリシーリソースを作成](#5-open-appsec%E3%83%9D%E3%83%AA%E3%82%B7%E3%83%BC%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%92%E4%BD%9C%E6%88%90)
  - [6. ターゲットリソース名を取得](#6-%E3%82%BF%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E5%90%8D%E3%82%92%E5%8F%96%E5%BE%97)
  - [7. Ingressリソースを編集](#7-ingress%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%92%E7%B7%A8%E9%9B%86)
  - [8. ingressClassnameを変更](#8-ingressclassname%E3%82%92%E5%A4%89%E6%9B%B4)
  - [9. Ingressリソースにアノテーションを追加](#9-ingress%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E3%81%AB%E3%82%A2%E3%83%8E%E3%83%86%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E8%BF%BD%E5%8A%A0)
  - [10. スタンドアロン設定を検証](#10-%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%89%E3%82%A2%E3%83%AD%E3%83%B3%E8%A8%AD%E5%AE%9A%E3%82%92%E6%A4%9C%E8%A8%BC-1)
  - [11. SQLインジェクション攻撃のシミュレーション](#11-sql%E3%82%A4%E3%83%B3%E3%82%B8%E3%82%A7%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E6%94%BB%E6%92%83%E3%81%AE%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3-1)

- [open-appsec WAFデプロイメントを中央管理する方法](#open-appsec-waf%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4%E3%83%A1%E3%83%B3%E3%83%88%E3%82%92%E4%B8%AD%E5%A4%AE%E7%AE%A1%E7%90%86%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95)

- [まとめ](#%E3%81%BE%E3%81%A8%E3%82%81)

- [追加リソース](#%E8%BF%BD%E5%8A%A0%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9)

  - [open-appsec WAF](#open-appsec-waf)
  - [Apache APISIX](#apache-apisix)

## Related Posts

[![API7 Enterprise v3.2.16.3 与 AWS Secrets Manager 集成](https://static.api7.ai/uploads/2025/02/13/nrkyTz2U_3.2.16.3-aws-secrets-manager.png)](https://api7.ai/ja/blog/api7-3.2.16.3-supports-aws-secrets-manager)

Products

November 7, 2024

#### [API7 Enterprise v3.2.16.3 与 AWS Secrets Manager 集成](https://api7.ai/ja/blog/api7-3.2.16.3-supports-aws-secrets-manager)

API7 Enterprise v3.2.16.3 は、AWS Secrets Manager と統合し、機密データの安全で効率的な管理と保護を実現します。

[API Security](https://api7.ai/tags/api-security)

[Data Security](https://api7.ai/tags/data-security)

[API7 Enterprise](https://api7.ai/tags/api7-enterprise)

[![API7 Enterprise v3.2.16：統合されたSecret Providers](https://static.api7.ai/uploads/2024/09/29/QQqmcORv_Integrated%20Secret%20Providers.png)](https://api7.ai/ja/blog/api7-3.2.16-integrated-secret-providers)

Products

October 10, 2024

#### [API7 Enterprise v3.2.16：統合されたSecret Providers](https://api7.ai/ja/blog/api7-3.2.16-integrated-secret-providers)

API7 Enterprise v3.2.16は、HashiCorp Vaultなどのシークレットプロバイダーとシームレスに統合し、外部の機密情報の管理と参照を簡単に行えるようにします。

[API Security](https://api7.ai/tags/api-security)

[Data Security](https://api7.ai/tags/data-security)

[API7 Enterprise](https://api7.ai/tags/api7-enterprise)

[![APIを保護するための深掘り：WAFとAPI Gatewayの統合](https://static.api7.ai/uploads/2024/01/29/xV7L0ef7_APISIX_WAF_Cover.jpeg)](https://api7.ai/ja/blog/waf-and-api-gateway-integration)

Ecosystem

January 30, 2024

#### [APIを保護するための深掘り：WAFとAPI Gatewayの統合](https://api7.ai/ja/blog/waf-and-api-gateway-integration)

ベストプラクティスに従い、適切なツールを導入することで、幅広い攻撃からAPIを保護する堅牢なセキュリティレイヤーを構築できます。

[WAF](https://api7.ai/tags/waf)

[APISIX Basics](https://api7.ai/tags/apisix-basics)
