A visualizar apenas posts colocados no ano de 2013

Um sistema de cache é normalmente utilizado para tornar o acesso mais rápido a um site, mas pode também utilizado para reduzir custos com um servidor, diminuindo os recursos necessários e consumo energético.

Datacenter do Google

No início do mês lancei uma nova versão do Mais Gasolina, baseado no CMS que já tinha desenvolvido para o Site dos Provérbios.

O código foi refeito totalmente de raiz, tendo sido tudo desenvolvido a pensar em conteúdo estático com o pouco conteúdo que continua dinâmico a ser servido por AJAX, ficando este também em cache quando possível através do Local Storage do HTML5. Assim o acesso ao MySQL é extremamente reduzido, existindo apenas processamento mínimo por parte do Apache e PHP.

Até o widget do Mais Gasolina foi optimizado para reduzir o número de pedidos por HTTP ao máximo.

O resultado foi uma redução drástica na carga do processador e consumo de memória. Consegui assim reduzir os custos consideravelmente, passando de um servidor com múltiplos cores para um servidor virtual bastante modesto com apenas um core a 2.2GHz e 2GB de RAM.

Este servidor virtual nesta configuração permite receber 300 pedidos por segundo, menos 100 que o servidor anterior. Certamente com memcache ou nginx conseguiria receber mais pedidos por segundo, mas o CPanel não tem ainda forma de fazer esta configuração facilmente.

No entanto o número de pedidos HTTP ao website também reduziu, com o uso de sprites, caches prolongados de imagens, css e ficheiros js e a devolução de códigos 304 quando o conteúdo não foi alterado facilmente o servidor actual tem capacidade para receber um fluxo de visitas como o que aconteceu quando o site apareceu na televisão, embora num futuro próximo tal seja altamente improvável.

Mais Gasolina

O Mais Gasolina teve inicio em Maio de 2006, mas só em 2008 começou a dar os primeiros passos e a ganhar notoriedade com os aumentos galopantes dos preços dos combustíveis.

A 1 de Dezembro de 2013 sofreu uma reestruturação total a nível de código e design e passou a incorporar novas funcionalidades.

A partir do dia 20 de Dezembro o Winamp vai deixar de existir. Site, serviços, download da aplicação, deixará tudo de existir.

Llama do Winamp

Deve ter sido em 1999 que ouvi pela primeira vez o DJ Mike Llama a dizer “Winamp, it really whips the llama’s ass!”. Comecei a usar o Winamp 2 para ouvir MP3 que fazia download no MP3.com de produtores independentes e mais tarde de MP3 que fazia download do Napster e do Audiogalaxy e de rádios do Shoutcast.

Desde então que o Winamp sempre foi o meu leitor preferido e com o lançamento do Winamp3 que permitia ter várias playlists acessíveis facilmente com a skin MMD3 (a melhor de sempre) e com os fantásticos plug-ins que melhoravam a equalização fiquei fiel a este leitor de MP3 e acabei por rippar a minha colecção de CD’s para MP3 e ter toda a minha música disponível à distancia de alguns cliques.

A muito custo lá mudei para o Winamp 5 com a alteração para o Windows 7 e acabei por me habituar a esta nova versão que continuo a usar até hoje.

Infelizmente o Winamp vai desaparecer. Já guardei a última versão religiosamente, porque nenhum outro leitor é tão simples de usar e tão leve como o Winamp.

A versão 3.7 do WordPress passou a permitir actualizações automáticas. Uma boa notícia para quem tem vários blogs e uma óptima notícia para reduzir o número de sites com WordPress com injecção de código.

Wordpress

O WordPress tem vindo a evoluir na forma como podemos actualizar o mesmo. Antigamente era necessário fazer download dum arquivo em ZIP ou TAR e descompactar o mesmo e reescrever todos os ficheiros e voltar a fazer upload (para aqueles com apenas acesso FTP).

Depois apareceu o one-click update em que bastava fazer login e caso existisse um update a ser feito bastava clicar num botão e o WordPress tratava de tudo.

Agora nem isso é preciso, é lançada uma nova versão, a nossa instalação do WordPress verifica se existem updates e automaticamente actualiza o WordPress por nós. Para quem tem vários blogs em WordPress esta é uma óptima notícia.

Agora o WordPress passa a ficar actualizado com a versão mais recente, enviado uma notificação por email sempre que uma actualização é aplicada. Isto vai reduzir o número de blogs com WordPress atacados com injecção de código.

Este é, feliz ou infelizmente, o caminho a seguir. O ser humano é preguiçoso por natureza, veja-se o caso das actualizações do IE6 pela Microsoft e do IE10. Tudo isto ajuda a tornar a Web mais segura.

No 3º Trimestre de 2013 aumentou consideravelmente o uso de dispositivos móveis, principalmente nos meses de Julho e Agosto com as férias de Verão.

Estatísticas

 

Browsers
Browsers

Todos os browsers apresentaram quedas a nível percentual, com o aumento dos utilizadores com dispositivos móveis. A maior queda foi registada pelo Opera, que apesar de ter lançado novas versões continua com 89% dos seus utilizadores na versão 12.

A versão 10 do Internet Explorer é agora a mais utilizada neste browser, com 43% de utilização.

Sistemas Operativos
Sistemas Operativos

Nos sistemas operativos temos a mesma situação, com o aumento dos dispositivos móveis. Curiosamente o número de utilizadores entre Android e iOS é bastante semelhante, 8.69% para Android e 8.39% para iOS.

No Windows a versão 8 continua com apenas 7% da fatia de utilizadores, enquanto que o 7 continua a ganhar terreno para 60%, fruto das migrações a nível empresarial do XP para o 7.

Resoluções
Resoluções

Nas resoluções de ecrã a maior diferença foi a subida da resolução 320x480px usada por vários telemóveis.

As estatísticas aqui apresentadas são provenientes de vários sites com um público alvo generalista. São incluídos os dados de cerca de 200.000 utilizadores únicos baseados em Portugal.
Os dados aqui apresentados podem não corresponder ao público alvo do seu website.

No seguimento do último artigo “Proteger o WordPress contra ataques de brute-force” partilho convosco uma forma adicional de aumentar a segurança na nossa ligação com encriptação e garantir um endereço de IP fixo para aceder a uma área de administração.

Segurança num túnel

No artigo mencionei como fazer o bloqueio através de um IP dedicado ao acesso à área de administração do WordPress, ou através de uma chave aleatória no User-Agent para quem não tem um IP dedicado na sua ligação em casa.

Mas se tiverem um servidor dedicado, Cloud ou VPS com acesso SSH podem facilmente ter acesso a um IP dedicado, o IP do vosso próprio servidor através de um túnel por SSH cujos dados são encriptados.

Apenas precisam de alterar algumas configurações no PuTTY, software que já devem usar para fazer o acesso por SSH. Antes de iniciarmos a ligação devemos clicar em Connection > SSH > Tunnels. Em Add new forwared port vamos colocar 8080 e em Destination escolher Dynamic e clicamos em Add, tal como demonstra a imagem abaixo.

Tunel SSH no PuTTY

Iniciamos a ligação e fazemos login no servidor por SSH como é normal. Agora, enquanto a sessão do PuTTY estiver activa, também o nosso proxy vai estar activo.

O segundo passo é configurar o proxy no browser como SOCKS com o endereço 127.0.0.1 e a porta 8080.

Opera com SOCKS Proxy

Et voilà, o nosso acesso pelo tunel SSH está activo. Podemos confirmar que o acesso está a ser devidamente feito pelo servidor remoto verificando se o IP da ligação corresponde ao do servidor.

Desta forma podemos proteger o acesso a um directório de administração através do IP do próprio servidor, permitindo ter um IP dinâmico na ligação à internet por questões de privacidade e segurança, e um IP dedicado à distância de um login por SSH para aceder a conteúdos específicos sem ser necessário um acesso VPN ou algo semelhante mais dispendioso.

Devem no entanto verificar os limites de tráfego impostos pelo Service Provider que fornece o servidor e se não vai contra os termos de utilização do serviço o acesso por um túnel SSH. Existem algumas extensões para o Chrome e Firefox que permitem activar um proxy com 1 clique e apenas para certos domínios o que ajuda a reduzir o tráfego feito por SSH.

Várias instalações de WordPress, principalmente aquelas desactualizadas, têm sido alvo de ataques de brute-force para tentar o acesso à área de administração.

Aqui ficam algumas dicas para bloquear este tipo de ataques.

Wordpress

O ponto principal em termos de segurança é manter a instalação do WordPress sempre actualizada na última versão, assim como qualquer tema ou plug-in. As actualizações vão corrigindo várias falhas de segurança que podem ser usadas por terceiros para injectar código no vosso blog com base no WordPress.

A última vaga de ataques tem vindo a ser detectada ao ficheiro wp-login.php, que permite o acesso à área de administração. Se ainda não o fizeram devem mudar o nome de utilizador de admin para outro qualquer, conforme expliquei neste artigo.

Depois devem definir uma palavra-passe segura. Isto evita que sejam facilmente atacados, mas não resolve o problema.

Bloquear pedidos ao wp-login.php

Existem plug-ins que bloqueiam IP’s quando são efectuados vários acessos com dados errados. O problema é que estes recentes ataques usam botnets extensas (mais de 20.000 IP’s) e apenas fazem um pedido por IP, e cada pedido que fazem usa processamento de PHP e MySQL. Com vários pedidos em simultâneo é fácil arrasar um servidor.

A solução é bloquear o acesso ao ficheiro wp-login.php. Podemos depois permitir o acesso apenas a partir do nosso IP, basta adicionar o seguinte código no topo do ficheiro .htaccess

1
2
3
4
5
<Files wp-login.php>
    Order Deny,Allow
    Deny from all
    Allow from 123.45.67.89
</Files>

Claro que nem sempre é possível ter um endereço de IP fixo, e estar a verificar o IP da ligação e fazer novo upload do ficheiro .htaccess não é prático.

Uma alternativa é instalar o plug-in User-Agent switcher no Chrome ou Firefox que permita alterar o User-Agent e filtrar o acesso pelo mesmo. Assim bastam dois cliques e temos o nosso User-Agent definido para uma chave diferente (ex: Chrome 9f0aeab30a531755c4e8).

Depois basta adicionar o seguinte código no topo do ficheiro .htaccess

1
2
3
4
5
6
<Files wp-login.php>
    SetEnvIfNoCase User-Agent "Chrome 9f0aeab30a531755c4e8" AllowedAgent
    Order Deny,Allow
    Deny from all
    Allow from env=AllowedAgent
</Files>

Desta forma apenas apenas um browser com este User-Agent irá conseguir aceder à página de login do WordPress. Atenção que, para este método ser seguro, devem existir algumas precauções. O User-Agent deve ser complexo e aleatório e deve ser usado apenas para acesso ao WordPress.

Se definisse como User-Agent “Acesso ao blog do eduardomaio.net” e acedesse a outro website, ao verificar os logs poderia facilmente inserir este User-Agent e tentar o acesso ao meu blog porque o endereço encontra-se lá. Claro que é uma probabilidade muito reduzida, mas ela existe.

Com este bloqueio estamos a adicionar mais uma camada de segurança, tornando a instalação do WordPress mais segura.

Bloquear o acesso à pasta wp-admin

Podemos também bloquear totalmente o acesso à pasta wp-admin, é no entanto necessário confirmar se não existe nenhum plug-in ou tema dependente do ficheiro admin-ajax.php.

Vamos assim criar um ficheiro .htaccess dentro da pasta wp-admin e adicionar o seguinte código:

1
2
3
Order Deny,Allow
Deny from all
Allow from 123.45.67.89

Se quisermos bloquear o acesso através do User-Agent o código deverá ser o seguinte:

1
2
3
4
SetEnvIfNoCase User-Agent "Chrome 9f0aeab30a531755c4e8" AllowedAgent
Order Deny,Allow
Deny from all
Allow from env=AllowedAgent

Com estes bloqueios os ataques por brute-force ao WordPress são praticamente impossíveis, aumentando bastante a segurança e reduzindo os recursos do servidor utilizados por ataques de botnets.

 
Copyright © 1985 - 2017 Eduardo Maio. Alguns direitos reservados.
eduardomaio.net - Às vezes mais valia ser Agricultor do que Programador
Ao navegar no blog eduardomaio.net está a concordar com os termos legais e de privacidade.