WordPress
Porto Meetup
Bem-vindos!
Teotónio Ricardo
 Twitter: @cenourinha
 Facebook: fb.me/cenourinha
 Blog: teotonio.pt
 E-mail: eu@teotonio.pt
WordPress 1.5
 Experiência em WordPress desde lançamento
do WordPress 1.5 com o clássico theme Kubrick
- 17 February 2005
Fornecedor de Soluções de Alojamento Web Nacional
http://www.webtuga.pt - http://wt.pt – http://webtu.ga
Suporte Técnico @ WebTuga
(centenas ou mesmo milhares de sites em WordPress)
Segurança, Optimização
e Performance
Saiba como preparar o seu WordPress para a Internet
Segurança em WordPress
Proteja o seu site WordPress
1) Utilize um fornecedor de alojamento Web
seguro.
2) Proteja os seus dados de acesso FTP (e cPanel,
Plesk, etc)
3) Instalação e Configuração Segura do WordPress
4) Gestão de Plugins e Themes
5) Mantenha a plataforma atualizada
6) Faça os seus próprios Backups
7) Instale Plug-ins de Segurança
8) Utilize serviços de CDN
1) Utilize um fornecedor de
alojamento Web seguro
 Certifique-se que o seu fornecedor de serviço
de alojamento web protege minimamente os
seus servidores.
 Existem várias camadas de segurança que
necessitam de estar minimamente protegidas
para além da sua plataforma WordPress.
 O fornecedor de alojamento web deve fornecer
algumas camadas de segurança que previnam os
ataques mais populares, protegendo a…
Rede:
- Redundância
- Firewalls
- Sistemas Anti-DDoS
- CDN
Sistema Operativo:
- Kernel recente;
- CloudLinux (cageFS)
Serviços de Gestão Remota:
- (Acessos Restritos - Apenas VPN)
- SSH
- RDP
Software de Servidor:
- Apache, nginx, lighttpd, Litespeed, IIS - Manter um
filtro web a nível de software - Exemplo:
mod_security
- MySQL / MSSQL / postgresql - Limitar o acesso
remoto
- IMAP/POP3/Webmail - Bloquear acesso após x
tentativas de autenticação falhadas
Painel de Controlo WebHosting:
- (manter atualizados e bloquear acesso após x
tentativas de autenticação falhadas)
- cPanel
- Plesk
- Webmin
- Atomia
 Coloque algumas questões relativamente à
segurança dos servidores ao seu fornecedor de
alojamento web. Certifique-se que este
mantém um filtro que protege os seus sites
contra os ataques mais conhecidos:
 SQL Injection;
 Malware Injection;
 Spam-bots;
 Ataques Bruteforce;
 Simulações de pedidos HTTP;
 Ataques Cross-Site Scripting (XSS)
 Ataques de Negação (DoS/DDoS)
 Se o seu fornecedor de alojamento web não
proteger minimamente os serviços, estará a
colocar em risco os seus sites e dados,
podendo todos os sites alojados num
determinado servidor serem totalmente
comprometidos (massive attack).
 A segurança não é algo linear, existem várias
camadas de segurança e vários tipos de
ataque. Cabe a todos promover e adotar
medidas de segurança, seja o fornecedor de
alojamento web, seja o webmaster/blogger
ou o visitante/utilizador do site.
2) Proteja os seus dados de
acesso FTP (e cPanel, Plesk,
etc.)
 Não defina passwords simples para o seu
acesso FTP;
 Não guarde a sua password em plain-text
(FileZilla).
3) Instalação e Configuração
Segura do WordPress
Quando fizer a primeira instalação da sua
plataforma WordPress:
 Não utilize o username default “admin”;
 Defina uma password composta por caracteres
alfanuméricos;
 Certifique-se que a base de dados e o
username MySQL têm nomes aleatórios e
seguros;
 Certifique-se que a password do utilizador
MySQL é complexa e segura;
 Não utilize o prefixo default das tabelas do
WordPress (wp_);
 Altere a pasta/url default da administração do
WordPress ( Plugin: Better WP Security);
 Proteja o acesso ao ficheiro wp-login.php por
dupla autenticação (.htpasswd);
 Proteja o acesso ao ficheiro wp-config.php via
.htaccess;
 Não publique a versão do seu WordPress;
 Desative a edição dos themes pelo painel de
administração:
No ficheiro wp-config.php, adicione a seguinte
linha:
define(‘DISALLOW_FILE_EDIT’, true )
4) Gestão de Plugins e
Themes
 Apenas plug-ins e themes de fontes seguras;
 Muitas das vezes quando não descarregados da
fonte original, os plugins e themes têm código
malicioso injectado de forma encriptada que
poderá ser utilizado para comprometer o seu
site ou distribuir malware pelas visitas do seu
site.
5) Mantenha a plataforma
actualizada
 Para garantir que o seu site não é atacado
através de um ataque 0-day, deverá atualizar
regularmente a sua plataforma WordPress.
Neste momento, as atualizações do core do
WordPress são automáticas, pelo que deverá
manter esta opção ativa.
 Se tem uma plataforma WordPress com uma
versão antiga, deverá efetuar o upgrade o
mais rapidamente possível.
 Para além da plataforma, deverá também
manter sempre os seus plugins atualizados na
última versão disponibilizada. Certifique-se
também que apenas utiliza Plugins de fontes
seguras e que os mesmos ainda são
suportados.
 Existem bastantes plugins que já não são
atualizados/mantidos pelos seus
desenvolvedores, pelo que deverá fazer uma
pesquisa na Internet sempre que ativar um
plugin de forma a saber se não existem
falhas de segurança conhecidas para a versão
que vai utilizar.
6) Faça os seus próprios
Backups
 Existem várias formas de fazer backups do
WordPress (Plug-ins, Serviços Online, etc).
Mantenha sempre uma cópia recente dos
ficheiros e base de dados do WordPress.
7) Instale Plug-ins de
Segurança
 Better WP Security
 Limit Login Attemps
 Wordfence
 Login Lockdown
 WordPress Firewall
 All in one WordPress Firewall
8) Utilize serviços de CDN
 CloudFlare
 Incapsula
 CloudProxy
Optimização de Performance
do WordPress
Optimize o seu site WordPress
para levar com carga
1) Aloje o seu site num serviço de
Alojamento estável;
2) Limitar número de Posts por página;
3) Manter o WordPress e Plug-ins (válido
para a Segurança e Optimização);
4) Não utilize demasiados plug-ins;
5) Evite ter demasiados Widgets JavaScript
externos
 Widgets de Tempo;
 Widgets de Contagem de Visitas;
 Animações JavaScript;
 Facebook Share;
 Botões Twitter;
 etc...
6) Optimize as imagens do seu blog/site;
7) Carregar scripts javascript apenas no
fundo do site;
8) Reduzir pedidos HTTP;
9) Optimizar e juntar ficheiros CSS,
JavaScript e output HTML;
Pode ser feito recorrendo a estes plugins:
 WP Minify;
 W3 Total Cache;
10) Desativar Post Revisions:
Colocar as seguintes linhas no código do wp-
config.php:
define(‘AUTOSAVE_INTERVAL', 300);
define('WP_POST_REVISIONS', false );
11) Optimize frequentemente a base de
dados pelo phpMyAdmin:
 Pode ser feito utilizando o plug-in Optimize
DB;
12) Reduzir queries MySQL;
13) Fazer Debug ao WordPress:
 Poderá fazer debug colocando a seguinte linha
no ficheiro wp-config.php:
define('WP_DEBUG', true);
14) Gzip e mod_deflate:
 Comprimir ficheiros ao nível do servidor;
15) Ativar Plug-ins de Cache:
 WP Super Cache;
 W3 Total Cache;
 Hyper Cache;
 WP Cache;
16) Utilizar rede CDN:
 CloudFlare
 Incapsula
 CloudProxy
Como verificar a performance do seu
site?
 Google Page Speed
(http://developers.google.com/speed/pagespe
ed/insights/)
 Pingdom Tools
(http://tools.pingdom.com/fpt/)
 GTmetrix
(http://www.gtmetrix.com)
Obrigado pela
atenção!
Encontramo-nos no próximo
WordPress Porto Meetup

Teotónio Ricardo
 Twitter: @cenourinha
 Facebook: fb.me/cenourinha
 Blog: teotonio.pt
 E-mail: eu@teotonio.pt

WordPress - Segurança, Performance e Optimização

  • 1.
  • 2.
    Teotónio Ricardo  Twitter:@cenourinha  Facebook: fb.me/cenourinha  Blog: teotonio.pt  E-mail: eu@teotonio.pt
  • 3.
    WordPress 1.5  Experiênciaem WordPress desde lançamento do WordPress 1.5 com o clássico theme Kubrick - 17 February 2005
  • 4.
    Fornecedor de Soluçõesde Alojamento Web Nacional http://www.webtuga.pt - http://wt.pt – http://webtu.ga Suporte Técnico @ WebTuga (centenas ou mesmo milhares de sites em WordPress)
  • 5.
    Segurança, Optimização e Performance Saibacomo preparar o seu WordPress para a Internet
  • 6.
  • 7.
    Proteja o seusite WordPress 1) Utilize um fornecedor de alojamento Web seguro. 2) Proteja os seus dados de acesso FTP (e cPanel, Plesk, etc) 3) Instalação e Configuração Segura do WordPress 4) Gestão de Plugins e Themes 5) Mantenha a plataforma atualizada 6) Faça os seus próprios Backups 7) Instale Plug-ins de Segurança 8) Utilize serviços de CDN
  • 8.
    1) Utilize umfornecedor de alojamento Web seguro  Certifique-se que o seu fornecedor de serviço de alojamento web protege minimamente os seus servidores.  Existem várias camadas de segurança que necessitam de estar minimamente protegidas para além da sua plataforma WordPress.
  • 9.
     O fornecedorde alojamento web deve fornecer algumas camadas de segurança que previnam os ataques mais populares, protegendo a… Rede: - Redundância - Firewalls - Sistemas Anti-DDoS - CDN Sistema Operativo: - Kernel recente; - CloudLinux (cageFS) Serviços de Gestão Remota: - (Acessos Restritos - Apenas VPN) - SSH - RDP
  • 10.
    Software de Servidor: -Apache, nginx, lighttpd, Litespeed, IIS - Manter um filtro web a nível de software - Exemplo: mod_security - MySQL / MSSQL / postgresql - Limitar o acesso remoto - IMAP/POP3/Webmail - Bloquear acesso após x tentativas de autenticação falhadas Painel de Controlo WebHosting: - (manter atualizados e bloquear acesso após x tentativas de autenticação falhadas) - cPanel - Plesk - Webmin - Atomia
  • 11.
     Coloque algumasquestões relativamente à segurança dos servidores ao seu fornecedor de alojamento web. Certifique-se que este mantém um filtro que protege os seus sites contra os ataques mais conhecidos:  SQL Injection;  Malware Injection;  Spam-bots;  Ataques Bruteforce;  Simulações de pedidos HTTP;  Ataques Cross-Site Scripting (XSS)  Ataques de Negação (DoS/DDoS)
  • 12.
     Se oseu fornecedor de alojamento web não proteger minimamente os serviços, estará a colocar em risco os seus sites e dados, podendo todos os sites alojados num determinado servidor serem totalmente comprometidos (massive attack).  A segurança não é algo linear, existem várias camadas de segurança e vários tipos de ataque. Cabe a todos promover e adotar medidas de segurança, seja o fornecedor de alojamento web, seja o webmaster/blogger ou o visitante/utilizador do site.
  • 13.
    2) Proteja osseus dados de acesso FTP (e cPanel, Plesk, etc.)  Não defina passwords simples para o seu acesso FTP;  Não guarde a sua password em plain-text (FileZilla).
  • 14.
    3) Instalação eConfiguração Segura do WordPress Quando fizer a primeira instalação da sua plataforma WordPress:  Não utilize o username default “admin”;  Defina uma password composta por caracteres alfanuméricos;  Certifique-se que a base de dados e o username MySQL têm nomes aleatórios e seguros;  Certifique-se que a password do utilizador MySQL é complexa e segura;
  • 15.
     Não utilizeo prefixo default das tabelas do WordPress (wp_);  Altere a pasta/url default da administração do WordPress ( Plugin: Better WP Security);  Proteja o acesso ao ficheiro wp-login.php por dupla autenticação (.htpasswd);  Proteja o acesso ao ficheiro wp-config.php via .htaccess;  Não publique a versão do seu WordPress;  Desative a edição dos themes pelo painel de administração: No ficheiro wp-config.php, adicione a seguinte linha: define(‘DISALLOW_FILE_EDIT’, true )
  • 16.
    4) Gestão dePlugins e Themes  Apenas plug-ins e themes de fontes seguras;  Muitas das vezes quando não descarregados da fonte original, os plugins e themes têm código malicioso injectado de forma encriptada que poderá ser utilizado para comprometer o seu site ou distribuir malware pelas visitas do seu site.
  • 17.
    5) Mantenha aplataforma actualizada  Para garantir que o seu site não é atacado através de um ataque 0-day, deverá atualizar regularmente a sua plataforma WordPress. Neste momento, as atualizações do core do WordPress são automáticas, pelo que deverá manter esta opção ativa.  Se tem uma plataforma WordPress com uma versão antiga, deverá efetuar o upgrade o mais rapidamente possível.
  • 18.
     Para alémda plataforma, deverá também manter sempre os seus plugins atualizados na última versão disponibilizada. Certifique-se também que apenas utiliza Plugins de fontes seguras e que os mesmos ainda são suportados.  Existem bastantes plugins que já não são atualizados/mantidos pelos seus desenvolvedores, pelo que deverá fazer uma pesquisa na Internet sempre que ativar um plugin de forma a saber se não existem falhas de segurança conhecidas para a versão que vai utilizar.
  • 19.
    6) Faça osseus próprios Backups  Existem várias formas de fazer backups do WordPress (Plug-ins, Serviços Online, etc). Mantenha sempre uma cópia recente dos ficheiros e base de dados do WordPress.
  • 20.
    7) Instale Plug-insde Segurança  Better WP Security  Limit Login Attemps  Wordfence  Login Lockdown  WordPress Firewall  All in one WordPress Firewall
  • 21.
    8) Utilize serviçosde CDN  CloudFlare  Incapsula  CloudProxy
  • 22.
  • 23.
    Optimize o seusite WordPress para levar com carga 1) Aloje o seu site num serviço de Alojamento estável; 2) Limitar número de Posts por página; 3) Manter o WordPress e Plug-ins (válido para a Segurança e Optimização); 4) Não utilize demasiados plug-ins;
  • 24.
    5) Evite terdemasiados Widgets JavaScript externos  Widgets de Tempo;  Widgets de Contagem de Visitas;  Animações JavaScript;  Facebook Share;  Botões Twitter;  etc... 6) Optimize as imagens do seu blog/site; 7) Carregar scripts javascript apenas no fundo do site; 8) Reduzir pedidos HTTP;
  • 25.
    9) Optimizar ejuntar ficheiros CSS, JavaScript e output HTML; Pode ser feito recorrendo a estes plugins:  WP Minify;  W3 Total Cache; 10) Desativar Post Revisions: Colocar as seguintes linhas no código do wp- config.php: define(‘AUTOSAVE_INTERVAL', 300); define('WP_POST_REVISIONS', false );
  • 26.
    11) Optimize frequentementea base de dados pelo phpMyAdmin:  Pode ser feito utilizando o plug-in Optimize DB; 12) Reduzir queries MySQL; 13) Fazer Debug ao WordPress:  Poderá fazer debug colocando a seguinte linha no ficheiro wp-config.php: define('WP_DEBUG', true);
  • 27.
    14) Gzip emod_deflate:  Comprimir ficheiros ao nível do servidor; 15) Ativar Plug-ins de Cache:  WP Super Cache;  W3 Total Cache;  Hyper Cache;  WP Cache; 16) Utilizar rede CDN:  CloudFlare  Incapsula  CloudProxy
  • 28.
    Como verificar aperformance do seu site?  Google Page Speed (http://developers.google.com/speed/pagespe ed/insights/)  Pingdom Tools (http://tools.pingdom.com/fpt/)  GTmetrix (http://www.gtmetrix.com)
  • 29.
    Obrigado pela atenção! Encontramo-nos nopróximo WordPress Porto Meetup 
  • 30.
    Teotónio Ricardo  Twitter:@cenourinha  Facebook: fb.me/cenourinha  Blog: teotonio.pt  E-mail: eu@teotonio.pt