Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SUSE RancherとKubernetes環境へのWAF対応
Search
TakashiAsanuma
October 22, 2021
Technology
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SUSE RancherとKubernetes環境へのWAF対応
TakashiAsanuma
October 22, 2021
More Decks by TakashiAsanuma
See All by TakashiAsanuma
Supabase Meetup Tokyo #1 リードレプリカを利用した社内分析用リモートMCPを作ってみた
takashiasanuma
0
220
Skills間の連携も関数のようにしたら快適だった話
takashiasanuma
1
1.7k
Supabase CLIのある開発日常
takashiasanuma
3
400
DCC2P_IDCFクラウドコンテナ商用サービス事例紹介
takashiasanuma
0
120
RubyによるPub/Sub messaging - パブリッククラウドのバックエンドシステム事例 /Public Cloud backend system
takashiasanuma
0
160
RubyでPub/Sub messaging-Multi Process-Daemonizes-Application
takashiasanuma
1
13k
Scalable Applications with Pub/Sub Messaging
takashiasanuma
0
140
Pub/Subメッセージングのテスト(LT版)
takashiasanuma
0
120
IDCクラウドのバックエンド
takashiasanuma
0
170
Other Decks in Technology
See All in Technology
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
3
530
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
180
AI臭い文章とは何なのか
nasuvitz
38
79k
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
280
ミイダス株式会社 テックチームのご紹介 / MIIDAS Tech Team
miidas
0
120
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
540
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
leveragestech
PRO
0
140
AI時代に必要な脅威モデリング― 変化の速度に負けない理解とリスク判断
masakane55
2
340
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
200
『GOエコノミー 』(相乗りサービス) におけるスペック駆動開発
mot_techtalk
1
300
Incremental HTTP
kazuho
5
2k
20260930_Gemma4_Hands-on
tsho
0
220
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
340
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Marketing to machines
jonoalderson
1
5.8k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
390
A Modern Web Designer's Workflow
chriscoyier
699
190k
Building an army of robots
kneath
307
47k
ラッコキーワード サービス紹介資料
rakko
1
5.2M
Building a Scalable Design System with Sketch
lauravandoore
464
34k
How to Talk to Developers About Accessibility
jct
2
560
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
A designer walks into a library…
pauljervisheath
211
25k
Transcript
1 © IDC Frontier Inc. All Rights Reserved. SUSE RancherとKubernetes環境
へのWAF対応 株式会社IDCフロンティア エンジニアリング本部 開発部 浅沼 2021年9月30日
2 © IDC Frontier Inc. All Rights Reserved. 2 Agenda
1. IDCFクラウド コンテナコンソールのWAF対応 (SUSE Rancher/Kubernetes環境におけるWAF対応) 2. コンテナ運用管理を成功に導く鍵-SUSE Rancherとは (SUSE社より)
3 © IDC Frontier Inc. All Rights Reserved. 3 IDCフロンティアについて
高集積・大規模なニーズに 応えるデータセンターを全国 に7ヵ所、グループ全体では 19ヵ所展開。 ※2021年3月時点 データセンター事業 シンプル・パワフルなクラウ ドプロダクトと、プライベート やハイブリッドクラウドなど豊 富なラインアップ。 クラウド事業 クラウド型レンタルサー バー、ドメイン名登録など中 小企業や個人事業主の IT環 境を支援。 ホスティングサービス ドメイン名登録サービス 大企業 SI企業 大手IT事業者 IDCフロンティアは、法人向けのITインフラサービスを提供しているソフトバンクのグループ企業です。 データセンター事業、クラウド事業を主軸に、中小企業からエンタープライズまで、 幅広いお客さまのニーズに応えるサービスを取り揃えています。 ネットサービス企業 クラウドSI企業 中堅・中小企業 個人事業主
4 © IDC Frontier Inc. All Rights Reserved. 自社開発と 他社プロダクト
連携により 幅広い ラインアップ IDCFクラウド コンピューティング データ ベース DNS/GSL B CDN (コンテンツキャッシュ) (Fastly) プライベート クラウド (ホスティッド型) バーチャルブリッジ (サービス間接続) プライベートコネクト (オンプレ接続) クラウドストレージ (Google Cloud Storage) ロード バランサー ベアメタル サーバー コンテナ GPU サーバー
5 © IDC Frontier Inc. All Rights Reserved. 5 マルチインフラ環境でKubernetesクラスターの展開・管理
管理基盤にSUSE Rancherを採用 IDCFクラウド コンテナ
6 © IDC Frontier Inc. All Rights Reserved. 6 IDCFご利用のお客様状況と市場の流れ
市場でもクラウド利用者の 81%が2社以上の 事業者と契約 81% 2社以上のクラウド 単独の クラウド IDCFクラウドユーザーの 73%が ハイブリッド利用 ハイブリッド利用やマルチクラウドが主流に データセンターとクラウド 両方を担うIDCFだからこそ 必要な性能や機能で選ぶ マルチクラウドの流れ 出典:Smarter With Gartner「Why Organizations Choose a Multicloud Strategy」(2019年5月7日) 出典:https://www.idcf.jp/cloud/hybrid/ クラウド × オンプレミス クラウド × 物理サーバー クラウド × データセンター
7 © IDC Frontier Inc. All Rights Reserved. 7 これからの開発・実行環境
要件にあわせた環境をそろえたい、コンテナ管理が必要 自社コンテナ イメージの標 準化 (マイクロサービス前提) 実行環境を 選べる (マルチクラウド利用) インフラ 維持管理 不要 現在の課題 クラウドベンダーのコンテナ環境 データセンターのオンプレミス環境 プロダクション単位でコンテナ環境がバラバラ (GKE,ECS,EKS etc.) インフラ維持管理にエンジニア稼働が奪われる • 開発環境が乱立・増殖・混乱 • あるいは特定クラウドベンダーへの依存リスク • 重要コンポーネントのコンテナ化が困難 (i.e.セキュリティ要件が厳しい) • コンテナ・マイクロサービス開発体制へのシフトが進まない • インフラ機材所有コストの増大 • ハードウェアの陳腐化対応 • 監視運用稼働の削減に苦悩
8 © IDC Frontier Inc. All Rights Reserved. 8 モニタリング
コンテナからクラスタまで どのプラットフォームでも 同じ様にリソースをモニタリング マルチクラウド ハイブリッドクラウド サービスの特長 Any インフラ - 構築環境を選ばない - 学習コスト低減 - GUIから手軽に構築 - 運用負荷軽減 - サポートは日本語 - ベアメタルまたは プライベートクラウドなどの 社内仮想化プラットフォームに Kubernetesを展開 IDCFクラウドのコンピュートに加え GKE/EKS/AKSなど 複数のパブリッククラウドを シームレスに利用可能 ワンストップ マルチクラウド/インフラを 1つのインターフェースで 全てのクラスターを管理 カスタマーサポート IDCFクラウド同様の 日本語によるサポート体制 を提供 シンプル WEB UI WEB UIからワークロードを 簡単管理でき、YAML編集から コマンドライン操作まで 可能
9 © IDC Frontier Inc. All Rights Reserved. IDCFクラウド コンテナコンソール
のWAF対応 SUSE Rancher/Kubernetes環境のWebアプリケーション提供に当たって
10 © IDC Frontier Inc. All Rights Reserved. 10 IDCFクラウド
クラウドコンソールのWAF対応 IDCF Cloud Console 既存 クラウド型 WAF ゼロデイ攻撃 非ボット型攻撃 不正ログイン 標的型攻撃 高度な攻撃 不正なボットや 自動化された攻撃 ソフトウェアの脆弱性や 一般的な攻撃 (OWASP Top10, etc) Webアプリケーションへの サイバー攻撃例
11 © IDC Frontier Inc. All Rights Reserved. 11 IDCFクラウド
コンテナコンソールでの課題 IDCF コンテナ Console (SUSE Rancher/Kubernetes) 既存 クラウド型 WAF ・HTTP/2 ・WebSocket ・SPDY への対応が必須 SUSE RancherのEndpoint、及び、SUSE RancherはKubernetesのEndpointでも ある。そのため、WebSocket・SPDYの通信に対応するWAFが必要。 既存WAFに必要なプロトコル対 応がなかった・・・ ❌
12 © IDC Frontier Inc. All Rights Reserved. 12 要件に適したWAFの選定
要件 A社製品 B社製品 C社製品 NGINX Plus Ingress WebSocket対応 × ◎ ◎ ◎ HTTP/2対応 × ◎ ◎ ◎ SPDY対応 × × × ◎ kubernetesとの相性 - - - ◎ 余談ですが、kubectl execのSPDYについて、Kubernetesコミュニティは議論中 SPDY is deprecated. Switch to HTTP/2. #7452 https://github.com/kubernetes/kubernetes/issues/7452
13 © IDC Frontier Inc. All Rights Reserved. 13 SUSE
Rancher/KubernetesとIngress構成 Pod SUSE Rancher アプリケーション Internet Pod ingress-nginx ingress-nginx ingress-nginx IDCFクラウド コンテナ SUSE Rancher アプリケーション ingress-nginxをNGINX Plus Ingress + App protectへ置き換えていくことができるので、 NGINX Plusへ移行してもKubernetesのリソースとして扱うことができる
14 © IDC Frontier Inc. All Rights Reserved. 14 ingress-nginxとNGINX
Plus IngressのAnnotation Annotation(ingress-nginx) NGINX Plus 備考 nginx.ingress.kubernetes.io/proxy-connect-timeout ◎ nginx.ingress.kubernetes.io/proxy-read-timeout ◎ nginx.ingress.kubernetes.io/proxy-send-timeout ◎ nginx.ingress.kubernetes.io/rewrite-target ◎ nginx.ingress.kubernetes.io/service-upstream ◎ NGINX Ingress Controller v1.11より対応 nginx.ingress.kubernetes.io/ssl-redirect ◎ nginx.ingress.kubernetes.io/use-regex ◎ nginx.ingress.kubernetes.io/server-snippet ◎ nginx.ingress.kubernetes.io/configuration-snippet ◎ Kubernetesコミュニティのingress-nginxで実装が進んでいたservice-upstreamのような AnnotationもNGINX Plusのingressは追随しているのがありがたい
15 © IDC Frontier Inc. All Rights Reserved. 15 NGINX
Plus Ingress のリソース構成 apiVersion: k8s.nginx.org/v1 kind: VirtualServer metadata: name: xxxxxx.com namespace: default spec: host: xxxxxx.com policies: - name: waf-policy server-snippets: | location ^~ /healthz { access_log off; return 200; } routes: - path: ~* ^/ui/.* route: ui-index/idcf--ui VirtualServer apiVersion: k8s.nginx.org/v1 kind: VirtualServerRoute metadata: name: idcf-ui namespace: ui-index spec: host: xxxxxx.com upstreams: - name: ui-index service: ui-index port: 80 use-cluster-ip: true subroutes: - path: ~* ^/ui/.* action: proxy: upstream: ui-index VirtualServerRoute 複数のnamespaceで同じhostを使用するため、VirtualServerとVirtualServerRouteのリソー スタイプを使用する。また、NGINXの機能拡張をConfigmapで利用する。 kind: ConfigMap apiVersion: v1 metadata: name: nginx-config namespace: nginx-ingress data: proxy-connect-timeout: "30s" proxy-read-timeout: "1800s" proxy-send-timeout: "1800s" ….. Configmap ・共通の固有パラメーター ・headers-moreモジュール などをConfigmapにまとめる
16 © IDC Frontier Inc. All Rights Reserved. 16 NGINX
App Protectのリソース構成 apiVersion: k8s.nginx.org/v1 kind: VirtualServer metadata: name: xxxxxx.com namespace: xxxxx spec: host: xxxxx.com policies: - name: waf-policy VirtualServer apiVersion: k8s.nginx.org/v1 kind: Policy metadata: name: waf-policy namespace: xxxxx spec: waf: enable: true apPolicy: "appprotect-policy" securityLog: enable: true apLogConf: "logconf-app" logDest: "syslog:server=xx.x.x.xxx:5144" Policy App Protect apiVersion: appprotect.f5.com/v1beta1 kind: APPolicy metadata: name: appprotect-policy namespace: xxxxx spec: policy: name: app_protect_policy template: name: POLICY_TEMPLATE_NGINX_BASE applicationLanguage: utf-8 ... apiVersion: appprotect.f5.com/v1beta1 kind: APLogConf metadata: name: logconf-app namespace: xxxxx spec: filter: request_type: all content: format: default ... WAFのルール設定は、kind:APPolicyの中で行う。 enforcementModを使い、Blockingの有効・透過を設定。現在は透 過で様子見中。
17 © IDC Frontier Inc. All Rights Reserved. 17 App
Protect DashBoard App Protectに対応したGUIのDashBoardがOSSとして公開されており、WAFとしてリ クエストの状況を可視化、運用中の確認などに利用できる https://github.com/f5devcentral/f5-waf-elk-dashboardsより
18 © IDC Frontier Inc. All Rights Reserved. 18 NGINX
Plus Ingress+App Protectを導入してみて • NGINX App ProtectはKubernetesリソースとして扱える唯一のWAF • NGINX Plus IngressにもKubernetesコミュニティの開発機能がキャッチアップされ るのがありがたい • NGINXとしての機能エンハンス・拡張を組み込むことができる(HTTP/3とか ingress-nginxはまだ様子見で組み込んでいない) • なので、ingress-nginxとNGINXの良いところ採りに期待できる • NGINX Plus Ingress + App ProtectはKubernetesリソースなので、Kubernetesを 利用するインフラ・アプリエンジニアは既存プロセスで扱うことができる • ingress-nginxからの初回コンバートは大変。F5ネットワークス社のコンサルサービ スでのコンバート支援はありがたい
19 © IDC Frontier Inc. All Rights Reserved.