Proteger que vean los archivos de un directorio web

  • Autor Autor xcodex
  • Fecha de inicio Fecha de inicio
X

xcodex

Estimados, estaba leyendo sobre como evitar que un usuario mal intencionado pueda ver los archivos de un directorio, muchos dicen que para ello hay que poner un index.html en dicho directorio.

Estaba pensando si se podría que ese archivo sea index.php y que contenga:
PHP:
<?php die(); ?>
Ejemplo: www.misitio.com/img/index.php
¿Qué les parece?
 
SI estás en CPanel hay una opción donde puedes configurar que directorios quieres que puedan ser vistos llamda Privacidad del Directorio

En caso que no uses cpanel puedes crear un archivo con lo siguiente
Insertar CODE, HTML o PHP:
var_dump(http_response_code(501));

Esto lanzaría un error de unauthorized (501) cuando se accediera al directorio (tienes que meterlo en el index.php del directorio que quieres proteger).

Espero que te sirva de ayuda.:guiño:
 
Hola xcodex, simplemente en el directorio principal de tu dominio crea un archivo .htaccess y coloca dentro
Insertar CODE, HTML o PHP:
 Options -Indexes
, eso evitara que la gente vea tus directorios y no tendrás que crear en cada uno de ellos el típico index.php en blanco. Y en los php crea ciertas condiciones de validación, por ejemplo cuando se usa ajax en un archivo colocamos:
PHP:
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {}
para solo recibir peticiones desde una secuencia ajax, puedes proteger ademas que solo se ejecute tus php si este tiene una referencia desde tu web
PHP:
$_SERVER['HTTP_REFERER']
puedes ademas crear token internos, etc... cuestión de crear una validación idónea para el tipo de php que usas y ejecutas. Normalmente los únicos php que tienen acceso los usuarios de forma publica son los formulario de registro, login y contacto. Que tiene una validación por parametros y recaptcha, ya internamente tienes que estar logueado para visualizar los php. Sino se cumple las condiciones de verificacion usas el
PHP:
<?php die(); ?>
, pero en fin es cuestion de lo que quieras hacer. saludos
 
SI estás en CPanel hay una opción donde puedes configurar que directorios quieres que puedan ser vistos llamda Privacidad del Directorio

En caso que no uses cpanel puedes crear un archivo con lo siguiente
Insertar CODE, HTML o PHP:
var_dump(http_response_code(501));

Esto lanzaría un error de unauthorized (501) cuando se accediera al directorio (tienes que meterlo en el index.php del directorio que quieres proteger).

Espero que te sirva de ayuda.:guiño:

Hola xcodex, simplemente en el directorio principal de tu dominio crea un archivo .htaccess y coloca dentro
Insertar CODE, HTML o PHP:
 Options -Indexes
, eso evitara que la gente vea tus directorios y no tendrás que crear en cada uno de ellos el típico index.php en blanco. Y en los php crea ciertas condiciones de validación, por ejemplo cuando se usa ajax en un archivo colocamos:
PHP:
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {}
para solo recibir peticiones desde una secuencia ajax, puedes proteger ademas que solo se ejecute tus php si este tiene una referencia desde tu web
PHP:
$_SERVER['HTTP_REFERER']
puedes ademas crear token internos, etc... cuestión de crear una validación idónea para el tipo de php que usas y ejecutas. Normalmente los únicos php que tienen acceso los usuarios de forma publica son los formulario de registro, login y contacto. Que tiene una validación por parametros y recaptcha, ya internamente tienes que estar logueado para visualizar los php. Sino se cumple las condiciones de verificacion usas el
PHP:
<?php die(); ?>
, pero en fin es cuestion de lo que quieras hacer. saludos

Muchas gracias!, mi solución era mucho mas simple jajajaj.
¡Tendré en cuenta sus comentarios!.
 
Atrás
Arriba