Segurança e SSL
Configurar o reCAPTCHA no PrestaShop 1.6 com o eicaptcha
Os sistemas de CAPTCHA são a forma mais direta de travar o spam: o típico teste que verifica que quem preenche o formulário é uma pessoa e não um robô. No PrestaShop são especialmente necessários, porque as lojas são alvo habitual de bots que criam centenas de contas falsas por dia e enviam formulários de contacto em massa.
O problema não é só ter de apagar essas contas. Os bots consomem CPU e memória da loja, e cada registo falso faz com que o PrestaShop envie um e-mail de boas-vindas para endereços inexistentes do Gmail, Hotmail e semelhantes. Esses fornecedores rejeitam as mensagens e acabam por considerar suspeito o domínio da loja, pelo que os seus e-mails legítimos começam a chegar à pasta de spam dos seus clientes.
O PrestaShop 1.6 já não recebe atualizações de segurança. O CAPTCHA trava os registos e envios automáticos por formulário, mas não protege das vulnerabilidades da versão. Use-o para cortar já o spam e planeie a atualização da loja.
Para proteger a loja, vamos utilizar o módulo gratuito eicaptcha, que integra o reCAPTCHA da Google nos formulários do PrestaShop.
Descarregar e instalar o módulo
Descarregue o módulo a partir da sua página oficial no GitHub:
O módulo tem dois ramos: o 2.x é para o PrestaShop 1.7 e 8, e o 0.4.x é para o PrestaShop 1.6 (na descrição aparece «PS version under 1.7»). Para o PrestaShop 1.6, a última versão é a 0.4.17; descarregue o ficheiro eicaptcha.zip dessa versão. Se instalar uma versão 2.x no 1.6, não funcionará.

Instale o módulo como qualquer outro: no painel de administração do PrestaShop, entre em Modules and Services, clique em Add a new module e carregue o zip descarregado.

Também pode descompactar o zip e carregar a pasta eicaptcha por FTP ou a partir do gestor de ficheiros do cPanel para o diretório modules do PrestaShop.
Se não tiver sido ativado ao instalá-lo, procure-o no catálogo de módulos e clique em Install ou Enable:

No fim, abre-se a configuração do módulo, que pede as chaves do reCAPTCHA. Obtemo-las no passo seguinte.
Obter as chaves do reCAPTCHA
Entre na consola de administração do reCAPTCHA com uma conta Google (serve qualquer conta do Gmail) e registe um novo site:

- Em Etiqueta, escreva um nome que lhe permita reconhecê-lo, por exemplo o domínio da loja.
- Em Tipo de reCAPTCHA, marque Desafio (v2) e depois Caixa de verificação «Não sou um robô». A versão 0.4.x do módulo só suporta o reCAPTCHA v2: chaves v3 não funcionarão.
- Em Domínios, adicione o domínio da loja, por exemplo
tutienda.com. O reCAPTCHA aceita também os seus subdomínios, comowww.tutienda.com.
Aceite os termos e clique em Enviar. A Google mostrar-lhe-á duas chaves: a chave do site e a chave secreta. Copie-as e anote qual é qual.

A interface da Google mudou de aspeto desde estas capturas, mas os campos são os mesmos.
Configurar o módulo
Volte à configuração do eicaptcha no PrestaShop e preencha:
- Public key: a chave do site.
- Private key: a chave secreta.
- Ative o captcha nos formulários que pretende proteger, no mínimo na criação de conta e no formulário de contacto.
- Indique o código do idioma do captcha, por exemplo
pt-PT.

Guarde as alterações. A partir desse momento, os formulários mostrarão a caixa «Não sou um robô»:

Verificar que funciona
- Abra a loja numa janela privada e entre no registo de clientes e na página de contacto: deve aparecer a caixa do reCAPTCHA.
- Tente registar-se sem marcar a caixa: o PrestaShop deve mostrar um erro e não criar a conta.
- Marque a caixa e conclua o registo: a conta deve ser criada normalmente.
Se a caixa não aparecer, esvazie a cache do PrestaShop em Advanced Parameters > Performance e verifique se o tema não tem um modelo de registo ou de contacto modificado que omita o hook do módulo. Se aparecer o erro «Invalid domain for site key», o domínio da loja não coincide com o registado no reCAPTCHA.
Se continuarem a entrar contas falsas
Se, depois de ativar o captcha, continuarem a aparecer registos falsos, os bots não estão a passar pelo formulário. Verifique a versão exata em Advanced Parameters > Information: a última do ramo 1.6 é a 1.6.1.24, que corrige a falha de registo massivo que estes bots usavam. Se a sua loja tiver uma versão anterior, faça uma cópia e atualize-a para a 1.6.1.24 enquanto prepara a passagem para uma versão com suporte.
As contas falsas costumam reconhecer-se porque o nome ou o apelido contêm ligações ou texto publicitário. Antes de as apagar em Customers > Customers, filtre por data de registo e verifique que não têm encomendas.
Também lhe pode ser útil
- Travar o spam enviado a partir de formulários do PrestaShop Explica como confirmar se as devoluções provêm de um formulário do PrestaShop e como conter o abuso...
- Aviso histórico sobre registos massivos no PrestaShop 1.6 e 1.7 Documenta a falha corrigida no PrestaShop 1.6.1.24 e 1.7.5.2 e explica como agir se ainda encontrar...
- Identificar e travar o abuso dos formulários de um site Explica como identificar se as devoluções provêm de um formulário abusado e como protegê-lo com vali...
- Desativar o registo público de utilizadores no Joomla Indica como impedir o registo público de utilizadores em versões mantidas do Joomla quando o site nã...
Algo não bate certo ou mudou? Diga-nos e revemos.