Cómo proteger tu sitio de WordPress: configuraciones esenciales en el archivo .htaccess

El archivo .htaccess es una herramienta poderosa para gestionar la configuración de tu sitio web en un servidor Apache. En el caso de WordPress, puedes utilizarlo para mejorar la seguridad, optimizar el rendimiento y proteger tu contenido.

Vamos a ver cómo puedes configurar tu archivo .htaccess para proteger tu sitio de WordPress, incluyendo la redirección a HTTPS, la eliminación de hotlinking, el bloqueo de acceso a archivos de configuración y la prohibición de IPs maliciosas.

Código del archivo .htaccess

Aquí tienes un ejemplo de un archivo .htaccess que incluye las configuraciones mencionadas (MUY IMORTANTE: recuerda siempre hacer una copia de seguridad del original):

# Redirección a HTTPS
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

# Eliminar hotlinking
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?tudominio\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [F,NC]

# Bloquear acceso a archivos de configuración
<FilesMatch «^(wp-config\.php|wp-settings\.php|wp-load\.php|xmlrpc\.php)$»>
Order Allow,Deny
Deny from all
</FilesMatch>

# Prohibir acceso a IPs maliciosas
<RequireAll>
Require all granted
Require not ip 192.0.2.0
Require not ip 203.0.113.0
Require not ip 198.51.100.0
</RequireAll>

Explicación de las secciones

 

Redirección a HTTPS

La primera sección del código verifica si la conexión no es segura (HTTP) y redirige automáticamente a la versión segura (HTTPS) del mismo recurso. Esto asegura que todos los visitantes de tu sitio utilicen una conexión segura, lo que es fundamental para proteger la información sensible y mejorar la confianza del usuario.

Si decides implementar esta redirección, asegúrate de que tu servidor tenga un certificado SSL válido instalado. Esto es esencial para que la redirección funcione correctamente y para garantizar la seguridad de tu sitio.

Configuración básica de WordPress

La segunda sección del archivo .htaccess, la que indica las reglas de reescritura dde WordPress, es fundamental para que WordPress funcione correctamente. Aquí se habilita el módulo de reescritura y se establecen las reglas para manejar las URL amigables. Esto permite que las URLs de tu sitio sean más legibles y mejoren la experiencia del usuario.

Eliminación de hotlinking

El hotlinking ocurre cuando otros sitios web enlazan directamente a tus imágenes, lo que puede consumir tu ancho de banda y afectar el rendimiento de tu sitio. La regla que hemos incluido verifica el referer de las solicitudes y bloquea el acceso a las imágenes si no provienen de tu dominio. Asegúrate de reemplazar tudominio.com con tu propio dominio para que funcione correctamente.

Bloqueo de acceso a archivos de configuración

Los archivos de configuración de WordPress son críticos para su funcionamiento. La sección que bloquea el acceso a wp-config.php, wp-settings.php, wp-load.php y xmlrpc.php ayuda a proteger tu instalación de accesos no autorizados. Esto es esencial para mantener la seguridad de tu sitio.

Prohibición de acceso a IPs maliciosas

La última sección permite bloquear el acceso a direcciones IP específicas que consideres maliciosas. Puedes agregar tantas IPs como desees, simplemente añadiéndolas en la sección correspondiente. Esto es útil para prevenir ataques y accesos no deseados a tu sitio.

Resumiendo, configurar adecuadamente tu archivo .htaccess es un paso crucial para proteger tu sitio de WordPress. Las configuraciones que hemos incluido no solo mejoran la seguridad, sino que también optimizan el rendimiento de tu sitio. Recuerda siempre hacer una copia de seguridad de tu archivo .htaccess antes de realizar cambios y probar tu sitio después de aplicar estas configuraciones para asegurarte de que todo funcione correctamente.