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
モブエンジニア
March 14, 2025
Technology
1
310
セキュリティグループの”タイプ”を改めて考えてみる
JAWS-UG 栃木 #1 20分ロングト───ク会!で登壇した資料です
https://jawsug-tochigi.connpass.com/event/347568/
モブエンジニア
March 14, 2025
Tweet
Share
More Decks by モブエンジニア
See All by モブエンジニア
カスタマーサクセスの視点からAWS Summitの展示を考える~製品開発で活用できる勘所~
masakiokuda
2
85
CDKTFについてざっくり理解する!!~CloudFormationからCDKTFへ変換するツールも作ってみた~
masakiokuda
1
150
改めてAWS WAFを振り返る~業務で使うためのポイント~
masakiokuda
2
270
登壇未経験者のための登壇戦略~LTは設計が9割!!!~
masakiokuda
3
550
宇宙パトロール ルル子から考える LT設計のコツ
masakiokuda
2
130
(キラキラ)人事教育担当のつらみ~教育担当として知っておくポイント~
masakiokuda
0
110
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
110
VPC Reachability AnalyzerAnalyzer~実務での使いどころ
masakiokuda
1
430
爆速成長するエンジニアの秘訣 ~最適なアウトプット方法~
masakiokuda
0
84
Other Decks in Technology
See All in Technology
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
280
Operating Operator
shhnjk
1
590
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
390
LLM時代の検索
shibuiwilliam
2
180
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.4k
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
5
13k
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
3
7.3k
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
1
290
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
230
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
1
190
Lazy application authentication with Tailscale
bluehatbrit
0
210
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.4k
Why Our Code Smells
bkeepers
PRO
336
57k
Fireside Chat
paigeccino
37
3.5k
A Modern Web Designer's Workflow
chriscoyier
695
190k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Bash Introduction
62gerente
613
210k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Unsuck your backbone
ammeep
671
58k
Thoughts on Productivity
jonyablonski
69
4.7k
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分ロングト───ク会!