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
WordCamp for Publishers 2017
Search
emaildano
August 18, 2017
Technology
2
610
WordCamp for Publishers 2017
emaildano
August 18, 2017
Tweet
Share
More Decks by emaildano
See All by emaildano
Shifter オンラインミートアップ ザ・ホワイトベルト!
emaildano
0
880
Lift and Shift WordPress to the Jamstack
emaildano
1
160
Crash Course on Static WordPress in ~5 minutes (or less)
emaildano
0
77
Developing with WordPress, the JAMstack way
emaildano
2
2k
3 things I believe in and why I joined DigitalCube
emaildano
0
3.8k
The Future is SaaS
emaildano
0
95
Let's Build a Better WordPress @ WordCamp NYC 2018
emaildano
0
150
On Demand Dev with Docker + WordPress @ WordCamp Europe 2018
emaildano
0
710
Serverless PHL - March 2018
emaildano
0
390
Other Decks in Technology
See All in Technology
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
500
Webhook best practices for rock solid and resilient deployments
glaforge
2
300
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
320
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
140
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
260
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
Agile Leadership Summit Keynote 2026
m_seki
1
650
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
210
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
470
Featured
See All Featured
Fireside Chat
paigeccino
41
3.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
The Limits of Empathy - UXLibs8
cassininazir
1
220
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
650
Music & Morning Musume
bryan
47
7.1k
Building Applications with DynamoDB
mza
96
6.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Building Adaptive Systems
keathley
44
2.9k
The Language of Interfaces
destraynor
162
26k
Test your architecture with Archunit
thirion
1
2.2k
Transcript
Daniel Olson @emaildano
Daniel Olson @emaildano Daniel Olson COO, DigitalCube @emaildano
Daniel Olson @emaildano Daniel Olson I develop WordPress SaaS products
on AWS
Daniel Olson @emaildano Alternative Hacks WordPress Security from the Outside
Looking In
Daniel Olson @emaildano Why Care? About WordPress Security
Daniel Olson @emaildano Client Responsibility Why Care?
Daniel Olson @emaildano User Responsibility Why Care?
Daniel Olson @emaildano Personal Responsibility Why Care?
Daniel Olson @emaildano Sh*t Happens Learn from your mistakes
Daniel Olson @emaildano Old Habits Die Hard
Daniel Olson @emaildano Secure Secure
Daniel Olson @emaildano Approach security as a design problem and
less of a technical problem
Daniel Olson @emaildano sourcemaking.com @sourcemaking
Daniel Olson @emaildano Workflow
Daniel Olson @emaildano Workflow Find that weak link and fix
it
Daniel Olson @emaildano Workflow Lobby for the right fix Not
the quick fix
Daniel Olson @emaildano Workflow Lobby for the right fix Not
the quick fix (But compromise)
Daniel Olson @emaildano AntiPattern - SourceMaking - “commonly occurring solution
to a problem that generates decidedly negative consequences”
Daniel Olson @emaildano Design Pattern - SourceMaking - “An approach
to a solution to a commonly occurring problem that’s repeatable and is not a finished design”
Daniel Olson @emaildano Workflow ⇣ AntiPattern ⇣ Design Pattern
Daniel Olson @emaildano Workflow Versioning Release Candidates for Personal Micro
Improvements
None
Daniel Olson @emaildano A Few Ideas
Daniel Olson @emaildano Disaster Plans Workflow – AntiPattern – Design
Pattern
Daniel Olson @emaildano Disaster Plans Discuss them, early and often
Daniel Olson @emaildano Disaster Plans Total Data Loss Client or
Customer Data Hack Unexpected downtime
Daniel Olson @emaildano Disaster Plans Workflow – AntiPattern – Design
Pattern
Daniel Olson @emaildano Disaster Plans No Plan Partial Backup File
only no config No SLA
Daniel Olson @emaildano No Plan?
Daniel Olson @emaildano No Plan? Get one
Daniel Olson @emaildano Partial Backups
Daniel Olson @emaildano Partial Backups Backup efficiently, not aggressively
Daniel Olson @emaildano – Someone “If your data is in
one place, it’s no place.”
Daniel Olson @emaildano Files only no config
Daniel Olson @emaildano Files only no config 12 factor app
principles
Daniel Olson @emaildano The Twelve Factor App 12factor.net
Daniel Olson @emaildano – III. Config — The 12 Factor
App “Apps sometimes store config as constants in the code. This is a violation of twelve-factor, which requires strict separation of config from code. Config varies substantially across deploys, code does not.”
Daniel Olson @emaildano No SLA
Daniel Olson @emaildano No SLA Define who’s responsable for what
Broad and Narrow
Daniel Olson @emaildano Hosting Workflow – AntiPattern – Design Pattern
Daniel Olson @emaildano Web Hosting Find the right fit
Daniel Olson @emaildano Web Hosting Hammered with bot traffic Secure
Connections Recovery, Scaling, Automation
Daniel Olson @emaildano Bot Traffic Put your server to work
and serve static 404s with NGINX, Apache, or .htaccess
Daniel Olson @emaildano Secure Connections
Daniel Olson @emaildano Secure Connections Limit IPs and ports Force
SFTP or SSH over FTP HTTPs Always
Daniel Olson @emaildano Recovery, Scaling, Automation Does your host provide
this? Again, config as code Go JAMStack or Serverless
Daniel Olson @emaildano –JAMStack jamstack.org “Modern web development architecture based
on client-side JavaScript, reusable APIs, and prebuilt Markup.”
Daniel Olson @emaildano Go Serverless WordPress to Static
Daniel Olson @emaildano Go Serverless WordPress to Static Scale Verically
and Horizontally
None
Daniel Olson @emaildano WordPress Plugins
Daniel Olson @emaildano WordPress Plugins They are not a cure-all
Definitely still need them More != Better
Daniel Olson @emaildano WordPress Plugins Learn what they actually do
Can that apply to config as code?
Daniel Olson @emaildano Tinfoil File Permissions
Daniel Olson @emaildano Tinfoil File Permissions When in doubt, follow
the docs 777 Stackoverflow guy is not your friend
Daniel Olson @emaildano Hashing and MD5
Daniel Olson @emaildano – WordPress.org “MD5 is used by default
because it’s supported on all platforms”
Daniel Olson @emaildano Hashing and MD5 Try bcrypt, scrypt, SHA256
Daniel Olson @emaildano Thank you!
Daniel Olson @emaildano Daniel Olson COO, DigitalCube @emaildano
Daniel Olson @emaildano Alternative Hacks WordPress Security from the Outside
Looking In https://speakerdeck.com/emaildano