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
300
セキュリティグループの”タイプ”を改めて考えてみる
JAWS-UG 栃木 #1 20分ロングト───ク会!で登壇した資料です
https://jawsug-tochigi.connpass.com/event/347568/
モブエンジニア
March 14, 2025
Tweet
Share
More Decks by モブエンジニア
See All by モブエンジニア
(キラキラ)人事教育担当のつらみ~教育担当として知っておくポイント~
masakiokuda
0
79
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
84
VPC Reachability AnalyzerAnalyzer~実務での使いどころ
masakiokuda
1
300
爆速成長するエンジニアの秘訣 ~最適なアウトプット方法~
masakiokuda
0
59
JPCERTから始まる草の根活動~セキュリティ文化醸成のためのアクション~
masakiokuda
0
130
Education-JAWS #3 ~教育現場に、AWSのチカラを~
masakiokuda
0
140
アウトプット0のエンジニアが半年でアウトプットしまくった話 With JAWS-UG
masakiokuda
1
220
技術者としてのアクセシビリティ対策~Azureサービスから考える~
masakiokuda
0
42
より良い開発者体験を実現するために~開発初心者が感じた生成AIの可能性~
masakiokuda
1
250
Other Decks in Technology
See All in Technology
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
1
7.1k
情熱と工夫で走り抜け! コミュニティをささえるObservability実践録
b1gb4by
1
120
さくらのクラウド 開発の挑戦とその舞台裏
kazeburo
0
690
Cloud Run を解剖して コンテナ監視を考える / Breaking Down Cloud Run to Rethink Container Monitoring
aoto
PRO
0
110
型がない世界に生まれ落ちて 〜TypeScript運用進化の歴史〜
narihara
1
190
開発も運用もビジネス部門も! クラウドで実現する「つらくない」統制とセキュリティ / Effortless Governance and Security Enabled by the Cloud
kanny
3
1.2k
Oracle Database オプティマイザ・ヒントの活用
oracle4engineer
PRO
1
120
トイルを撲滅!インフラ領域での生成AI活用のススメ
shuya
0
330
Rebase エンジニアリング組織の現状とこれから
rebase_engineering
0
110
AI駆動時代の新規事業の作り方
ryohysk
2
140
AWS LambdaでSocket通信サーバーレスアプリケーションのリアルタイム通信 / 20250523 Kumiko Hennmi
shift_evolve
1
290
撤退危機からのピボット : 4年目エンジニアがリードする TypeScript で挑む事業復活 / crisis-to-pivot-4th-year-engineer-ts-relaunch
carta_engineering
2
730
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Writing Fast Ruby
sferik
628
61k
How to train your dragon (web standard)
notwaldorf
92
6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Statistics for Hackers
jakevdp
799
220k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
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分ロングト───ク会!