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
How to build/ops websites safety (2020-12-10)
Search
Daiji Hirata
December 10, 2020
Business
0
100
How to build/ops websites safety (2020-12-10)
ウェブサイト運用にともなうリスクと安定運用のコツ
2020.12.10 シックス・アパート オンラインミニセミナー スライド
Daiji Hirata
December 10, 2020
Tweet
Share
More Decks by Daiji Hirata
See All by Daiji Hirata
MTDDC Meetup TOKYO 2024 Keynote
hirata
1
610
MTDDC Meetup TOHOKU 2024 Keynote Speech
hirata
1
660
MTDDC Meetup Tokyo 2023 Keynote
hirata
0
870
MTDDC Meetup Tokyo 2022 Keynote
hirata
0
82
MTDDC meetup Tokyo 2021 Keynote
hirata
0
1.3k
How to build a Robust Website for Peak Traffics (2021-02-12)
hirata
0
83
MTDDC Meetup Tokyo 2020 Keynote
hirata
0
190
MTDDC Meetup Tokyo 2019 Closing Session
hirata
0
1.4k
AWS-ISV-SaaS-Seminar-2019-10-28-Tokyo
hirata
0
77
Other Decks in Business
See All in Business
採用ピッチブック
macloud
3
72k
株式会社メディアドゥ 中期経営計画 2026-2030年2月期(5ヵ年)
mediado_ir
0
380
株式会社ゼロフィールド 会社紹介
zerofield
0
280
イグニション・ポイント株式会社/採用エントランスBook_2025
ignitionpointhr
2
98k
株式会社CINC 会社案内/Company introduction
cinchr
6
56k
新しいAI体験を生み出すための v0プロトタイプ駆動型開発
inagakikay
0
1.2k
株式会社AGRI SMILE - Culture Deck
agrismile
0
33k
THE BINGO - サービス紹介・実績 資料
fujiyamayuta
0
660k
株式会社Domuz会社紹介資料(採用)
kimpachi_d
0
28k
Fantia株式会社 会社紹介資料
fantia
0
1.3k
営業AIエージェント「アポドリ」のつくりかた
ikeyatsu
8
3.8k
会社紹介資料【ギバーテイクオール株式会社】
givertakeall
0
2.1k
Featured
See All Featured
Optimizing for Happiness
mojombo
378
70k
Statistics for Hackers
jakevdp
798
220k
Become a Pro
speakerdeck
PRO
28
5.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Being A Developer After 40
akosma
91
590k
Documentation Writing (for coders)
carmenintech
71
4.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
BBQ
matthewcrist
88
9.6k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Transcript
γοΫεɾΞύʔτ ฏా େ࣏ ΣϒαΠτӡ༻ʹͱͳ͏ϦεΫͱ҆ఆӡ༻ͷίπ ΣϒαΠτΛ҆৺ͯ͠׆༻͢ΔͨΊʹ͓͖͍ͬͯͨ͜ͱ
ͻΒ͍ͨͩ͡ 4JY"QBSU %JSFDUPS $50 !IJSBUB
ࠓͷ • ΣϒαΠτӡ༻্ͷϦεΫͱݪҼ • جຊతͳରࡦ • ରࡦͷҰྫɺެ։αʔόͷ • ͦͷଞɺؾΛ͚ͭΔ͜ͱ
ΣϒαΠτͷϦεΫ͍Ζ͍Ζ • αΠτͷվ᜵ɺͬऔΓ • αΠτͷμϯ • ใ࿙Ӯ • ౿ΈʹΘΕ͍ͯͨ •
ߋ৽͕Ͱ͖ͳ͘ͳͬͨ
αΠτͷվ᜵ɺͬऔΓ • ใͷૢ࡞ • ϚϧΣΞ͕͞Ε͍ͯͨ • ѱҙͷ͋ΔϓϩάϥϜΛΫϥΠΞϯτʹ࣮ߦͤ͞Δ • ϑΟογϯάٗʹΘΕ͍ͯͨ •
ݸਓใΫϨδοτΧʔυใΛ౪·ΕΔ
None
ෛͷ࿈ • ϚϧΣΞ / ϑΟογϯάʹΘΕΔ • ϒϩοΫϦετʹొ͞ΕΔ • Safe Browsing
ػೳͰαΠτ͕දࣔ͞Εͳ͘ͳΔ…
αΠτͷμϯ • αΠτ͕ਅͬനʹͳͬͨ • 404 Not Found φκͷΤϥʔը໘
ใ࿙Ӯ • αʔόʹอଘ͍ͯͨ͠ݸਓใ͕… • ·ͩެ։͍ͯ͠ͳ͍ͣͷ PDF ϑΝΠϧ͕…
౿Έʹ͞Ε͍ͯͨ? ඪతܕ߈ܸʹΘΕͨྫ • Βͳ͍ϑΝΠϧ͕͔ࣾΒΞοϓϩʔυ͞Ε͍ͯͨ • Βͳ͍αʔό͔ΒͷΞΫηεͰμϯϩʔυ͞Ε͍ͯͨ • Βͳ͍ϑΝΠϧ͕ࣾ֎͔ΒΞοϓϩʔυ͞Ε͍ͯͨ • ࣾͷPC͔ΒφκͷΞΫηε͕…
ߋ৽͕Ͱ͖ͳ͍ • CMS ͷཧը໘ʹϩάΠϯͰ͖ͳ͍ • αʔόͷΞΧϯτ͕Θ͔Βͳ͍
͞·͟·ͳݪҼ • ֎෦͔ΒͷͳΜΒ͔ͷΞΫγϣϯ (߈ܸ) • ނো • ୯७ͳϛε • ෦൜ߦ
• ͳʹ͍ͯ͠ͳ͍ͷʹ……
جຊతͳରࡦͷߟ͔͑ͨ • ݪҼΛ༧͠ɺͦΕͧΕͷରࡦΛߟ͑Δ • ϦεΫΛࣄલʹݮΒ͢ • ͠ൃੜͨ͠ͱ͖ͷϦΧόϦʔํ๏Λࣄલʹ༻ҙ͓ͯ͘͠ • ӡ༻ʹؾΛ͏ •
αʔόɺΞϓϦέʔγϣϯΛ҆શʹอͭ • ेͳϦιʔεΛख͢Δ • ීஈ͔ΒϦεΫʹඋ͑Δ
ҰൠతͳΣϒαΠτͰͷߟ͔͑ͨ • ҰൠͷใఏڙͷͨΊͷΣϒαʔό • ίʔϙϨʔταΠτͳͲ • ߋ৽ਵ࣌ɺσβΠϯมߋͳͲසൟͰͳ͍ • ड͚Δͷ͍߹ΘͤϑΥʔϜఔ
ҰൠతͳΣϒαΠτͰͷߟ͔͑ͨ • ެ։༻αʔόͱΞϓϦέʔγϣϯ༻αʔόΛ͢Δ • CMS αʔόҰൠ͔ΒΞΫηεͰ͖ͳ͍Α͏ʹɺ੍ݶ͢Δ • ΞΫηε੍ݶɺωοτϫʔΫͷ • ެ։༻αʔόʹɺඞཁͳΞϓϦέʔγϣϯͷΈઃஔ͢Δ
• ੩తίϯςϯπͷΈͩͱɺ͔ͳΓ҆શ
010111……… ެ։ྖҬ CMS 1ͷαʔόʹͯࠞ͢ࡏ html, image, css, js, etc.
ެ։༻αʔό CMS ެ։ྖҬ 010111……… ެ։༻αʔόͱ CMS Λ͢Δ
ެ։༻αʔόͷ • αΠτΛ੩తίϯςϯπͱͯ͠४උ͠ɺެ։༻αʔόʹసૹ͢Δ • MT ͩͱϓϥάΠϯΛར༻͢Δ͜ͱ͕Ұൠత • Uploader, SmartSyncPack, Movable
Type Premium (SiteSync) • MT Ϋϥυʹඪ४Ͱαʔό৴Λ༻ҙ͍ͯ͠Δ • సૹઌͱରԠ͢Δϓϩτίϧʹҙ • FTPS, SFTP, rsync, S3 (AWS) ͳͲ
ެ։༻αʔό CMS ެ։ྖҬ 010111……… ඇެ։ྖҬ ৴ ࠶ߏங (੩తϑΝΠϧߏங)
৴ػೳͷϝϦοτ • ৴ઌΛෳ༻ҙ͢Δ͜ͱͰɺεςʔδϯάͷΑ͏ʹར༻Ͱ͖Δ • ίϯςϯπΛͯ͠ཧ͢Δ͜ͱ͕Ͱ͖Δ • େنαΠτͷҰ෦͚ͩΛ MT ΫϥυͰཧ͢Δ •
෦ຖʹ৴Λ͚Δ
ެ։༻αʔό ඇެ։ྖҬ ৴ ֬ೝ༻αʔό ৴ CMS
ެ։༻αʔό CMS ඇެ։ྖҬ Ұ෦ͷྖҬʹ͚ͩ৴
CMS ͷΞΫηε੍ݶηΩϡϦςΟڧԽ • IP ΞυϨεͷ੍ݶ • ύεϫʔυอޢ • WAF ͷར༻
CMS ͷӅṭ • CMS ΞϓϦέʔγϣϯͷΞΫηεΛ੍ݶ͢Δ • ϗετͷӅṭ • ϓϥΠϕʔτωοτϫʔΫʹઃஔͯ͠ VPN
ܦ༝ͰΞΫηε • ެ։αʔόͷίϯςϯπ৴Ҏ֎ΛڐՄ͠ͳ͍ • ֎෦ͷτϥϑΟοΫͷࢹ͕༰қʹ ౿ΈʹͳΔϦεΫΛܰݮͰ͖Δ
ެ։༻αʔό CMS VPN ͳͲͰΞΫηεΛ੍ݶɾཧ ৴ (Ұํ) ֎෦͔Βͷ௨৴ःஅ 010111………
ެ։αʔόͷߏྫ • Apache • SSI htaccess ͍͍ͨ • Amazon
S3 • + CDN • + CDN + WAF + DDoS ରࡦ
ެ։༻αʔόΛηΩϡΞʹ • ΞϓϦέʔγϣϯͷઃஔΛߦΘͳ͍ɺ੍͘͠ݶ͢Δ • PHP ͷར༻εΫϦϓτͷઃஔܧଓϝϯςφϯεͰ͖Δ͔Ͳ͏͔ • SSI .htaccess
Θͳ͍ͳΒɺS3 ͷར༻ࢹʹೖΔ • ϑΥʔϜɺݕࡧͳͲαʔϏεΛར༻͢Δ͜ͱΛߟ͑Δ • ಠࣗΞϓϦέʔγϣϯαʔόΛͯ͠ CORS ReverseProxy Ͱͷӡ༻ߟ͑Δ
ެ։༻αʔό iframe ͰΈࠐΈ
ެ։༻αʔόΛηΩϡΞʹ • ΞϓϦέʔγϣϯͷઃஔΛߦΘͳ͍ɺ੍͘͠ݶ͢Δ • PHP ͷར༻εΫϦϓτͷઃஔܧଓϝϯςφϯεͰ͖Δ͔Ͳ͏͔ • SSI .htaccess
Θͳ͍ͳΒɺS3 ͷར༻ࢹʹೖΔ • ϑΥʔϜɺݕࡧͳͲαʔϏεΛར༻͢Δ͜ͱΛߟ͑Δ • ಠࣗΞϓϦέʔγϣϯαʔόΛͯ͠ CORS ReverseProxy Ͱͷӡ༻ߟ͑Δ
ΑΓҙ͢Δ͜ͱ • ނোࣄނʹඋ͑ͨߏ • ೋॏԽ…ϗετɺωοτϫʔΫɺσʔληϯλ • γεςϜͷఆظతͳϝϯςφϯε • ϛυϧΣΞΞϓϦέʔγϣϯͷΞοϓσʔτɺઃఆͷ֬ೝ •
ϩάͷ֬ೝ • ఆظతͳόοΫΞοϓ • όοΫΞοϓͷೖखੑɺੈ • ϦετΞखॱͷ֬ೝτϨʔχϯά
ࣗͰΔͷ͕େมͩͱࢥͬͨΒ • ϚωʔδυαʔϏε SaaS ͷ CMS Λར༻͢Δ • Movable Type
Ϋϥυ൛ • αʔό৴ػೳΛඪ४උ • MovableType.net • αʔϏεͱͯ͠ɺ͞·͟·ͳϦεΫʹྀͯ͠ӡӦ͍ͯ͠·͢
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠