Nada é pior que alguém roubando suas imagens ou largura de banda, mas saiba que isso acontece com relativa frequência, uma vez que tudo isso está aberto na internet para que as pessoas vinculem facilmente. Isso pode te custar dinheiro e é até mesmo ilegal se a pessoa estiver fazendo vinculações para fotos de arquivos para as quais você precisou adquirir a licença de uso. Hoje, explicaremos o que é hotlinking, por que ele é ruim e como você pode prevenir hotlinking no seu website WordPress.

O que É Hotlinking?

O conceito de hotlinking é muito simples. Você encontra uma imagem na internet em algum lugar e usa a URL dela diretamente em seu site. Esta imagem será exibida em seu website, mas será servida do local original. Isso é muito conveniente para o hotlinker, mas na verdade é roubo, pois está usando os recursos do site que sofreu o hotlink. É como se nós estivéssemos entrando em nosso carro e dirigindo por aí com a gasolina que tiramos do carro do vizinho.

Por que Hotlinking é ruim

Abaixo estão alguns detalhes a levar em conta quando se fala de hotlinking:

1. Hotlinking Custa Dinheiro ao Proprietário do Website Original

Alguém fazendo vinculações de suas imagens no website dele/dela pode não parecer grande coisa, mas isso poderia gerar muitos custos extras para você. O site The Oatmeal é um bom exemplo. O The Huffington Post fez um hotlink de um quadrinho que consistia de diversas imagens. Como estamos falando de uma grande publicação com muito tráfego, isso ocasionou diversos custos extras ao The Oatmeal, uma vez que milhares de pessoas visualizaram as imagens. Em um movimento clássico, Matthew Inman, criador do The Oatmeal, substituiu todos os arquivos de hotlink com a seguinte mensagem:

Exemplo de hotlinking
Exemplo de hotlinking

Ele também fez questão de substituir a última imagem com o desenho de um traseiro e dos países baixos. Incrível! Mas como você pode ver, os custos podem aumentar bem rapidamente, especialmente se um site de grande volume de tráfego estiver fazendo hotlink de seu conteúdo. Você acredita que todos os escritores e blogueiros sabem como usar as imagens de forma adequada? Provavelmente não. E é por isso que a proteção para hotlinks existe.

Artigo relacionado: Cópia de Conteúdo – Enfrentar ou Ignorar?

2. Hotlinking É Ilegal na Maioria dos Casos

Hotlinking é ilegal em muitos casos. Por quê? Porque muitas fotos que você vê espalhadas pela rede possuem restrições de licença atribuídas a elas. Aqui estão algumas restrições de licenças de imagens de sites de arquivos de fotos populares:

  • Nenhum uso comercial permitidosob qualquer circunstância”.
  • “Publicação em um website ou blog de sua propriedade (em artigos ou notícias para propósitos ilustrativos apenas)”.

Ambas as restrições acima poderiam ser facilmente violadas se alguém vinculasse sua imagem e a usasse em seu website. Essa pessoa provavelmente não possui a permissão para fazer isso, pois não pagou pela licença. Isso também incorre não só na veiculação incorreta ao site dela, mas também na falta de atribuição adequada ao criador original.

3. Consumo de Recursos do Servidor

Hotlinking pode consumir muitos recursos do servidor de origem. Imagine que você esteja usando uma hospedagem WordPress compartilhada e o Huffington Post, de repente, aponta para suas imagens. Você poderia ir de algumas centenas de solicitações por hora em seu site para centenas de milhares. Isso poderia até resultar em uma suspensão de sua conta de hospedagem. Esse é, com certeza, um motivo para não só utilizar uma hospedagem de alto desempenho (capaz de lidar com picos como esse), mas também para habilitar a proteção de hotlink para que isso não ocorra.

4. Hotlinking é Pura Preguiça

As pessoas usam hotlinks simplesmente porque são preguiçosas? Bem, em muitas ocasiões, as pessoas não fazem hotlinks intencionais com suas imagens e não estão conscientes de que isso é um problema. Elas, geralmente, estão ocupadas escrevendo e simplesmente copiam e colam URLs e arquivos. Talvez nem saibam como veicular uma imagem de forma adequada. Entretanto, ainda assim não existe desculpa. Se você escreve conteúdo para a web, é importante compreender as melhores práticas para veicular as imagens de outras pessoas, bem como fazer as atribuições adequadamente.

Bloquear o Hotlinking magoa o seu SEO?

Bloquear pessoas do hotlinking não prejudicará seu SEO, mas ele precisa ser configurado corretamente. Existem rastreadores do Google, Bing, Yahoo!, entre outros, que exigem acesso às suas imagens para serem capazes de indexá-las e exibi-las adequadamente. Por exemplo, quando você vê uma imagem na pesquisa do Google, a miniatura é servida pelo cache de imagens do Google. Mas a versão original (se você clicar sobre ela) está sendo entregue pelo seu servidor.

google image search
Hotlinking na pesquisa de imagens do Google

E você quer que suas imagens sejam exibidas na pesquisa do Google. Conforme a WordStream colocou, o tráfego das pesquisas de imagens do Google é uma “vitória fácil” e, na verdade, pode levar a conversões e leads para seus negócios que você não receberia de outra forma.

Como Prevenir Hotlinking

Existem algumas formas fáceis de proteger suas imagens contra hotlinking. Vamos analisar as opções que temos.

Utilize uma CDN com Proteção de Hotlink

A maioria de vocês oferece conteúdo ao redor do mundo através de seus websites e, em virtude disso, usa um provedor de CDN para agilizar a entrega de seus ativos. Provedores de CDN como KeyCDN e Cloudflare possuem ótimas proteções contra hotlinks embutidas e gratuitas que você pode habilitar. Esse é o método mais recomendável, pois possui regras muito bem definidas para bots e outras referências que não podem ser bloqueados. Outro benefício de fazer isso em sua CDN é que você não precisa alterar nada em sua instalação do WordPress.

Se você estiver usando KeyCDN, basta clicar na opção Zonereferrers e adicionar as regras. Os rastreadores ainda conseguirão acessar e indexar suas imagens.

Proteção de hotlink KeyCDN
Proteção de hotlink KeyCDN

Há até mesmo uma opção de um clique para permitir referências vazias de acordo com a zona.

Permissão de referências vazias KeyCDN
Permissão de referências vazias KeyCDN

Isso habilitaria a proteção contra hotlinks para ativos em sua CDN, mas não em seu servidor de origem. Portanto, se você estiver preocupado com alguém fazendo hotlinks para suas imagens diretamente em seu servidor, também pode habilitar a proteção de hotlinks em seu servidor de origem (veja as regras para Apache e NGINX mais abaixo). Essa situação é improvável, pois a pessoa precisaria remover manualmente a URL da CDN. Mas poderia acontecer.

Se você estiver usando Cloudflare, pode habilitar a proteção de hotlink com facilidade, na opção de Scrape Shield em sua conta. A proteção de hotlink não tem nenhum impacto sobre o rastreamento, mas prevenirá que as imagens sejam exibidas em sites como Google Imagens, Pinterest, etc. Como Cloudflare é um serviço de proxy completo, você não precisa se preocupar em habilitar a proteção de hotlink no servidor de origem.

Proteção de hotlink Cloudflare
Proteção de hotlink Cloudflare

Se você estiver usando a Amazon S3, pode habilitar a proteção de hotlink com políticas de bucket, que ficam localizadas na aba “Permissões” (“Permissions”) em seu bucket.

Proteção de hotlink Amazon S3
Proteção de hotlink Amazon S3

Basta adicionar o código abaixo:

{
  "Version": "2008-10-17",
  "Id": "preventHotLinking",
  "Statement": [
    {
      "Sid": "1",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::my-brand-new-bucket/*",
      "Condition": {
        "StringLike": {
          "aws:Referer": [
            "http://yourwebsitename.com/*",
            "http://www.yourwebsitename.com/*"
            "https://google.com/*"
            "https://bing.com/*"
            "https://yahoo.com/*"
          ]
        }
      }
    }
  ]
}

Habilitar Proteção Para Hotlink no Apache

Se seu site WordPress estiver rodando em Apache, tudo o que você precisa fazer é abrir o arquivo .htaccess no diretório raiz do seu site (ou criá-lo) e adicionar o seguinte código:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?bing.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yahoo.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|svg)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]

A segunda linha permite referências em branco. Você provavelmente vai querer habilitar esse recurso, já que alguns visitantes usam um firewall pessoal ou programa antivírus que remove as informações de referência da página enviadas pelo navegador. Se você não deseja ter referências em branco, pode desabilitar todas as imagens para esses usuários.

A terceira linha define a referência habilitada, o site que é permitido veicular a imagem diretamente, que deve ser seu próprio website (substitua seudominio.com acima por seu próprio domínio). A quarta, quinta e sexta linhas adicionam os mecanismos de pesquisa para a lista de permissões, porque você não deve bloquear rastreadores como o bot do Google ou do Bing. Isso poderia impedir que suas imagens fossem exibidas e indexadas nas pesquisas do Google.

E a sétima linha define a imagem que você deseja que seu visitante visualize no lugar daquela que está protegida contra hotlinks. Isso não é obrigatório, mas você poderia dar um aviso amigável a essas pessoas. Se deseja habilitar diversos sites, você pode duplicar esta linha e substituir apenas a referência. Se quiser gerar regras mais complexas, dê uma olhada neste gerador de proteção de hotlinks para htaccess.

Se você estiver usando as regras acima com uma CDN, talvez também precise colocar seu subdomínio de CDN na lista de permissões.

Habilitar Proteção Para Hotlink no NGINX

Se você estiver rodando no NGINX, tudo o que precisa fazer é abrir seu arquivo config e adicionar o seguinte:

location ~ .(gif|png|jpeg|jpg|svg)$ {
     valid_referers none blocked ~.google. ~.bing. ~.yahoo. yourdomain.com *.yourdomain.com;
     if ($invalid_referer) {
        return   403;
    }
}

Se você é um cliente Kinsta e não está usando uma CDN, podemos adicionar isso para você. Basta abrir um ticket rápido junto à nossa equipe de suporte através do painel MyKinsta. Se você está usando as regras acima com uma CDN, talvez você também precise colocar seu subdomínio de CDN na lista de permissões.

Plugins WordPress

Existem alguns plugins WordPress relacionados a hotlinking, mas muitos deles são de uso único e não recebem manutenção ou possuem avaliações ruins. Não recomendamos sua utilização. Sugerimos que dê uma olhada no plugin All In One WP Security And Firewall, que é um excelente plugin de segurança e que vem com a capacidade de prevenção de hotlinking embutida. Entretanto, geralmente é mais recomendado habilitar a proteção de hotlinks no nível do servidor ou da CDN.

All In One WP Security & Firewall
All In One WP Security & Firewall

O All In One WP Security & Firewall possui, atualmente, mais de 500 mil instalações ativas com uma incrível avaliação de cinco estrelas em cinco possíveis. Você pode fazer seu download no repositório do WordPress ou procurar por ele dentro de seu painel WordPress, na opção “Adicionar novo” na aba de plugins.

Observação: Se você é um usuário Kinsta, esse plugin não é permitido, pois já aplicamos muitas das mesmas precauções de segurança no nível do servidor. Isso ajuda a garantir que o desempenho do seu site WordPress não seja afetado e que tudo ocorra de forma adequada em nosso ambiente. Se você precisa da proteção contra hotlink habilitada, entre em contato com nossa equipe de suporte.

Desabilitar clique com o botão direito no WordPress

Outra opção para prevenir hotlinking no WordPress é desabilitar a funcionalidade de clique com o botão direito do mouse. Essa não é uma abordagem livre de falhas, mas pode ser uma boa maneira de garantir que usuários comuns não roubem suas imagens ou as copiem para outras aplicações, veiculando para o domínio da fonte.

Existe um ótimo plugin gratuito chamado Prevent Content Theft que poderá ajudar você com essa tarefa. É possível fazer seu download no repositório do WordPress ou pesquisar por ele dentro de seu painel WordPress, na opção “Adicionar novo” da aba de plugins. Não há nada a ser configurado, basta instalar e ele estará pronto.

Plugin WordPress Prevent Content Theft
Plugin WordPress Prevent Content Theft

Este plugin não desabilita o clique com o botão direito apenas em suas imagens, mas em toda a página, protegendo também seu conteúdo escrito. Nós o instalamos e testamos em nosso site de teste e você pode ver abaixo um exemplo do que acontece quando um usuário tenta clicar em uma imagem com o botão direito. Há uma caixa de notificação que informa que essa função está desabilitada.

Desabilitar clique com o botão direito no WordPress
Desabilitar clique com o botão direito no WordPress

Renomear Arquivos

Se você descobrir de repente que um site de muito tráfego ou diversas outras fontes estão usando hotlinks para uma única imagem sua, um método simples é renomear o arquivo. Altere o link em seu próprio site e deixe os hotlinkers com muita raiva ao notarem que suas imagens se tornaram erros 404. Apesar de conveniente, esse método é apenas uma correção rápida, já que não é adequado para lidar com grandes quantidades de hotlinking.

Configurações do cPanel

Se você tem cPanel ou WHM instalado em seu domínio, pode usar a ferramenta embutida de proteção de hotlink. Dê uma olhada na documentação do cPanel para obter mais informações. É tão fácil quanto habilitar qualquer outra configuração.

Como Solicitar uma Notificação DMCA Takedown

Outra solução, caso alguém esteja usando sua imagem sem ser proprietário dela e sem sua permissão, é solicitar uma notificação DMCA Takedown. Essa pode ser uma maneira rápida de garantir que ela saia do ar. Você ficaria surpreso em ver como uma pequena carta sobre “abuso” pode surtir efeito. Muitos proprietários de websites resolverão o problema imediatamente, pois temem sofrer ações legais.

Conclusão

Se você é um ávido agregador e compartilhador de conteúdo, certifique-se de fazer a coisa certa e fazer veiculações para websites, ao invés de exibir suas imagens diretamente. Se você realmente é um fã do que está mostrado, estará apoiando o autor original ainda mais! Se você é um criador de conteúdo, certifique-se de se proteger contra roubos. Hotlinking é uma área que não é muito difícil de prevenir. Qualquer método citado acima será capaz de garantir que você economize dinheiro, tempo e largura de banda.

Você já teve que lidar com pessoas fazendo hotlinks para suas imagens? Adoraríamos ouvir sobre suas experiências nos comentários abaixo.

Daniel Pataki

Hi, my name is Daniel, I'm the CTO here at Kinsta. You may know me from Smashing Magazine, WPMU Dev, Tuts+ and other WordPress/Development magazines. Aside from WordPress and PHP I spend most of my time around Node, React, GraphQL and other technologies in the Javascript space.

When not working on making the best hosting solution in the Universe I collect board games, play table football in the office, travel or play guitar and sing in a pretty bad band.