sábado 20 de junio de 2009

Configurando el .Htaccess

les quiero enseñar el arte de protegerse no solo a nivel de programacion sino tambien a nivel de buena configuracion =) asi que manos a la obra:

primero algo facil como configurar sus paginas de errores como el 404 o el 403 y esos errores...

ErrorDocument 400 /dir-errors/400.html
ErrorDocument 404
/dir-errors/401.html

ahora lo unico que deben de hacer es cambiar el directorio segun como lo tengan ustedes y su html...

ahora pasaremos a algo muy util para evitar que se nos quieran meter por reconocimiento de ip en el caso de que ustedes lo tengan programado asi =S


Deny from 190.168.0.0/20
Deny from 100.0.0/10

ahi le estamos denegando el acceso a ese rango de ips =) mm y como hacemos para permitirselo solo al rango de arriba?


Allow from 190.168.0.0/20
Allow from 100.0.0/10

los ejemplos dados arriba pueden servir como sistema de seguridad para proteger siertos Directorios...

ahora vamos a usar una tecnica tambien como seguridad para que la gente a simple vista no pueda ver el lenguaje de programacion que usamos, con el siguente code vamos a disfrasar el php poniendole .ded



AddType
application/x-httpd-php .ded

bueno ahora les voy a enseñar como evitar que se muestre su version de apache y lo tipico cuando tienes un error 404 o 403 (Apache/2.2.3 (DEBIAN))
ese tipo de errores mm bueno este es uno de los mas simples solo deben de poner...


ServerSignature Off

Ahora vamos a evitar que el Usuario pueda entrar con el navegador a una carpeta sin index y si logrará entrar que no se le muestren los directorios dentro =)


Options All -Indexes
IndexIgnore *

ahora vamos a denegar un rango de ip, esto es no dejen entrar a ips que comiensen con:

Deny from 192.168.1.0
Deny from 192.168.1
Deny from 192.168
Deny from 192

ahora les voy a enseñarles a protegerse de hotlink... (es cuando hay digamos un archivo en nuestro host pero esta puesto en muchos lugares entonces es como que se gastan nuestra banda entonces con el siguente code evitaremos)

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond
RewriteCond %{HTTP_REFERER} !^http://web.com$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|png|bmp)$ - [F,NC,L]

Ustedes pueden poner mas webs debajo de:

RewriteCond %{HTTP_REFERER} !^http://web.com$ [NC]

Bloqueando Bots para evitar ataques:

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw
[OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot mailto:craftbot@yahoo.com
[OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus
RewriteRule
.* - [F]

para que muestre un error a los bots pues entonces facil pongan solo una linea extra:

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw
[OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot mailto:craftbot@yahoo.com
[OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus
RewriteRule
RewriteRule ^.*$ h
ttp://www.error-a-mostrar.com [R,L]
.* - [F]

y ahora esto a mi no se me ocurrio sino que lo vi en una web la verdad no le veo un funcionamiento pero sirve para evitar que les suban cosas tontas si no tienen un buen sistema de control a nivel aplicacion...

LimitRequestBody 10000000

10000000 bytes son 10 megabytes...


mm bueno eso es realmente lo basico para protegerse con el htaccess mm bue facil para los que no saben esto abren un bloc de notas y lo guardan con el nombre .htaccess sin el .txt y lo suben a su host...

Espero les sirva de mucho para poder configurar bien sus hosts y Servidores...


Saludos
Dr.White