---
title: "Cómo proteger el archivo functions.php y otros archivos PHP críticos en WordPress"
description: "El archivo functions.php de WordPress, junto con otros ficheros PHP críticos como wp-config.php , wp-settings.php o index.php , conforman el núcleo funcional del sistema. Estos archivos gestionan la c..."
url: https://wpdirecto.com/como-proteger-el-archivo-functions-php-y-otros-archivos-php-criticos-en-wordpress/
date: 2025-05-26
modified: 2026-09-09
author: "David Carrero Fernández-Baillo"
image: https://wpdirecto.com/wp-content/uploads/2025/03/seguridad-wordpress-wpdirecto.jpg
categories: ["Seguridad"]
tags: ["functions", "seguridad", "wp-config"]
type: post
lang: es
---

# Cómo proteger el archivo functions.php y otros archivos PHP críticos en WordPress

El archivo `functions.php` de WordPress, junto con otros ficheros PHP críticos como `[wp-config.php](https://wpdirecto.com/tag/wp-config/)`, `wp-settings.php` o `index.php`, conforman el núcleo funcional del sistema. Estos archivos gestionan la carga del tema, la configuración del sitio, las rutas internas y hasta el comportamiento del sistema de autenticación. Por ello, protegerlos es clave para garantizar la seguridad de una instalación WordPress frente a ataques externos o modificaciones maliciosas.

En este artículo, se describen las mejores prácticas para reforzar la seguridad de estos archivos y evitar que se conviertan en puerta de entrada de ciberdelincuentes.

---

## ¿Por qué es importante proteger `functions.php`?

El archivo `functions.php` es parte esencial de cada tema de WordPress. En él se añaden funciones personalizadas, se conectan hooks (acciones y filtros), y se registran scripts o estilos. Un atacante que consiga acceso a este archivo podría insertar código malicioso (como shells, redirecciones o funciones de exfiltración de datos).

Este riesgo se amplifica en instalaciones con plugins de edición directa desde el panel de administración o con permisos de archivos mal configurados.

---

## 1. Restringir el acceso a archivos desde el navegador

Una de las medidas más efectivas para proteger archivos PHP es bloquear el acceso directo a ellos desde el navegador. Esto se puede hacer fácilmente con reglas en `.htaccess` para servidores Apache o `nginx.conf` si se usa NGINX.

### Ejemplo para `.htaccess`:

```
<FilesMatch "(functions\.php|wp-config\.php|wp-settings\.php|wp-load\.php)">
  Order Allow,Deny
  Deny from all
</FilesMatch>
Lenguaje del código: HTML, XML (xml)
```

Esta directiva evita que un visitante pueda cargar directamente esos archivos desde la URL.

---

## 2. Evitar la edición desde el panel de administración

WordPress permite por defecto editar archivos del tema y del plugin desde el administrador (Apariencia > Editor de archivos). Esta funcionalidad supone un riesgo.

### Desactivación en `wp-config.php`:

```
define('DISALLOW_FILE_EDIT', true);
Lenguaje del código: JavaScript (javascript)
```

Esto bloquea el editor visual y reduce significativamente las posibilidades de modificación malintencionada.

---

## 3. Establecer permisos seguros de archivos y carpetas

Una mala configuración de permisos puede dejar los archivos del core expuestos a escritura o ejecución indebida.

- Archivos PHP críticos: `644`
- Directorios: `755`
- `wp-config.php`: `600` o `640` (según el entorno)

Ajustar estos permisos puede hacerse manualmente o mediante comandos:

```
find /var/www/html -type f -exec chmod 644 {} \;
find /var/www/html -type d -exec chmod 755 {} \;
chmod 600 /var/www/html/wp-config.php
Lenguaje del código: JavaScript (javascript)
```

---

## 4. Usar un plugin de seguridad con reglas de hardening

Herramientas como Wordfence, iThemes Security o All In One WP Security & Firewall permiten aplicar reglas de endurecimiento (hardening) específicas para proteger archivos del núcleo. Entre sus funciones se incluyen:

- Protección contra escritura de archivos sensibles
- Monitorización de cambios en `functions.php`
- Alerta por ejecución sospechosa de código PHP

Estas soluciones ofrecen una protección adicional automatizada con escaneos periódicos.

---

## 5. Activar la protección contra ejecución de PHP en directorios críticos

Muchos ataques cargan archivos PHP en carpetas como `/uploads`, `/wp-includes` o `/wp-content/themes/nombre-tema`. Para evitar que se ejecuten scripts maliciosos, se puede bloquear la ejecución PHP en estas ubicaciones.

### Para Apache:

Crear o editar `.htaccess` en `/wp-content/uploads/`:

```
<Files *.php>
  deny from all
</Files>
Lenguaje del código: HTML, XML (xml)
```

### Para NGINX:

```
location ~* ^/wp-content/uploads/.*\.php$ {
    deny all;
}
Lenguaje del código: JavaScript (javascript)
```

---

## 6. Monitorizar modificaciones en tiempo real

El uso de herramientas como `Tripwire`, `OSSEC` o el plugin gratuito «WP File Monitor Plus» permite notificar cambios en archivos clave como `functions.php`, `wp-config.php` o `index.php`.

Además, se recomienda usar control de versiones con Git en entornos de desarrollo y despliegue controlado mediante CI/CD para limitar errores manuales y mantener un historial de modificaciones.

---

## 7. Autenticación de doble factor y control de usuarios

Aunque no afecta directamente a los archivos PHP, limitar quién puede acceder al administrador de WordPress es esencial. Implementar autenticación en dos pasos (2FA) y minimizar el uso de usuarios con privilegios de administrador reduce el riesgo de que alguien con acceso pueda modificar `functions.php`.

---

## Conclusión

La protección del archivo `functions.php` y de otros ficheros PHP críticos es un paso esencial en cualquier estrategia de seguridad para WordPress. A través de un enfoque combinado —bloqueo de acceso, configuración adecuada de permisos, desactivación de editores, monitorización y endurecimiento del servidor— se puede reducir drásticamente el riesgo de intrusiones y compromisos del sistema.

Invertir tiempo en estas medidas preventivas es más rentable que reparar un sitio hackeado o exponer datos sensibles de los usuarios.

[![](https://wpdirecto.com/wp-content/uploads/2025/05/seguridad-functions-php-1024x683.jpg)](https://wpdirecto.com/wp-content/uploads/2025/05/seguridad-functions-php.jpg)
