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
NobuakiKikuchi
May 10, 2022
Technology
960
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
エンジニアと気軽に繋がれるプラットフォーム「ハッカー飯」で行った セキュリティ・モニタリングに関する取り組みについて
スタートアップ事例祭り 〜監視・モニタリング・セキュリティ編〜
https://aws-startup-community.connpass.com/event/241721/
NobuakiKikuchi
May 10, 2022
More Decks by NobuakiKikuchi
See All by NobuakiKikuchi
ハッカー飯に New Relic を導入して実践した3つのこと
nobuakikikuchi
0
830
失敗を経験したあなたへ〜建設的なインシデントの振り返りを行うために実践するべきこと〜
nobuakikikuchi
0
810
約1万台のサーバー運用を行うMSPの舞台裏
nobuakikikuchi
0
580
Dockerをざっくり知る
nobuakikikuchi
0
760
Other Decks in Technology
See All in Technology
NDIAS CTF 2026 問題解説会資料
bata_24
0
170
背中から、背中へ /paying forward to community
naitosatoshi
0
210
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
140
GitHub Copilot運用のリアル ~AI Credit時代にどう向き合うか~
takafumisu2uk1
0
610
そのタスクオンスケですか?
poropinai1966
0
110
product engineering with qa
nealle
0
140
作る力から、見極める力へ — AI時代に広がるエンジニアの価値と役割
rince
0
400
打造你的 AI 工作流:Agent Skill + MCP 實戰工作坊
appleboy
0
420
Baseline対応のDOMの型定義を作った
uhyo
2
600
クラウドファンディング版StackChan 3体(4体)をインタラクティブな体験型作品にして展示もした話 / スタックチャンお誕生日会2026
you
PRO
0
270
プロンプト_きのこカンファレンス2026_LT
yurufuwahealer
0
120
【FinOps】データドリブンな意思決定を目指して
z63d
3
580
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
270
Game over? The fight for quality and originality in the time of robots
wayneb77
1
210
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
650
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
410
Leo the Paperboy
mayatellez
7
1.9k
First, design no harm
axbom
PRO
2
1.2k
Statistics for Hackers
jakevdp
799
230k
RailsConf 2023
tenderlove
30
1.5k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
Transcript
エンジニアと気軽に繋がれるプラットフォーム「ハッカー飯」で行った セキュリティ・モニタリングに関する取り組みについて 菊池 宣明
自己紹介 菊池 宣明 • 主に SRE 関係の仕事を担当 • 今年からハッカー飯の開発メンバーとしてジョイン 経歴
• 科学系の大学院を卒業→ CIer(新卒) → 独立 • エンジニア5年生 趣味 • ゲーム(スマブラ、Fortnite) 好きな AWS サービス • AWS サポート @kikulabo
ハッカー飯とは? 技術や知識でアイデアを形にする人々(=ハッカー)が、 ご飯を囲むような気軽さで、語り合い、教え合い、繋がれるオンラインプラットフォーム
• 会社概要 ◦ 会社名: 株式会社スタークロス ◦ 代表取締役: 西田宗太郎 • ハッカー飯の特徴
◦ 話したいことをもとにエンジニアと1 on 1マッチング ◦ 複数人とエンジニアと簡易的なイベントを行う、食事会 ◦ 興味のあることをもとに集まるコミュニティ機能 • サービス開発の背景 ◦ アイデアを形にするエンジニアが周りにいない ◦ 他の企業に勤めてるエンジニアの生の声が知りたい ◦ 技術雑談をして新しい発見をしたい などなど、エンジニアと気軽に話せる環境が周りにあまりないといった課題を解決するため ハッカー飯とは?
ハッカー飯の特徴
ハッカー飯の特徴
ハッカー飯の特徴
ハッカー飯の特徴
ハッカー飯の特徴
ハッカー飯の運営・開発について • 運営に関して ◦ メンバー全員それぞれ本業がある中、副業でハッカー飯に携わっている • 開発スタイル ◦ 毎週土曜日に Discord
のボイスチャンネルに入室し各々開発を進めていく ◦ 1時間開発して10分間休憩(スマブラ)をするというサイクルで行っている ◦ 夜に定例を行いそれぞれのタスクの確認や今後の方針について話し合う • 収益化に関して ◦ 現状収益化がまだ出来ていないのでコストを抑えた構成となっている ◦ 今後法人版のハッカー飯を作り、企業の中のエンジニアと気軽に繋がれるようなシステムを構築する予定
本日お話しする内容 • セキュリティ ◦ Lightsail を EC2 へ移行した話 ◦ IAM
ユーザの管理 • モニタリング ◦ New Relic 導入の話
本日お話しする内容 • セキュリティ ◦ Lightsail を EC2 へ移行した話 ◦ IAM
ユーザの管理 • モニタリング ◦ New Relic 導入の話
ハッカー飯のインフラ構成の概要(初期)
ハッカー飯のインフラ構成の概要(初期)
Lightsail とは? https://aws.amazon.com/jp/lightsail/
Lightsail の選定した3つの理由 • 理由①: コスト管理を行いやすいから ◦ 定額で使用できるため予算を立てやすい ◦ $3.5 のプランを使用すると
EC2 の一番安いインスタンスタイプを選択して1ヶ月稼働した金額よりも安くなる
• 理由②: 環境の構築を簡単に素早く出来るから ◦ 数クリックで環境を構築できるのは当時の開発メンバーにとって都合が良かった Lightsail の選定した3つの理由
Lightsail の選定した3つの理由 • 理由③: EC2 への移行も可能 ◦ Lightsail 上で取得したスナップショットを簡単に EC2
へエクスポートを行える
Lightsail を使っていて困ったこと • Lightsail に IAM ロールを使用できない ◦ EC2 のように必要な権限を付与した
IAM ロールを作成してアタッチするといったことが出来ない ◦ IAM ユーザを作成しアクセスキーをインスタンス内部に格納する必要がある • スケールアップが簡単に出来ない ◦ EC2 のようにインスタンスを停止しスケールアップして起動という操作が Lightsail では行えない ▪ Lightsail の場合スケールアップするにはスナップショットから作り直す必要がある ◦ 今後サービスが広く認知されアクセス数が増えた際に困りそう
Lightsail から EC2 へ移行 • アクセスキー/シークレットキーがハードコーディングされており誰でも見れる状態になっていた • 今後開発メンバーが増えてきた際にセキュリティ上リスクなると判断し、 IAM ロールを使用できる
EC2 へ移行 ◦ 移行の流れ 1. Lightsail を EC2 へエクスポート 2. 適切な権限に絞った IAM ロールを EC2 にアタッチ 3. 使用していたアクセスキーを無効化しテストを実施 4. 問題ないことを確認出来次第アクセスキーを削除
IAM ユーザの管理 • AWS コンソールへのログイン等がこれまで Root ユーザで行われていた • アクセスキーの使用を無くしたタイミングで IAM
ユーザ管理の見直しを実施 • ハッカー飯では簡単にセットアップできてユーザ管理を効率化出来る AWS Single Sign-On を採用
• AWS SSO を使用することでユーザー/グループの管理および認証を行える ◦ ポータルサイトにログイン後、所属しているグループに付与されている権限のみ使用を制限を出来る AWS Single Sign-On(SSO) について
本日お話しする内容 • セキュリティ ◦ Lightsail を EC2 へ移行した話 ◦ IAM
ユーザの管理 • モニタリング ◦ New Relic 導入の話
監視導入の背景 ① ② ③ ④ .NET 5 から .NET 6
へ バージョンを上げるぞ! ハッカー飯運営
監視導入の背景 ① ② ③ ④ .NET 5 から .NET 6
へ バージョンを上げるぞ! ハッカー飯運営 インフラ側の必要な作業を行わずに作業を終了
監視導入の背景 ① ② ③ ④ .NET 5 から .NET 6
へ バージョンを上げるぞ! ハッカー飯にログイン出来ない人が発生 ハッカー飯運営 インフラ側の必要な作業を行わずに作業を終了
ユーザが連絡することで運営側が障害を認知 監視導入の背景 ① ② ③ ④ .NET 5 から .NET
6 へ バージョンを上げるぞ! インフラ側の必要な作業を行わずに作業を終了 ハッカー飯にログイン出来ない人が発生 ハッカー飯運営
• 反省点 ◦ 必要な操作が本番環境で実施されていなかった ▪ 改善点: 手順のレビュー制度の導入や Ansible 化を実施 ◦
ハッカー飯が正常稼働しているかどうかをそもそも運営サイドが認知できていない ▪ 改善点: モニタリングツールの導入 • よりユーザ体験を向上させるためにモニタリングツールの導入を優先的に実施 障害内容の振り返り
• CloudWatch と SaaS 製のモニタリングツール ◦ どちらも出来ることは大方一緒(のはず)で、得意分野がそれぞれ異なる。 ◦ CloudWatch ▪
AWS リソースを手早くモニタリングすることが出来る ◦ SaaS 監視ツール ▪ マルチアカウント/クラウドの管理が得意 • 将来的にマルチアカウント/クラウド化しても大丈夫なようにハッカー飯では SaaS 監視ツールを採用 モニタリングツールの選定
New Relic について • ハッカー飯では New Relic という SaaS 製の監視ツールを導入
◦ 選定理由: 1ユーザであれば全ての機能を期間制限なく無料利用枠で使用できるため ▪ ※月間100GBまでのデータ容量であれば無料(他にも制限は存在します) • New Relic の主な機能 ◦ Telemetry Data Platform ▪ テレメトリデータを収集・格納する場所。チャートやダッシュボードを作成することも出来る。 ◦ Full Stack Observability ▪ 収集したテレメトリーデータを分析・可視化することが出来る機能。 ◦ Alert and Applied Intelligence ▪ 閾値ベースのアラート設定や、異常値の検出やインシデントの予測等を行う機能。
• ハッカー飯では New Relic という SaaS 製の監視ツールを導入 ◦ 選定理由: 1ユーザであれば全ての機能を期間制限なく無料利用枠で使用できるため
▪ ※月間100GBまでのデータ容量であれば無料 • New Relic の主な機能 ◦ Telemetry Data Platform ▪ テレメトリデータを収集・格納する場所。チャートやダッシュボードを作成することも出来る。 ◦ Full Stack Observability ▪ 収集したテレメトリーデータを分析・可視化することが出来る機能。 ◦ Alert and Applied Intelligence ▪ 閾値ベースのアラート設定や、異常値の検出やインシデントの予測等を行う機能。 New Relic について メトリクス、イベント※、ログ、トレースのことを指す ※New Relic Agent が送信するデータ
Telemetry Data Platform について • Agent をインストールすることでテレメトリーデータを Telemetry Data Platform
に送信することが出来る • テレメトリーデータを基にダッシュボードを作成することも可能
• New Relic APM ◦ アプリケーションのパフォーマンスの計測を行える機能 Full Stack Observability について
Webリクエストの処理に費やす平均時間
Full Stack Observability について • New Relic APM ◦ アプリケーションのパフォーマンスの計測を行える機能
1分間に処理するリクエストの数
Full Stack Observability について • New Relic APM ◦ アプリケーションのパフォーマンスの計測を行える機能
• Apdex Score について補足 ◦ ユーザ満足度を定量的に表したもの ◦ レスポンスタイムの閾値を T とした時、リクエストを以下の3つのレベルに分類
▪ <満足> レベルのリクエスト: レスポンスタイム ≦ T ▪ <許容可能> レベルのリクエスト: T < レスポンスタイム ≦ 4T ▪ <不満足> レベルのリクエスト: 4T < レスポンスタイム ◦ リクエストを分類後、下記の計算式を用いて Apdex Score を算出 ▪ 0~1 の値を取り、0が最悪のスコア、1が最高のスコアとなる Full Stack Observability について
Full Stack Observability について • New Relic Infrastructure ◦ CPU、メモリ、ディスク
IO やネットワークトラフィックを観測することも出来る
Full Stack Observability について • New Relic Synthetics ◦ システムに対して外部から稼働状況を確認する機能(外形監視)
Alert and Applied Intelligence について • New Relic Alert ◦
アラートの設定および通知先(Email、Slack、PagerDuty 等)を設定する機能
New Relic 使って実践していること • ユーザに影響が出そうなものをアラートとして設定 ◦ 外型監視、エラー発生率、レスポンスタイム等 • 1週間に一度メトリクス全体を一通り確認 ◦
アラートが発生していなくとも異常が発生していないかを確認するため ▪ 確認ポイント • エラーが起きていないか • レスポンスタイムに異常が起きていないか • インフラのリソース使用状況に問題が起きていないか ◦ 定期的にメトリクスを確認することで上記のような異常がアラートして検知される前に出来るだけ対処する
• セキュリティ ◦ Lightsail を EC2 へ移行した話 ▪ アクセスキーを廃止し IAM
ロールに置き換えることでキーが漏洩する可能性を最小限にした ◦ IAM ユーザの管理 ▪ Root ユーザでの運用をやめ、AWS SSO を使用したユーザ管理を行うようにした • モニタリング ◦ New Relic 導入の話 ▪ サービスが正常稼働していることを運営メンバーが把握できるようにアラートを設定 ▪ 定期的なパフォーマンスの観測会を行うことでユーザ体験の向上を目指す まとめ