Xampp proteger directorios utilizando httpd-xampp.conf #xampp #ubuntu #server #apache
Al subir una pagina estática o dinámica realizada con php algunos usuarios pueden bajar su contenido o la pagina completa con un simple comando como:
wget -k -c -r paginaparabajar.com
o ver el contenido de nuestra carpeta de css , img y js con la posibilidad de descargar todos nuestros archivos de forma muy fácil.
para protegerlos sin usar .htaccess debemos hacer lo siguiente
- buscar el archivo httpd-xampp.conf que si usas ubuntu estara en la ruta "/opt/lampp/etc/extra"
sudo nano /opt/lampp/etc/extra/httpd-xampp.conf - lo abres y agregaras al final el siguiente código:
<LocationMatch "^/web/(?i:(?:archivos|css|elementos|fonts|img|js|less|paginas|scss|video))"> Options -Indexes RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR] RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:craftbot@yahoo.com [OR] RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR] RewriteCond %{HTTP_USER_AGENT} ^Custo [OR] RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR] RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [OR] RewriteCond %{HTTP_USER_AGENT} ^eCatch [OR] RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [OR] RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR] RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR] RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [OR] RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [OR] RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE [OR] RewriteCond %{HTTP_USER_AGENT} ^FlashGet [OR] RewriteCond %{HTTP_USER_AGENT} ^GetRight [OR] RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [OR] RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [OR] RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It [OR] RewriteCond %{HTTP_USER_AGENT} ^GrabNet [OR] RewriteCond %{HTTP_USER_AGENT} ^Grafula [OR] RewriteCond %{HTTP_USER_AGENT} ^HMView [OR] RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [OR] RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [OR] RewriteCond %{HTTP_USER_AGENT} Indy\ Library [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^InterGET [OR] RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja [OR] RewriteCond %{HTTP_USER_AGENT} ^JetCar [OR] RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [OR] RewriteCond %{HTTP_USER_AGENT} ^larbin [OR] RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [OR] RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader [OR] RewriteCond %{HTTP_USER_AGENT} ^MIDown\ tool [OR] RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [OR] RewriteCond %{HTTP_USER_AGENT} ^Navroad [OR] RewriteCond %{HTTP_USER_AGENT} ^NearSite [OR] RewriteCond %{HTTP_USER_AGENT} ^NetAnts [OR] RewriteCond %{HTTP_USER_AGENT} ^NetSpider [OR] RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire [OR] RewriteCond %{HTTP_USER_AGENT} ^NetZIP [OR] RewriteCond %{HTTP_USER_AGENT} ^Octopus [OR] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer [OR] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator [OR] RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [OR] RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [OR] RewriteCond %{HTTP_USER_AGENT} ^pavuk [OR] RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [OR] RewriteCond %{HTTP_USER_AGENT} ^RealDownload [OR] RewriteCond %{HTTP_USER_AGENT} ^ReGet [OR] RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [OR] RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [OR] RewriteCond %{HTTP_USER_AGENT} ^SuperBot [OR] RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [OR] RewriteCond %{HTTP_USER_AGENT} ^Surfbot [OR] RewriteCond %{HTTP_USER_AGENT} ^tAkeOut [OR] RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [OR] RewriteCond %{HTTP_USER_AGENT} ^VoidEYE [OR] RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [OR] RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker [OR] RewriteCond %{HTTP_USER_AGENT} ^WebAuto [OR] RewriteCond %{HTTP_USER_AGENT} ^WebCopier [OR] RewriteCond %{HTTP_USER_AGENT} ^WebFetch [OR] RewriteCond %{HTTP_USER_AGENT} ^WebGo\ IS [OR] RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [OR] RewriteCond %{HTTP_USER_AGENT} ^WebReaper [OR] RewriteCond %{HTTP_USER_AGENT} ^WebSauger [OR] RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [OR] RewriteCond %{HTTP_USER_AGENT} ^Website\ Quester [OR] RewriteCond %{HTTP_USER_AGENT} ^WebStripper [OR] RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [OR] RewriteCond %{HTTP_USER_AGENT} ^WebZIP [OR] RewriteCond %{HTTP_USER_AGENT} ^Wget [OR] RewriteCond %{HTTP_USER_AGENT} ^Widow [OR] RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [OR] RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR] RewriteCond %{HTTP_USER_AGENT} ^Zeus RewriteRule ^.* - [F,L] #ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var ErrorDocument 403 /error/error.html </LocationMatch>
- Explicación del codigo
<LocationMatch "^/web/(?i:(?:archivos|css|elementos|fonts|img|js|less|paginas|scss|video))">
en<LocationMatch "^/web/ especifica el directorio raiz donde esta ubicada nuestra pagina en este caso tengo una carpeta llamada web en el htdoc de xampp si tiene una llamda "mipagina" solo sera necesario remplazar el nombre
en
(?:archivos|css|elementos|fonts|img|js|less|paginas|scss|video)) son todas las carpetas dentro de mi directorio raiz que deseo bloquear
en Options -Indexes esta regla ejecuta que no puedan ser indexados los directorios que especificamos en la regla anterior
en RewriteEngine On El uso más común que se le da a esta opción de configuración de Apache es para reescribir URLs y hacerlas más amigables, es decir, más sencillas para el usuario y para los motores de búsqueda. Pero también tiene otros usos, menos conocidos, y sobre todo, menos extendidos.
en RewriteCond %{HTTP_USER_AGENT} y sus variantes son bloqueos para robots que puedan mapear nuestra pagina y ver todo el contenido que tenemos dentro de ella
en ErrorDocument 403 /error/error.html si sucede el evento u el caso llamo a otro archivo (modificado a nuestro gusto) que crearemos mas adelante para usar
para guardar si estas usando nano CTRL+O luego para salir CTRL+X
enlace del archivo:https://drive.google.com/file/d/0B-2FDrPc5MapVE9IOG1NS2JtekE/view?usp=sharing
archivo html de error
sudo nano /opt/lampp/error/error.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>No Disponible</title> <style> body img{ width:10%; } div{ text-align:center; } .h1rojo{ color:red; } </style> <link href='https://cdn2.iconfinder.com/data/icons/humano2/128x128/actions/dialog-error.png' rel='icon' type='image/x-icon'/> </head> <body> <div> <h1 class="h1rojo">La pagina que Buscas no esta Disponible!!</h1> <img src="http://www.abadlimpiezas.com/images/cara-triste.gif" alt=""> <h3>Contacta a: <a href="https://plus.google.com/110134351723261095361" target="_blank">Cirel Ramos</a></h3> </div> </body> </html>
para guardar si estas usando nano CTRL+O luego para salir CTRL+X
Enlace del Archivo: https://drive.google.com/file/d/0B-2FDrPc5MapcTNkYkt6V09Kejg/view?usp=sharingy el resultado de todas nuestra configuración es este:
como pueden observar no tengo acesso para listar la carpeta css igual pasaria con js e img
obviamente la ruta que utilice en el archivo httpd-xampp.conf no fue /web/ sino /web/proyectos/pagina_curriculum/v4/
Fuente: http://kekomundo.com/foro/index.php?topic=235780.0
0 comentarios :