Início » Geradores » Gerador de Configurações de Segurança

Gerador de Configurações de Segurança Avançada p. WordPress

Este é o nosso Gerador de Configurações de Segurança Avançada para WordPress, ou GCSAWP para os amantes de siglas. Nada mais é do que um formulário com algumas configurações de segurança que julgamos ser de grande ajuda para profissionais que prestam suporte e manutenção em sites WordPress.

Se você não é um profissional de suporte, desenvolvedor ou programador WordPress, vou deixar avisos no texto, alertando para todos os possíveis conflitos que possam surgir, se achar que não deve prosseguir sem o devido apoio, pare imediatamente ou contrate um profissional especializado em WordPress.


Pontos de Atenção

Nem todos os plugins são compatíveis com ambientes protegidos ⚠️

Algumas medidas de segurança, como bloqueios de modificação de arquivos e personalização de diretórios, podem causar conflitos com plugins mal projetados que tentam escrever diretamente nas pastas do WordPress.

Evite utilizar plugins desse tipo, pois eles podem comprometer a segurança imediatamente ou abrir brechas futuras quando falhas forem descobertas.


Acesso root é essencial para segurança realmente completa ⚠️

Para proteger o WordPress de forma robusta, é necessário ter acesso root ao servidor via SSH. Somente assim é possível aplicar permissões restritivas, desativar funções perigosas no PHP e configurar o ambiente do sistema de forma segura.

Sem esse acesso, sua proteção estará limitada ao nível da aplicação.

Plugins de segurança têm os mesmos privilégios que invasores ⚠️

Plugins de segurança funcionam com os mesmos privilégios que o WordPress. Ou seja, se um invasor obtiver acesso ao painel ou a um arquivo com permissões de escrita, ele terá poder para desfazer qualquer proteção implementada pelo plugin.

Nenhum plugin é capaz de aplicar proteções inquebráveis sem o suporte do sistema operacional. Mais uma vez, recomendo contratar uma hospedagem premium.


Nenhuma medida garante segurança absoluta ⚠️

As técnicas e recomendações deste projeto ajudam a aumentar significativamente a segurança do WordPress, mas não garantem proteção total.

A segurança deve ser pensada em camadas e mantida continuamente.

Use essas medidas como parte de uma estratégia mais ampla de monitoramento, prevenção e atualização. Se precisar de suporte de um especialista, não exite em me contactar.


Faça backup antes de aplicar mudanças ⚠️

Antes de modificar arquivos como wp-config.php, .htaccess ou aplicar permissões no servidor, faça backup completo dos arquivos e do banco de dados. Isso permite restaurar o site caso algo saia errado durante o processo de reforço da segurança.


Configurações que podem ser definidas via wp-config.php

Estas são as configurações abordadas em nosso gerador, leia a descrição de cada uma e use-as conforme suas necessidades:

Desabilitar o editor de códigos do painel

DISALLOW_FILE_EDIT

Essa configuração desativa o editor de arquivos disponível no menu Aparência do WP, evitando que usuários editem diretamente os arquivos de temas e plugins.

Isso ajuda a impedir que alterações maliciosas ou descuidadas sejam feitas a partir do painel de administração do WordPress.


Desabilitar o gerenciamento de plugins e temas via painel de administração

DISALLOW_FILE_MODS

Mais drástico que o anterior, além de desabilitar o editor de códigos, define que o WordPress não poderá realizar instalações, atualizações ou remoções de plugins e temas através do painel.

Links de instalar, atualizar e remover plugins, bem como o acesso ao instalador são removidos. Além disso, não será possível buscar novos plugins / temas no repositório.

Essa constante é ideal para ambientes controlados, como staging ou produção, onde as alterações são feitas via Git ou deploy manual, protegendo radicalmente de quaisquer alterações.


Desativar todas as atualizações automáticas

AUTOMATIC_UPDATER_DISABLED

Essa constante desativa todos os tipos de atualizações automáticas no WordPress (core, plugins, temas, traduções etc).

Com ela, as atualizações precisam ser realizadas manualmente, permitindo que você revise as mudanças antes de aplicá-las, o que é especialmente importante em ambientes onde mudanças automáticas podem quebrar funcionalidades.

É especialmente recomendada para ambientes de produção ou quando as atualizações são feitas via sistemas de versionamento.


Habilitar as atualizações automáticas do core do WordPress (núcleo)

WP_AUTO_UPDATE_CORE

Use 'minor' para manter seu site protegido com atualizações de segurança, sem o risco de que grandes mudanças quebrem algo. Isso garante que as correções críticas sejam atualizadas sem afetar as funcionalidades principais ou causar incompatibilidades.

Use true se quiser sempre estar com a versão mais recente (mesmo em releases maiores). Use false somente se quiser aplicar todas as atualizações manualmente.

Se AUTOMATIC_UPDATER_DISABLED estiver habilitado, ele anulará qualquer configuração de WP_AUTO_UPDATE_CORE.


Bloquear todas as requisições HTTP externas

WP_HTTP_BLOCK_EXTERNAL

Essa diretiva bloqueia requisições HTTP externas indesejadas, evitando que o WordPress se comunique com hosts não autorizados. É uma medida de proteção que reduz a exposição a ataques que exploram conexões externas.


Permitir somente domínios confiáveis

WP_ACCESSIBLE_HOSTS

Permite especificar quais hosts externos podem ser acessados pelo WordPress, mesmo quando WP_HTTP_BLOCK_EXTERNAL está ativado. Isso é útil para autorizar conexões com APIs e serviços confiáveis, como api.wordpress.org.

É ideal em ambientes de produção com foco em segurança máxima, especialmente quando se quer bloquear conexões externas não autorizadas e garantir que o WordPress só se comunique com servidores específicos.


Forçar o uso de HTTPS

FORCE_SSL_ADMIN

Força o uso de HTTPS para o painel de administração e a página de login. Essa configuração protege as credenciais dos usuários contra interceptação, garantindo que a comunicação seja criptografada.

FS_METHOD

Define o método de acesso ao sistema de arquivos. Ao definir como “direct”, o WordPress utiliza a conexão direta para manipular arquivos, o que pode ser necessário em ambientes com configurações específicas de permissões.

FS_CHMOD_FILE

Define as permissões padrão para arquivos criados pelo WordPress. Configurar essa diretiva garante que os arquivos sejam criados com permissões seguras, minimizando o risco de acesso não autorizado.

FS_CHMOD_DIR

Define as permissões padrão para diretórios criados pelo WordPress. Isso assegura que os diretórios tenham níveis de acesso apropriados, protegendo contra modificações indesejadas.

Custom Cookies

Permite definir nomes personalizados para os cookies de autenticação do WordPress (USER_COOKIE, PASS_COOKIE, AUTH_COOKIE, SECURE_AUTH_COOKIE, LOGGED_IN_COOKIE, TEST_COOKIE). Essa personalização ajuda a obscurecer os nomes padrão, dificultando tentativas de sequestro de sessão.

WP_DEBUG and Error Logging

Desativa a exibição de erros em produção, evitando que informações sensíveis sejam reveladas. Além disso, ativa o log de erros para que as falhas sejam registradas sem expor detalhes ao usuário final.

DISABLE_WP_CRON

Desativa o sistema interno de WP-Cron do WordPress. Em vez disso, recomenda-se configurar um cron job no servidor para gerenciar tarefas agendadas, o que pode melhorar o desempenho e a segurança.

WP_INSTALLING

Garante que o WordPress não entre inadvertidamente em modo de instalação, prevenindo reinstalações não autorizadas. Essa configuração ajuda a manter a integridade do ambiente.

WP_DEFAULT_THEME

Define um tema padrão neutro, que pode ser utilizado para ocultar o tema real ativo, dificultando o fingerprinting (identificação) do ambiente pelo invasor.


Configurações que não podem ser definidas via wp-config.php

Security HTTP Headers

Cabeçalhos de segurança como Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, Strict-Transport-Security, Referrer-Policy e Permissions-Policy não podem ser definidos via wp-config.php.

Eles devem ser configurados no nível do servidor, utilizando arquivos de configuração (como .htaccess ou nginx.conf) ou plugins especializados.

Disabling XML-RPC

A desativação do XML-RPC, que pode ser explorado para ataques de força bruta, não pode ser feita diretamente no wp-config.php. Ela deve ser implementada via .htaccess, plugins ou através da remoção de ações no functions.php.

Web Application Firewall (WAF) and DDoS Protection

A implementação de um firewall de aplicação (WAF) e a proteção contra ataques DDoS devem ser configuradas no nível do servidor ou por meio de serviços externos e plugins. Essas medidas não podem ser aplicadas via wp-config.php.

Data Sanitization and XSS Prevention

As práticas de sanitização, validação e escapamento de dados, essenciais para prevenir ataques XSS, são responsabilidade dos desenvolvedores nos temas e plugins, e não podem ser configuradas diretamente no wp-config.php.

Gerador de Configurações de Segurança para Sites WordPress

Basic Settings
Main domain, used in custom URL generation.
Absolute path to the WordPress root directory on the server (e.g., /var/www/html).
Custom Directory Names
Custom name to replace the default wp-content folder (e.g., content).
Folder name for media uploads inside wp-content (e.g., media).
Custom name for the plugins directory inside wp-content (e.g., mod).
Custom Cookie Names
System-Level Hardening
Prevents editing plugin and theme files via the WordPress admin panel.
Disables installing, updating, and deleting plugins and themes from the admin area.
Blocks access to WordPress reinstallation to avoid accidental or unauthorized resets.
Specifies the default theme to load if none is active.
Connection & Update Control
Enforces HTTPS for all admin and login pages to secure user credentials.
Disables all automatic updates, including core, plugins, themes, and translations.
Prevents WordPress from making outbound HTTP requests, unless explicitly allowed.
List of external domains allowed for HTTP requests when blocking is enabled.
Debug & Cron Options
Activates debug mode to display PHP errors and notices during development.
Logs PHP errors and warnings to the debug.log file inside wp-content.
Controls whether debug messages are shown on the site’s pages.
Disables the built-in WP-Cron system; use server-side cron instead.

Mais geradores