Como limitar el acceso a un foro de cierta area geografica

Iniciado por coyote_cojo, 26 Diciembre 2010, 19:10 PM

0 Miembros y 1 Visitante están viendo este tema.

coyote_cojo

Hola hackers del foro, mi duda es la siguiente

Pasa que tengo un foro (no se de hackers) pero no quiero que anden husmeado personas de determinado pais, y andar baneando a diario pues como que no, asi que quisiera me dijeran como hacer para que mi foro sea impenetrable por personas por ejemplo de China, para que no lo vean ni se iscriban, se que cada region o pais tiene un codigo de IP, pero no se si se pueda banear a todo un pais, ojala despeje mi duda
mi foro es de tipo bb3 o se que
un saludo a todos, ojala puedan ayudarme

el-brujo

es muy difícil banear por rango de ip's de un país, ya que hay incluso un país tiene muchos rangos, estarías baneando a mucha más gente de la que toca... si que se puede hacer, pero ya sabes que pasa en estos casos, baneas justos por pecadores, yo no te lo recomiendo.

Ataques DDOS
http://foro.elhacker.net/desarrollo_web/ataques_ddos-t292316.0.html

coyote_cojo

gracias por su rapida respuesta el.brujo, son ustedes muy amables, pero quisiera saber si es muy dificil banear a todo un pais, si lo puedo hacer desde el panel de administracion del foro, o necesito de ayuda de alguien mas, o de algun programa o script o que se yo

el-brujo

indica el sistema de foros que estás usando  y busca un "mod", "widget" o como quieras llamarlo que haga eso, si es que alguien lo ha implementado.

Si sabes algo de php pues seguro que podrías hacerlo tu mismo.

coyote_cojo

gracias por la respuesta tan rapida, el foro es tipo phpbb3

no se nada de computacion ni de eso que llamas php, y no se que es un mod, pero leere algo sobre eso buscando en google

gracias


Graphixx

#5
echale un ojo a esto
"Super contador de Visitas en PHP"=300MB SQL+4 millones de registros+Scripts

y en especial a esto, de la misma libreria que estoy usando en el contador.
IP address country block generator
http://ipinfodb.com/ip_country_block.php

y hay tienes una BD completa de 300MB, y 4millones de registros con todos los rangos ip del mundo.
http://ipinfodb.com/ip_database.php

AParte aca un australiano desarrollo un script para integrar todas las bases de datos de ip libres que hay en una sola:
GeoIP de origen de datos Collection - Maxmind, WIPmania, Ipinfodb - muchos proveedores GeoIP para usted para elegir!

Y no se me surgio una pregunta, asi la persona este navegando por proxy no se si el proxy enmascara el ISP o proveedor de servicios asi que podrias usar ese en vez de la ip para ban.

AParte ya que me hablas de china, podrias intentar optener la fuente por defecto del navegador, o el idioma del mismo, asi si buscaran ocultar su ip, no creo y puedan ocultar su idioma de preferencia. jejejeje :D

Tambien podrias agregarle algo de timezone o zona horaria, que podria funcionar para geolocalizacion.

Tambien el mismo gobierno en esos paises, banea muchas webs por contenido, podrias crear un portal "oculto" dentro de tu web con contenido que infringa los terminos de alli, y el mismo gobierno se encargaria de bloquear el acceso de sus usuarios a tu site ;)
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog

Graphixx

#6
en cuanto a lo del bloqueo demografico por lenguaje seria algo asi:

Usando IF:
Código (php) [Seleccionar]

$varpais = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,5);

if($varpais  == "es-ve"){
   echo "Hola Venezuela";
}elseif($varpais == "es-mx"){
   echo "Hola México";
}elseif($varpais == "es-pe"){
   echo "Hola Perú";
}elseif($varpais == "es-ar"){
   echo "Hola Argentina";
}elseif($varpais == "es-co"){
   echo "Hola Colombia";
}elseif($varpais == "es-cl"){
   echo "Hola Chile";
}  


Usando select case:
Código (php) [Seleccionar]

<?php

// cambia pagina.php por el archivo correcto de acuerdo al pais

if (isset($pais) && ($pais <> '')) {
$dgo_pais substr($pais,0,5);
} else {
$dgo_pais substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,5);
}
switch (
$dgo_pais) {

case 
"es-mx":
//si el pais es mexico
include("pagina.php");
break;

case 
"es-ar":
//si el pais es argentina
include("pagina.php");
break;

case 
"es-cl":
//si el pais es chile
include("pagina.php");
break;

case 
"es-ve":
//si el pais es venezuela
include("pagina.php");
break;

case 
"pt-br":
//si el pais es brasil
include("pagina.php");
break;

case 
"es-co":

//si el pais es colombia
include("pagina.php");
break;

case 
"es-ec":

//si el pais es ecuador
include("pagina.php");
break;

case 
"es-uy":

//si el pais es uruguay
include("pagina.php");
break;

default:
//si es algun otro pais
include("pagina.php");
break;
}
?>


me parece una exelente opcion que no se podria saltar usando proxy  ::)
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog