script acceso por ip

Iniciado por copo, 24 Abril 2012, 20:58 PM

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

copo

hola a ver si alguien me puede ayudar busco un script para que solo tengan acceso a mi web las ip q yo ponga
encontre uno para hacer lo contrario para banear lo dejo a ver si ese se puede modificar para hacer lo contrario

<script type="text/javascript" src="http://code.vietwebguide.com/php/addr.php"></script> <script type="text/javascript"> //<!CDATA[ // Banned ip script 2.0 //(C)2009 Anhvo //homepage: http://vietwebguide.com var banned_ip = new Array(); banned_ip[0] = '85.142'; banned_ip[1] = '22.98.69.1'; banned_ip[2] = '22.98.69.146'; banned_ip[3] = '85.78'; var mes_bi = "Your IP is banned so you cannot visit this website!"; for(var i=0;i<banned_ip.length;i++) { eval('var re = /^' + banned_ip + '/ ;'); if (re.test(mc_user_ip)) { document.write('<style type="text/css">'); document.write('BODY{display:none;}'); document.write('<\/style>'); alert(mes_bi); break; } } //]]> </script>

o si alguien sabe alguno para hacer que solo entren en esa pagina las ip q yo ponga
gracias de antemano

Stakewinner00

puedes poner un condicional y utilizar $_SERVER['REMOTE_ADDR']

para que si la ip coincide con l que tu eligas te rediriga a la web y sino a un error.

Es esto lo k necessitas???

m0rf

Cita de: copo en 24 Abril 2012, 20:58 PM
hola a ver si alguien me puede ayudar busco un script para que solo tengan acceso a mi web las ip q yo ponga
encontre uno para hacer lo contrario para banear lo dejo a ver si ese se puede modificar para hacer lo contrario

<script type="text/javascript" src="http://code.vietwebguide.com/php/addr.php"></script> <script type="text/javascript"> //<!CDATA[ // Banned ip script 2.0 //(C)2009 Anhvo //homepage: http://vietwebguide.com var banned_ip = new Array(); banned_ip[0] = '85.142'; banned_ip[1] = '22.98.69.1'; banned_ip[2] = '22.98.69.146'; banned_ip[3] = '85.78'; var mes_bi = "Your IP is banned so you cannot visit this website!"; for(var i=0;i<banned_ip.length;i++) { eval('var re = /^' + banned_ip + '/ ;'); if (re.test(mc_user_ip)) { document.write('<style type="text/css">'); document.write('BODY{display:none;}'); document.write('<\/style>'); alert(mes_bi); break; } } //]]> </script>

o si alguien sabe alguno para hacer que solo entren en esa pagina las ip q yo ponga
gracias de antemano


Lol en este script tienes que introducir las variables del array manualmente? Parece que se aunque se puede modificar.

Tendrias que hacer un archivo de texto, con las ip's que quieres que entren. Haces una funcion que te devuelva la ip, la comparas con todo el archivo. Si esta index.php si no esta exit();.

Saludos.
Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?

copo

pues  es q no se nada de esto por esoyo lo hago buscando y preguntando no se si lo q me has puesto tu valdria
yo lo unico qu quero q a una web q tengo entren solo las ip q ponga yo
gracias por contestar

m0rf

Cita de: copo en 24 Abril 2012, 21:36 PM
pues  es q no se nada de esto por esoyo lo hago buscando y preguntando no se si lo q me has puesto tu valdria
yo lo unico qu quero q a una web q tengo entren solo las ip q ponga yo
gracias por contestar

Que quieres que te lo programe?

Hombre es un codigo muy corto, yo te aconsejo que si quieres aprender lo hagas tu de 0.

Saludos.
Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?

copo

#5
no quiero q me lo hagas
con que me orientes me vale
a ver morf encontre esto por ahi
pones q se puede hace al reves osea lo q yo quiero me puedes ayudar a hacerlo?


dijo:
<?php $ip = $_SERVER['REMOTE_ADDR'];?>


Luego pondremos dentro de un vector (array) las direcciones que queremos bloquear:


$ips_baneadas = array('10.0.0.1','192.0.0.1');
$contador = count($ips_baneadas);



Ahora comprobaremos mediante un bucle si el IP del usuario está dentro del array de IP's baneadas:


for ($i=0; $i<$contador; $i++) {
if($ip == $ips_baneadas[$i]) { die("Tu Ip no esta permitida . $ip" ; } } ?>



Otros usos para este script: también podemos usar este script si sólo queremos que un determinado usuario con un cierto IP acceda a una página concreta.

m0rf

Citarhola a ver si alguien me puede ayudar busco un script para que solo tengan acceso a mi web las ip q yo ponga

Si quieres que solo puedan acceder las ip's que tu quieras, las puedes guardar en un archivo .txt en el mismo directorio proporcionarle permisos solo de lectura por seguridad. Después la lista de ip's la modificas directamente dándote permisos y después quitando-los en el ftp o en tu propio ordenador si eres el host.

Tendrías que hacer

char ips_correctas[];

read_ipfile(ip.txt,$ips_correctas);


read_ipfile tiene que extraer las ip's de el archivo ip.txt y copiarlas al array ips_correctas.

Después tienes que obtener la ip con:

$ip = $_SERVER['REMOTE_ADDR'];

En este caso no tendrían mucha utilidad pero también existen:

$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
$ip=$_SERVER['HTTP_CLIENT_IP'];


Estos dos por lo que he visto se utilizan para saber la ip si esta detrás de un proxy, si algunos de tu lista utilizan proxy quizás te interese. Pero también he visto que es bastante falsificable el x-forwarded-for por lo tanto yo no lo tendría mucho en cuenta. Sobre client-ip no tengo mucha información ahora me informare de cual es su función.

Bueno después de que obtengas la ip con el primer método o como prefieras, tienes que comparar todas las posiciones de $ips_correctas con la variable $ip. Si cuando las comparas hay una igual, continuas hacia la pagina sino o haces exit() o un else hacia una pagina alertando de que esa ip no esta permitida. En esta pagina no tendrías que poner ese código php para que funcionara sin problemas.

Después tendrás que adaptar el código para no tener que copiarlo pagina a pagina. Eso ya depende si es una pagina pequeña y puedes copiarlo en las paginas sin problemas o lo incluyes en el código php que carga el contenido para que realize la acción siempre en vez de tener que copiar el código cada vez que creas una nueva pagina.

Ya me diras como te va.
Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?