Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
セキュリティグループの”タイプ”を改めて考えてみる
Search
モブエンジニア(Masaki Okuda)
March 14, 2025
Technology
1
330
セキュリティグループの”タイプ”を改めて考えてみる
JAWS-UG 栃木 #1 20分ロングト───ク会!で登壇した資料です
https://jawsug-tochigi.connpass.com/event/347568/
モブエンジニア(Masaki Okuda)
March 14, 2025
Tweet
Share
More Decks by モブエンジニア(Masaki Okuda)
See All by モブエンジニア(Masaki Okuda)
ゆるふわエンジニアでもAIフローにチャレンジしたい!!~Zapierのすゝめ~
masakiokuda
1
60
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
3
120
越境を通じて技術とは異なる世界を見てみよう
masakiokuda
0
84
人事組織で経験したチーム崩壊 ~崩壊から得た教訓~
masakiokuda
3
930
(供養枠)Microsoftが考える責任あるAI~開発者として実現するために~
masakiokuda
2
110
振り返りTransit Gateway ~VPCをいい感じでつなげるために~
masakiokuda
4
270
カスタマーサクセスの視点からAWS Summitの展示を考える~製品開発で活用できる勘所~
masakiokuda
2
180
CDKTFについてざっくり理解する!!~CloudFormationからCDKTFへ変換するツールも作ってみた~
masakiokuda
1
260
改めてAWS WAFを振り返る~業務で使うためのポイント~
masakiokuda
2
380
Other Decks in Technology
See All in Technology
[kickflow]20250319_少人数チームでのAutify活用
otouhujej
0
170
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
520
サイボウズフロントエンドの横断活動から考える AI時代にできること
mugi_uno
3
1.1k
事業特性から逆算したインフラ設計
upsider_tech
0
240
Agent Development Kitで始める生成 AI エージェント実践開発
danishi
0
160
Claude Codeは仕様駆動の夢を見ない
gotalab555
23
7.2k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
18
52k
信頼できる開発プラットフォームをどう作るか?-Governance as Codeと継続的監視/フィードバックが導くPlatform Engineeringの進め方
yuriemori
1
190
GISエンジニアよ 現場に行け!
sudataka
1
140
Telemetry APIから学ぶGoogle Cloud ObservabilityとOpenTelemetryの現在 / getting-started-telemetry-api-with-google-cloud
k6s4i53rx
0
160
AIが住民向けコンシェルジュに?Amazon Connectと生成AIで実現する自治体AIエージェント!
yuyeah
0
210
あとはAIに任せて人間は自由に生きる
kentaro
3
440
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Docker and Python
trallard
45
3.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Music & Morning Musume
bryan
46
6.7k
Making Projects Easy
brettharned
117
6.3k
Why Our Code Smells
bkeepers
PRO
338
57k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
BBQ
matthewcrist
89
9.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
A better future with KSS
kneath
239
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
セキュリティグループの”タイプ” を改めて考えてみる 2025.03.14(金) 奥田 雅基(@mob_engineer)
本LTのねらい・対象者 • 本LTのねらい • セキュリティグループの”タイプ”について深堀して理解する • セキュリティグループの”タイプ”が有利な場合・不利な場合を考える • セキュリティグループの奥深さを知ってもらう •
対象者 • AWSのネットワークに関して少し興味を持った方 • セキュリティグループについて違う視点で学びを得たい方 • ネットワークについて苦手意識を持っている方 2 JAWS-UG 栃木 #1 20分ロングト───ク会!
お話しすること・お話ししないこと • お話しすること • セキュリティグループの基礎知識(ステートレス・ステートフル) • 最近のアップデート情報 • セキュリティグループの”タイプ”に関する説明 •
セキュリティグループの”タイプ”の使いどころ • お話ししないこと • セキュリティグループ”以外”のネットワークサービスについて • 各ポートに関する詳細説明 3 JAWS-UG 栃木 #1 20分ロングト───ク会!
自己紹介 • 本名:奥田 雅基(オクダ マサキ) • ペンネーム:モブエンジニア • 所属企業:株式会社スカイウイル •
ロール:開発よりインフラエンジニア • AWS歴:1年半(現在は個人で触っている) • 好きなサービス:Amazon Workspaces • 保有資格: 4 JAWS-UG 栃木 #1 20分ロングト───ク会! X Qiita
お品書き • 前振り • セキュリティグループについて • セキュリティグループの役割 • ステートレス・ステートフル •
セキュリティグループのベストプラクティス • セキュリティグループの”タイプ” • 各タイプに関する説明 • “タイプ”を有効活用する場合、有効活用しない場合 • まとめ 5 JAWS-UG 栃木 #1 20分ロングト───ク会!
最初に・・・ •セキュリティグループの”ゆるい” お話を行います!! 6 JAWS-UG 栃木 #1 20分ロングト───ク会!
今回お伝えしたいこと •セキュリティグループってすごく 奥深いですよ!! 7 JAWS-UG 栃木 #1 20分ロングト───ク会!
どのくらい奥深いのかというと、、、 •セキュリティグループをすべて理解すると、「ネットワー クチョットデキル」に進化できると思います。 8 JAWS-UG 栃木 #1 20分ロングト───ク会!
単純にルーティング設定するだけでは?? •正しく設定しないと、痛い目を見 る可能性があります!! 9 JAWS-UG 栃木 #1 20分ロングト───ク会!
単純にルーティング設定するだけでは?? •正しく設定しないと、痛い目を見 る可能性があります!! 私は痛い目を見たことがあります… 10 JAWS-UG 栃木 #1 20分ロングト───ク会!
セキュリティグループについて 11 JAWS-UG 栃木 #1 20分ロングト───ク会!
コンソール上で見ると・・・ 12 JAWS-UG 栃木 #1 20分ロングト───ク会!
コンソール上で見ると・・・ 13 JAWS-UG 栃木 #1 20分ロングト───ク会!
コンソール上で見ると・・・ これです!! 14 JAWS-UG 栃木 #1 20分ロングト───ク会!
セキュリティグループとは • セキュリティグループは、関連付けられたリソースに到達するトラフィックおよび リソースから離れるトラフィックを制御します。例えば、セキュリティグループを EC2 インスタンスに関連付けると、インスタンスのインバウンドトラフィックとアウ トバウンドトラフィックが制御されます。 • VPC を作成すると、デフォルトのセキュリティグループが使用されます。VPC
ごとに追加のセキュリティグループを作成し、それぞれに独自のインバウンド ルールとアウトバウンドルールを設定できます。 • ネットワークACLと使い分ける必要があります。 15 JAWS-UG 栃木 #1 20分ロングト───ク会!
セキュリティグループとネットワークACLの違い • AWSユーザーガイドでもわかりやすく示されています。 https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/infrastruct ure-security.html#VPC_Security_Comparison 16 JAWS-UG 栃木 #1 20分ロングト───ク会!
ステートレス・ステートフルについて • ステートレス • 行きの通信経路だけでなく戻りの通信経路も指定する • 行きと戻りの通信双方で通信経路を指定しなくてはいけない • ステートフル •
戻りの通信経路を指定しなくても勝手に通信してくれる • 行きの通信経路さえ指定すれば通信が行える 17 JAWS-UG 栃木 #1 20分ロングト───ク会!
分かりやすく例を示してみます • トラック運転手がA倉庫からB倉庫まで荷物を届けるシーンを想 像しましょう。 18 JAWS-UG 栃木 #1 20分ロングト───ク会!
分かりやすく例を示してみます • ステートフルの場合は、B倉庫に荷物を届けたらトラック運転手 が勝手にA倉庫まで戻ってくれます。 19 JAWS-UG 栃木 #1 20分ロングト───ク会!
分かりやすく例を示してみます • ステートレスの場合、B倉庫の従業員がトラック運転手に対して 「A倉庫の道のりは◦◦です」と言わないと戻ってくれません。 20 JAWS-UG 栃木 #1 20分ロングト───ク会!
実は去年10月にもアップデートがありました!! https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/security-group-assoc.html 21 JAWS-UG 栃木 #1 20分ロングト───ク会!
実は去年10月にもアップデートがありました!! https://qiita.com/mob_engineer/items/31cf1bd3efdfafe2301f 22 JAWS-UG 栃木 #1 20分ロングト───ク会!
ここからが本題です 23 JAWS-UG 栃木 #1 20分ロングト───ク会!
セキュリティグループの”タイプ” 24 JAWS-UG 栃木 #1 20分ロングト───ク会!
セキュリティグループのタイプとは これのことです 25 JAWS-UG 栃木 #1 20分ロングト───ク会!
タイプについて • ネットワークトラフィックに開くプロトコル。SSH (Linux インスタンスの場合)、 RDP (Windows インスタンスの場合)、HTTP および HTTPS
などの 一般的なプロトコルを選択して、インターネットトラフィックがインスタンスに 到達できるようにすることができます。カスタムポートまたはポート範囲を手 動で入力することもできます。 ざっくり言えば、サービスさえ指定すれば勝 手にポート番号を入れる機能 26 JAWS-UG 栃木 #1 20分ロングト───ク会!
利用可能なタイプ • 利用可能なタイプについて整理してみました。 • カスタム TCP • カスタム UDP •
カスタム ICMP - IPv4 • カスタムプロトコル • すべての TCP • すべての UDP • すべての ICMP - IPv4 • すべての ICMP - IPv6 • すべてのトラフィック • SSH • SMTP • DNS (UDP) • DNS (TCP) • HTTP • POP3 • IMAP • LDAP • HTTPS • SMB • SMTPS • IMAPS • POP3S • MSSQL • NFS • MYSQL/Aurora • RDP • Redshift 27 JAWS-UG 栃木 #1 20分ロングト───ク会! • PostgreSQL • Oracle-RDS • WinRM-HTTP • WinRM- HTTPS • Elastic Graphics • CQLSH / CASSANDRA
利用可能なタイプ • 利用可能なタイプについて整理してみました。 • カスタム TCP • カスタム UDP •
カスタム ICMP - IPv4 • カスタムプロトコル • すべての TCP • すべての UDP • すべての ICMP - IPv4 • すべての ICMP - IPv6 • すべてのトラフィック • SSH • SMTP • DNS (UDP) • DNS (TCP) • HTTP • POP3 • IMAP • LDAP • HTTPS • SMB • SMTPS • IMAPS • POP3S • MSSQL • NFS • MYSQL/Aurora • RDP • Redshift 数えてみたら33種 類ありました!! 28 JAWS-UG 栃木 #1 20分ロングト───ク会! • PostgreSQL • Oracle-RDS • WinRM-HTTP • WinRM- HTTPS • Elastic Graphics • CQLSH / CASSANDRA
ちなみにネットワークACLの場合は • 利用可能なタイプについて整理してみました。 • カスタムプロトコル • カスタム TCP • カスタム
UDP • カスタム ICMP - IPv4 • カスタム ICMP - IPv6 • すべての TCP • すべての UDP • すべての ICMP - IPv4 • すべての ICMP - IPv6 • SSH (22) • telnet (23) 29 JAWS-UG 栃木 #1 20分ロングト───ク会! • SMTP (25) • nameserver (42) • DNS (TCP) (53) • DNS (UDP) (53) • HTTP (80) • POP3 (110) • IMAP (143) • LDAP (389) • HTTPS (443) • SMB (445) • SMTPS (465) • IMAPS (993) • POP3S (995) • MS SQL (1433) • Oracle (1521) • NFS (2049) • MySQL/Aurora (3306) • RDP (3389) • PostgreSQL (5432) • Redshift (5439) • WinRM-HTTP (5985) • WinRM-HTTPS (5986) • HTTP* (8080) • HTTPS* (8443)
ちなみにネットワークACLの場合は • 利用可能なタイプについて整理してみました。 • カスタムプロトコル • カスタム TCP • カスタム
UDP • カスタム ICMP - IPv4 • カスタム ICMP - IPv6 • すべての TCP • すべての UDP • すべての ICMP - IPv4 • すべての ICMP - IPv6 • SSH (22) • telnet (23) 30 JAWS-UG 栃木 #1 20分ロングト───ク会! • SMTP (25) • nameserver (42) • DNS (TCP) (53) • DNS (UDP) (53) • HTTP (80) • POP3 (110) • IMAP (143) • LDAP (389) • HTTPS (443) • SMB (445) • SMTPS (465) • IMAPS (993) • POP3S (995) • MS SQL (1433) • Oracle (1521) • NFS (2049) • MySQL/Aurora (3306) • RDP (3389) • PostgreSQL (5432) • Redshift (5439) • WinRM-HTTP (5985) • WinRM-HTTPS (5986) • HTTP* (8080) • HTTPS* (8443) 数えてみたら35種 類ありました!!
“タイプ”を使えば楽にサービス開放できるね 実はそこに罠がある。。。 31 JAWS-UG 栃木 #1 20分ロングト───ク会!
ちょっと待ってもらいたい • 特定サービス用の”タイプ”の場合、あらかじめポートが指定されている。 32 JAWS-UG 栃木 #1 20分ロングト───ク会!
特定サービス用の”タイプ“とは • カスタム TCP • カスタム UDP • カスタム ICMP
- IPv4 • カスタムプロトコル • すべての TCP • すべての UDP • すべての ICMP - IPv4 • すべての ICMP - IPv6 • すべてのトラフィック • SSH • SMTP • DNS (UDP) • DNS (TCP) • HTTP • POP3 • IMAP • LDAP • HTTPS • SMB • SMTPS • IMAPS • POP3S • MSSQL • NFS • MYSQL/Aurora • RDP • Redshift • PostgreSQL • Oracle-RDS • WinRM-HTTP • WinRM- HTTPS • Elastic Graphics • CQLSH / CASSANDRA 33 JAWS-UG 栃木 #1 20分ロングト───ク会!
有名なポートが抱えている問題 • SSH=22番ポートやMySQL=3389 番ポートは世の中的にも知られていま す。知られているということは,,,セキュリ ティ攻撃の被害を受けやすいということ を意味します。 • セキュリティに厳しいユーザによっては、 有名なポート”以外”を利用してもらい
たいといった要望もあります。 https://www.shadowserver.org/news/over-3-6m-exposed-mysql-servers-on-ipv4-and- ipv6/ 34 JAWS-UG 栃木 #1 20分ロングト───ク会!
“タイプ”を有効活用する場合、有効活用しない場合 • “タイプ”を有効活用する場合 • セキュリティグループの手前にWAFなどのセキュリティ機器がある • デフォルトのサービスポートを利用して運用を楽にしたい • セキュリティに関して最低限の対策を講じればいい場合 •
“タイプ”を有効活用しない場合 • NACL、セキュリティグループしかセキュリティ対策がない • 機密情報など外部に漏れたら問題が起きる場合 • 厳密にセキュリティ対策を求めているユーザの場合 35 JAWS-UG 栃木 #1 20分ロングト───ク会!
まとめ • セキュリティグループにはタイプといった機能があります • タイプをうまく使えば、ポート情報を手入力しない(=オ ペミス)を防止できる • ただし、タイプで設定しているポートはデフォルトのサービス ポートのため、セキュリティ上のリスクがある場合がある •
その場合は、別のポートを用いてサービスを利用するようにソ リューションを構築する必要がある 36 JAWS-UG 栃木 #1 20分ロングト───ク会!
今回お伝えしたいこと •セキュリティグループってすごく 奥深いですよ!! 37 JAWS-UG 栃木 #1 20分ロングト───ク会! BGP、OSPF、RIPとDirect Connectの関係性を深堀りすると・・・
参考サイト 38 JAWS-UG 栃木 #1 20分ロングト───ク会! セキュリティグループを使用して AWS リソースへのトラフィックを制御する -
Amazon Virtual Private Cloud VPC のセキュリティのベストプラクティス - Amazon Virtual Private Cloud ARCHIVED: AWS Security Best Practices プロが教える、AWSセキュリティグループ設計のコツ | TOKAIコミュニケーションズ AWSソリューション Amazon EC2 セキュリティグループの接続の追跡 - Amazon Elastic Compute Cloud 「一つのVPCを作る」徹底討論 - Speaker Deck
FIN 39 JAWS-UG 栃木 #1 20分ロングト───ク会!