Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Jonathan Perlman
August 17, 2014
Montreal, Quebec
@jpurpleman
jonathan@purpleman.org
http://purpleman.org/wcmtl
@
 + 10 years as
a web developer
at Dawson College
 + 6 years teaching
the World Wide Web
and Microsoft Office
 + 4 years...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: office.com
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: commons.wikimedia.org
Restrictions
Software limitations
Can’t modify
configurations
Resources
CPU intense
Noisy neighbors
Reliability
Downtime
L...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: flickr (roger4336 )
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
UnmanagedManaged
Image credit: commons.wikimedia.org Image credi...
Managed
Shared hosting for
WordPress
Support knows
WordPress
Relevantly easy and
hands off
Costly in $$$
Unmanaged
Learnin...
WPEngine http://wpengine.com
WebSynthesis http://websynthesis.com
Flywheel http://getflywheel.com
Page.ly https://pagely.c...
Digital Ocean http://www.digitalocean.com
Linode https://www.linode.com
Media Temple
http://mediatemple.net/webhosting/
vp...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: commons.wikimedia.org
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
RAM CPU
Disk
Space
Image credit: commons.wikimedia.org
purpleman.org
• Photo clients
• Personal use
• Ram: 1 Gig
• CPU: 1 Core
• Disk: 30 Gigs
snookercanada.ca
• Snooker players...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
DNS
Linux Web
PHP Db
 CloudFlare
 https://www.cloudflare.com
 Easydns
 https://www.easydns.com
 DNS with domain or hosting provider
 Loca...
 Stable
 CentOS 7
Supported till 2024
 Bleeding edge
 Ubuntu 14.04 LTS
Supported till 2019
Jonathan Perlman - WordCamp...
 cPanel
 www.cpanel.net
 Parallels Plesk
 sp.parallels.com/
products/plesk/
 ZPanel
 www.zpanelcp.com
Jonathan Perlm...
 Text Editor
 vi / nano
 File System
 cd & ls
 cp & mv & rm
 mkdir
 Permissions
 chmod & chown
 Process Managemen...
Stan Lee
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: sapienstoonz.deviantart.com
 All powerful server administrator
 Terminal Root User = WordPress Admin User
 Constantly targeted and attacked
 New s...
 Change it’s password
 Make it a super secure password!
 Deny Root from remote login
 Create a non-admin user account
...
 Generating keys
 http://kb.siteground.com/how_to_generate_an_ssh_key_on_windows_using_putty/
 http://coolestguidesonth...
 Block everything
 Allow specific ports from specific IPs
 22 – SSH
 80 – Web
 443 – Secure Web
 3306 – MySql
 Allo...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: support.Microsoft.com
 yum update for CentOS
 ap...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: commons.wikimedia.org
 Apache or Nginx
 Use virtual hosting for multiple domains
 Create development domains
 .htaccess is off by default in...
php.ini
 allow_url_fopen
 session.gc_maxlifetime
 disable_functions
 display_errors
 post_max_size
 memory_limit
 m...
 MySql or MariaDB
 Setup steps
 Set a secure root user
 Remove test database
 Create web user with limited access
 C...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
 Download and extract
 Create the database
and a user
 Set up wp-config.php
 Run the install script
 http://codex.wor...
 http://codex.wordpress.org/
Hardening_WordPress
 http://codex.wordpress.org/
Changing_File_Permissions
Jonathan Perlman...
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
 Home directory
 Root home directory
 Configuration directory
 Web files
 Database
 Automysqlbackup
http://sourcefor...
 http://aws.amazon.com/backup-storage
 http://mozy.com/product/solutions/
server-backup
 https://www.jungledisk.com/
Jo...
 Google Apps for Business
 http://www.rackspace.com/email-hosting/
 https://www.fastmail.fm
 https://www.zoho.com/mail...
 Uptime Robot
 Pingdom
 New Relic
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
Image credit: opmlink.com
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
 Get a virtual private server – call it professional development
 Set it up
 Play around – learn!
 Edit your hosts fil...
 Setting up and configuring SSL
 2 Servers - Web & MySQL
 Varnish / Memcache for caching
Jonathan Perlman - WordCamp Mo...
 https://www.digitalocean.com/community/
 https://www.linode.com/docs
 http://www.youtube.com/user/TJsWebDev/
 http://...
Mike Johnson.
http://gdargaud.net/Humor/QuotesHardwareSoftware.html
Jonathan Perlman - WordCamp Montreal 2014 August 17, 2...
August 17, 2014Jonathan Perlman - WordCamp Montreal 2014
Questions
Thank
you!
Jonathan Perlman
August 17, 2014
Montreal, Q...
Upcoming SlideShare
Loading in …5
×

10 things you need to know about leaving shared hosting

1,885 views

Published on

This WordCamp Montreal 2014 talk is about things to know and think about when leaving shared hosting

Published in: Technology
  • Be the first to comment

10 things you need to know about leaving shared hosting

  1. 1. Jonathan Perlman August 17, 2014 Montreal, Quebec @jpurpleman jonathan@purpleman.org http://purpleman.org/wcmtl @
  2. 2.  + 10 years as a web developer at Dawson College  + 6 years teaching the World Wide Web and Microsoft Office  + 4 years using and learning WordPress  I’m not a Linux network administrator  I’m not a security expert Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: alexidagher.com
  3. 3. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: office.com
  4. 4. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  5. 5. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: commons.wikimedia.org
  6. 6. Restrictions Software limitations Can’t modify configurations Resources CPU intense Noisy neighbors Reliability Downtime Lack of support Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  7. 7. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: flickr (roger4336 )
  8. 8. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 UnmanagedManaged Image credit: commons.wikimedia.org Image credit: flickr (retropc )
  9. 9. Managed Shared hosting for WordPress Support knows WordPress Relevantly easy and hands off Costly in $$$ Unmanaged Learning curve Very DIY “ Painful “ Costly in time Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  10. 10. WPEngine http://wpengine.com WebSynthesis http://websynthesis.com Flywheel http://getflywheel.com Page.ly https://pagely.com Pressable http://pressable.com SiteGround http://siteground.com Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  11. 11. Digital Ocean http://www.digitalocean.com Linode https://www.linode.com Media Temple http://mediatemple.net/webhosting/ vps/developer/ Site5 http://www.site5.com Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  12. 12. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: commons.wikimedia.org
  13. 13. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 RAM CPU Disk Space Image credit: commons.wikimedia.org
  14. 14. purpleman.org • Photo clients • Personal use • Ram: 1 Gig • CPU: 1 Core • Disk: 30 Gigs snookercanada.ca • Snooker players • Media relations • Ram: 2 Gigs • CPU: 2 Cores • Disk: 40 Gigs dawsoncollege.qc.ca • + 10,000 students • + 1,000 faculty / staff • Ram: 16 Gigs • CPU: 4 Core • Disk: 128 Gigs Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  15. 15. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  16. 16. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 DNS Linux Web PHP Db
  17. 17.  CloudFlare  https://www.cloudflare.com  Easydns  https://www.easydns.com  DNS with domain or hosting provider  Local “Hosts” file Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  18. 18.  Stable  CentOS 7 Supported till 2024  Bleeding edge  Ubuntu 14.04 LTS Supported till 2019 Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  19. 19.  cPanel  www.cpanel.net  Parallels Plesk  sp.parallels.com/ products/plesk/  ZPanel  www.zpanelcp.com Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  20. 20.  Text Editor  vi / nano  File System  cd & ls  cp & mv & rm  mkdir  Permissions  chmod & chown  Process Management  ps & top  Kill  http://www.ee.surrey.ac.uk/ Teaching/Unix/ Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  21. 21. Stan Lee Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  22. 22. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: sapienstoonz.deviantart.com
  23. 23.  All powerful server administrator  Terminal Root User = WordPress Admin User  Constantly targeted and attacked  New servers are under attack in hours Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  24. 24.  Change it’s password  Make it a super secure password!  Deny Root from remote login  Create a non-admin user account  Assign admin rights with VISUDO  https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-6 Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  25. 25.  Generating keys  http://kb.siteground.com/how_to_generate_an_ssh_key_on_windows_using_putty/  http://coolestguidesontheplanet.com/make-passwordless-ssh-connection-osx-10-9- mavericks-linux/  Set up keys on the server Login via SSH keys  https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  26. 26.  Block everything  Allow specific ports from specific IPs  22 – SSH  80 – Web  443 – Secure Web  3306 – MySql  Allowing for dynamic IPs  Use hit count rules  https://github.com/jpurpleman/linux  http://cyberciti.biz/tips/linux-iptables-examples.html Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  27. 27. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: support.Microsoft.com  yum update for CentOS  apt-get update for Ubuntu
  28. 28. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  29. 29. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: commons.wikimedia.org
  30. 30.  Apache or Nginx  Use virtual hosting for multiple domains  Create development domains  .htaccess is off by default in Apache  Change “AllowOverride” to All  https://www.digitalocean.com/community/ tutorials/how-to-set-up-apache-virtual-hosts-on-centos-6 Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  31. 31. php.ini  allow_url_fopen  session.gc_maxlifetime  disable_functions  display_errors  post_max_size  memory_limit  max_execution_time  upload_max_filesize .htaccess  php_value upload_max_filesize 10M Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 http://php.net/manual/en/ini.list.php
  32. 32.  MySql or MariaDB  Setup steps  Set a secure root user  Remove test database  Create web user with limited access  Create yourself a user with full access  https://www.digitalocean.com/community/ tutorials/a-basic-mysql-tutorial Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  33. 33. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  34. 34.  Download and extract  Create the database and a user  Set up wp-config.php  Run the install script  http://codex.wordpress.org/ Installing_WordPress Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  35. 35.  http://codex.wordpress.org/ Hardening_WordPress  http://codex.wordpress.org/ Changing_File_Permissions Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  36. 36. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  37. 37.  Home directory  Root home directory  Configuration directory  Web files  Database  Automysqlbackup http://sourceforge.net/projects/automysqlbackup/ Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: memofixdatarecovery.com
  38. 38.  http://aws.amazon.com/backup-storage  http://mozy.com/product/solutions/ server-backup  https://www.jungledisk.com/ Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  39. 39.  Google Apps for Business  http://www.rackspace.com/email-hosting/  https://www.fastmail.fm  https://www.zoho.com/mail  https://www.pobox.com/ Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  40. 40.  Uptime Robot  Pingdom  New Relic Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014 Image credit: opmlink.com
  41. 41. Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  42. 42.  Get a virtual private server – call it professional development  Set it up  Play around – learn!  Edit your hosts file and point your domain to the server  Create a development WordPress site  Setup your WordPress site  Create a production WordPress site  Change the DNS!  You’re live! Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  43. 43.  Setting up and configuring SSL  2 Servers - Web & MySQL  Varnish / Memcache for caching Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  44. 44.  https://www.digitalocean.com/community/  https://www.linode.com/docs  http://www.youtube.com/user/TJsWebDev/  http://www.cyberciti.biz  http://www.rosehosting.com/blog  http://www.servermom.org  http://www.tecmint.com  http://webchat.freenode.net/?channels=digitalocean&uio=d4 Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  45. 45. Mike Johnson. http://gdargaud.net/Humor/QuotesHardwareSoftware.html Jonathan Perlman - WordCamp Montreal 2014 August 17, 2014
  46. 46. August 17, 2014Jonathan Perlman - WordCamp Montreal 2014 Questions Thank you! Jonathan Perlman August 17, 2014 Montreal, Quebec @jpurpleman jonathan@purpleman.org http://purpleman.org/wcmtl @

×