Configurar restricciones por IP en Apache permite controlar el acceso a recursos específicos del servidor, limitando el acceso a ciertas direcciones IP o rangos de IP. Esta medida de seguridad es útil para proteger directorios sensibles o recursos críticos, permitiendo acceso solo desde ubicaciones autorizadas, como redes internas o direcciones de confianza.
Las restricciones por IP en Apache se configuran utilizando el módulo mod_authz_core
, permitiendo definir reglas en el archivo .htaccess
o en la configuración principal del servidor. Estas reglas especifican qué IPs o rangos de IPs tienen permitido o denegado el acceso a ciertos directorios o archivos.
Para implementar restricciones por IP, se usan las directivas Require
, Allow
, y Deny
. La directiva Require
es la más utilizada en versiones de Apache 2.4 y superiores.
El siguiente ejemplo muestra cómo restringir el acceso a un directorio solo a ciertas direcciones IP:
<Directory "/var/www/mi_directorio">
Require ip 192.168.1.10
Require ip 203.0.113.0/24
</Directory>
En este ejemplo:
192.168.1.10
y todas las IPs en el rango 203.0.113.0/24
tendrán acceso al directorio /mi_directorio
.
Directiva | Descripción | Ejemplo |
---|---|---|
Require ip
|
Permite acceso solo a la IP o rango especificado. |
Require ip 192.168.1.10
|
Require not ip
|
Deniega acceso a la IP o rango especificado. |
Require not ip 203.0.113.5
|
Require all granted
|
Permite el acceso a todas las IPs. |
Require all granted
|
Require all denied
|
Deniega el acceso a todas las IPs. |
Require all denied
|
Es posible combinar múltiples reglas para crear configuraciones más complejas. Aquí un ejemplo:
<Directory "/var/www/mi_directorio">
Require all denied
Require ip 192.168.1.0/24
Require not ip 192.168.1.50
</Directory>
En este caso:
192.168.1.0/24
, excepto a la IP 192.168.1.50
.
También se puede implementar en el archivo .htaccess
para configuraciones de acceso más específicas. Asegúrate de que tu servidor permite la sobrecarga de configuración mediante .htaccess
.
Require ip 198.51.100.15
Require not ip 198.51.100.20
Esta configuración permite acceso solo a la IP 198.51.100.15
y bloquea la IP 198.51.100.20
.
Para más detalles sobre las restricciones de acceso por IP, visita la documentación oficial de Apache.
Jorge García
Fullstack developer