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)
相互コミュニケーションの難しさ
masakiokuda
0
210
登壇したい人集合!!登壇相談室
masakiokuda
2
54
~キャラ付け考えていますか?~ AI時代だからこそ技術者に求められるセルフブランディングのすゝめ
masakiokuda
7
460
社外コミュニティの歩き方
masakiokuda
2
180
ゆるふわエンジニアでもAIフローにチャレンジしたい!!~Zapierのすゝめ~
masakiokuda
2
120
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
4
160
越境を通じて技術とは異なる世界を見てみよう
masakiokuda
0
100
人事組織で経験したチーム崩壊 ~崩壊から得た教訓~
masakiokuda
3
1.1k
(供養枠)Microsoftが考える責任あるAI~開発者として実現するために~
masakiokuda
2
110
Other Decks in Technology
See All in Technology
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
150
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
290
バッチ処理で悩むバックエンドエンジニアに捧げるAWS Glue入門
diggymo
3
200
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
200
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
160
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
790
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.4k
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
380
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.2k
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.4k
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
420
KotlinConf 2025_イベントレポート
sony
1
120
Featured
See All Featured
Docker and Python
trallard
45
3.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Rails Girls Zürich Keynote
gr2m
95
14k
We Have a Design System, Now What?
morganepeng
53
7.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Raft: Consensus for Rubyists
vanstee
140
7.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Designing for humans not robots
tammielis
253
25k
KATA
mclloyd
32
14k
Fireside Chat
paigeccino
39
3.6k
How GitHub (no longer) Works
holman
315
140k
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分ロングト───ク会!