Pregunta

Por razones que no voy a entrar, quiero prohibición de toda una empresa de acceder a mi sitio web.Comprobación del nombre de host remoto en php usando gethostbyaddr() funciona, pero esto ralentiza la carga de la página demasiado.Las grandes organizaciones (por ejemplo.hp.com o microsoft.com) a menudo tienen bloques de direcciones IP.Existe de todos modos puedo obtener la lista completa, o estoy atascado con la lenta inversa de DNS lookup?Si es así, puedo acelerarlo?

Editar:Bueno, ahora sé que puedo utilizar el .archivo htaccess para la prohibición de un rango.Ahora, ¿cómo puedo averiguar lo que debería ser para una organización?

¿Fue útil?

Solución

Acerca de cómo un .htaccess:

Deny from x.x.x.x

si usted necesita negar un rango de decir:192.168.0.x entonces se puede utilizar

Deny from 192.168.0

y lo mismo se aplica para los nombres de host:

Deny from sub.domain.tld

o si quieres una solución de PHP

$ips = array('1.1.1.1', '2.2.2.2', '3.3.3.3');
if(in_array($_SERVER['REMOTE_ADDR'])){die();}

Para obtener más información sobre el método de htaccess este página.

Ahora para determinar el intervalo que va a ser duro, la mayoría de las empresas (a menos que sean grandes corperate) va a tener una IP dinámica, como tú y yo.
Este es un problema que he tenido que lidiar con antes y lo mejor es prohibir el nombre de host o la totalidad de la gama, por ejemplo si están en 192.168.0.123, a continuación, la prohibición de 192.168.0.123, por desgracia, va a llegar un par de personas inocentes con cualquiera de los métodos.

Otros consejos

Si usted está practicando seguros de alojamiento web, entonces usted tiene un firewall.El uso de la misma.

Las grandes empresas tienen bloques de direcciones IP, pero incluso las empresas más pequeñas suelen cambiar su IP.Así que hay una manera fácil de hacer esto sin reducir su rendimiento:

Cada mes hacer una búsqueda inversa en todas las IPs en su registro y, a continuación, poner todas las IPs utilizado por esta empresa en tu firewall lo niegan.

Después de un rato yo voy a empezar a ver si tienen direcciones dinámicas o no.Si lo hacen, entonces usted puede tener que hacer búsquedas inversas para cada intento de conexión, pero a menos que sean una pequeña empresa, usted no debería tener que preocuparse de ello.

Continuar el uso de gethostbyaddr(), pero detrás de un caché.Usted sólo debe tener para resolver de una vez por dirección IP y, a continuación, no sería un problema de rendimiento importante.Si lo desea, prepare el caché de tu servidor de registros con el fin de regresar a los usuarios ni siquiera se golpeó el tiempo de desaceleración.

Si tu objetivo al hacer esto, es hacer un poco incómodo para las personas de una empresa para acceder a su sitio web, siga los consejos anteriores.Pero usted no será capaz de asegurarse de que está bloqueando todos los accesos porque siempre se puede ir a través de un proxy.Y si es accesible para el resto del público, usted no tendrá que preocuparse archive.org, motor de búsqueda de escondites, etc.

Probablemente no sea la respuesta que buscas, pero es preciso.

Echa un vistazo a .htaccess si estás usando apache: .htaccess tutorial

Primero la búsqueda de la empresa en whois.net.Si sabes que es solo un dominio, hacer una búsqueda de whois.De lo contrario, la búsqueda de dominios que poseen por palabra clave.

Usted puede encontrar los principales rangos de direcciones IP asignados a la empresa a través de las consultas whois, y luego construir su regla de denegación(s) en consecuencia.

WikiScanner permite la búsqueda de una empresa u otra organización, y a continuación la lista de los rangos de direcciones IP pertenecientes a ellos.Solo como ejemplo, aquí está todo el Las direcciones IP pertenecientes a Google, al menos según WikiScanner.

De acuerdo a HowStuffWorks, utilizan algo llamado "IP2Location".

¿Tiene usted acceso a la actual configuración de servidor?Si es así dependiendo del servidor en el que podría hacerlo en la configuración.

Ver este hilo para alguna información que pueda ser útil.

http://en.wikipedia.org/wiki/Rwhois telnet rwhois.arin.net 4321

Este se utiliza para trabajar.

La carga no debe ser puesto en el servidor web, se debe poner en el firewall.

Tenga en cuenta que el uso de las técnicas anteriores nunca será posible para prohibir totalmente el específico de la empresa de acceder a su sitio web.Todavía será posible la utilización de servidores proxy o buscar en su sitio de la casa.

Si usted no desea controlar quién tiene acceso, sólo se debe permitir autenticado y autorizado de los usuarios a acceder a su sitio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top