Tutorial para rodar uma aplicação PHP em containers Docker explorando ferramentas para o desenvolvimento Web e diversas stacks

Meu  tutorial/projeto exemplifica como uma aplicação WEB pode rodar em containers, introduz o uso de ferramentas específicas auxiliares para o desenvolvimento de projeto web, mas não trata da criação e manutenção de imagens Docker, não é necessariamente um roteiro sem viés que busca uma instrução genérica mas sim, bem associada ao meu modo de trabalho, incluindo ferramentas de minha escolha e, apesar de útil para quem procura informações para configurar seu próprio projeto, foca em explicar a organização dos recursos e tecnologias, permitindo que novos contribuidores de projetos que já adotam esta estrutura possam entender, melhorar e executar recursos já configurados.

Requisitos

Os exemplos abaixo são escritos para execução em um terminal linux, mas você pode facilmente executá-los em outro sistema operacional com alguns ajustes.

Este projeto considera que você já possui o Docker e o Docker Compose instalado em seu sistema operacional(veja gpupo-meta/setup-machine). Se você possui um computador sem suporte a virtualização talvéz não consiga rodar o Docker. Eu enfrentei este problema em um Mac Book Pro 2010.

Se você pretende seguir as instruções abaixo até o fim, prepare-se para trafegar mais de 3Gb de dados, entre imagens Docker e pacotes de dependência, então, se você está dependendo de sua conexão EDGE, apenas leia o conteúdo, a leitura recomendada e deixa pra executar pra valer quando estiver melhor de conexão, ok?

Vários termos usados neste tutorial possuem links que facilitarão o entendimento de quem não está familiarizado com eles, então recomendo a leitura das referências.

Alguns comandos devem ser executados em seu terminal tradicional e quando for este o caso, o símbolo :computer: estará presente, porém outros comandos requerem a execução a partir do terminal virtualizado. Quando for este o caso, o símbolo :whale: estará próximo, indicando que a execução deve ser feita no bash do container. Como chegar lá ? Você vai aprender logo abaixo…

Um último requisito importante é paciência e dedicação pois é bastante coisa pra ler, seguir referências, executar comandos, analizar diffs e refazer até entender. Pra te motivar e também responsabilizar, eu gastei várias horas de trabalho escrevendo este tutorial, tirando as melhores técnicas do meu vaú de tesouross, para que você aí do futuro aprendesse a usá-las, então, me dê algum crédito e esforço quando seguir com este tutorial, ou, se preferir algo mais facil, por seguir por aqui

Se tudo estiver pronto, selecione seu player e vamos em frente.

Start

Continue lendo “Tutorial para rodar uma aplicação PHP em containers Docker explorando ferramentas para o desenvolvimento Web e diversas stacks”

CLI command para excluir pacotes do Composer update

No uso do Composer para o gerenciamento de pacotes não temos uma opção –exclude que nos permita dizer que pacotes não queremos atualizar.
Isto é muito útil em casos onde os pacotes em questão estão em desenvolvimento local.

Para conseguir este objetivo, segue uma linha simples que filtra os pacotes atuais excluindo uma lista e em seguida informa-os para o update.

 composer info | grep -v 'api-platform\|gpupo' |\
 sed 's/  \+/:/g' | cut -d ' ' -f1 |\
 paste -sd ' ' - | composer update

No exemplo acima, pacotes dos namespaces ocramius e também gpupo não serão atualizados.

Ataque ao Gerenciador de Tags do Google explicado

Uma técnica antiga que tem como objetivo infectar o navegador do internauta consiste em instalar uma extensão ou artefato semelhante a partir de um arquivo oferecido por javascript em uma página qualquer.

Tradicionalmente, bandidos invadem sites, instalam o javascript malicioso e atingem o público deste site.

O Ataque ao Gerenciador de Tags do Google é semelhante, mas ao invés de invadir um site, os criminosos obtém acesso a uma conta Google que é administradora de tags.
e nesta administração inserem a chamada para o mesmo javascript malicioso.

Isto tem um desdobramento maior pois um website que contém tags administradas por Google Tags pode também delegar a administração para um ou mais terceiros (empresas que oferecem serviços complementares como remarketing por exemplo), então, basta obter acesso a conta de um destes terceiros.

Quer complementar/corrigir esta explicação? Comente!

Relatório de Segurança: Mobile Malware – Segundo semestre de 2014

A empresa alemã G Data Software AG divulgou o MOBILE MALWARE REPORT THREAT REPORT: H2/2014, contendo dados coletados no segundo semestre de 2014 e indicando
que a indústria do cibercrime pretende colocar em circulação malwares especificamente projetado para atacar o Android, devido ao seu crescimento, em um ritmo de 4500 novos malwares por dia.
Continue lendo “Relatório de Segurança: Mobile Malware – Segundo semestre de 2014”

A evolução dos crimes cibernéticos

Os crimes cibernéticos têm evoluído da forma mais preocupante possível.
O sistema financeiro americano sofre mais de 50 mil ataques por dia e no Brasil, o número chega a 10 mil.
Apesar do Brasil ser o celeiro de criação de Trojans bancários, agora as forças armadas também estão sob a mira dos ataques.
Continue lendo “A evolução dos crimes cibernéticos”

Monitore seu Apache

Monitorar em tempo real o que acontece com seu servidor Web é, em muitos momentos,
importantíssimo para o processo de localizar ataques, bots, tráfego mal redirecionado ou pontos
de sobrecarga.

Claro que sempre podemos ler as linhas do access_log utilizando tail -f /var/log/httpd/access_log; mas esta técnica envolve mais feeling do que precisão.

Uma ferramenta que me ajuda neste trabalho, em servidores Redhat/CentOs/Amazon Linux AMI é o Apachetop.
Continue lendo “Monitore seu Apache”