$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
セキュリティグループの”タイプ”を改めて考えてみる
Search
モブエンジニア(Masaki Okuda)
March 14, 2025
Technology
1
350
セキュリティグループの”タイプ”を改めて考えてみる
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)
~モブ、まだいけるよな?~2025年をふりかえってみて_20251126
masakiokuda
0
140
技術者としてのキャリア設計〜会社とのより良い関係づくり〜
masakiokuda
1
91
相互コミュニケーションの難しさ
masakiokuda
0
320
登壇したい人集合!!登壇相談室
masakiokuda
2
70
~キャラ付け考えていますか?~ AI時代だからこそ技術者に求められるセルフブランディングのすゝめ
masakiokuda
7
540
社外コミュニティの歩き方
masakiokuda
2
230
ゆるふわエンジニアでもAIフローにチャレンジしたい!!~Zapierのすゝめ~
masakiokuda
2
170
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
4
200
越境を通じて技術とは異なる世界を見てみよう
masakiokuda
0
140
Other Decks in Technology
See All in Technology
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1k
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
1
240
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
160
SSO方式とJumpアカウント方式の比較と設計方針
yuobayashi
7
510
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
550
形式手法特論:CEGAR を用いたモデル検査の状態空間削減 #kernelvm / Kernel VM Study Hokuriku Part 8
ytaka23
2
450
計算機科学をRubyと歩む 〜DFA型正規表現エンジンをつくる~
ydah
3
200
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
180
Oracle Technology Night #95 GoldenGate 26ai の実装に迫る1
oracle4engineer
PRO
0
150
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
590
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
270
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
100
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Mobile First: as difficult as doing things right
swwweet
225
10k
Thoughts on Productivity
jonyablonski
73
5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Context Engineering - Making Every Token Count
addyosmani
9
490
The World Runs on Bad Software
bkeepers
PRO
72
12k
Raft: Consensus for Rubyists
vanstee
141
7.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
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分ロングト───ク会!