El intercambio de información en Internet se lleva a cabo en un modelo cliente-servidor. El cliente envía una solicitud (qué archivos necesita) y el servidor envía una respuesta (qué archivos necesita). Para una estrecha cooperación (comprensión completa) entre el cliente y el servidor, el cliente envía información adicional sobre sí mismo: la versión y el nombre del sistema operativo, la configuración del navegador (incluido su nombre y versión), etc.
Esta información es requerida por el servidor para saber qué página web proporcionar al cliente. Hay varias variantes de página web diferentes para diferentes configuraciones de navegador. Sin embargo, las páginas web generalmente no dependen del navegador, por lo que es muy posible ocultar esta información del servidor web.
Datos que el navegador envía al servidor web
- Nombre y versión del sistema operativo
- Nombre y versión del navegador
- Configuración del navegador (resolución de pantalla, profundidad de color, compatibilidad con java/javascript)
- Dirección IP del cliente
- Otra información
La parte más importante de dicha información y no requerida por el servidor web es la información sobre la dirección IP. De la IP, se puede obtener la siguiente información:
- País de origen de la PI
- La ciudad donde se originó la PI
- Nombre y correo electrónico del proveedor de servicios
- La dirección física del titular de la IP
Variables de entorno
El servidor puede acceder a la información enviada por el cliente al servidor como variables de entorno. Cada unidad de información es el valor de alguna variable. Si no se pasa alguna unidad de información, la variable correspondiente estará vacía (no se especifica el valor).
Las siguientes son algunas variables de entorno:
REMOTE_ADDR? La dirección IP del cliente
HTTP_VIA ? Si no está vacío, se utiliza un proxy. El valor es la dirección (o direcciones) del servidor proxy, esta variable es agregada por el propio servidor proxy si la usa.
HTTP_X_FORWARDED_FOR ? Si no está vacío, se utiliza un proxy. El valor es la dirección IP original del cliente (su IP), esta variable también es agregada por el servidor proxy si la usa.
HTTP_ACCEPT_LANGUAGE ? Qué idioma se utiliza en el navegador (qué idioma debe mostrarse en la página)
HTTP_USER_AGENT ? También se llama «agente de usuario». Para todos los navegadores, esto es Mozilla. Además, el nombre y la versión del navegador (por ejemplo, MSIE 5.5) y el sistema operativo (por ejemplo, Windows 10) también se mencionan aquí.
HTTP_HOST ? es el nombre del servidor Web
Además de las variables mencionadas anteriormente, hay muchas otras variables ambientales como DOCUMENT_ROOT, HTTP_ACCEPT_ENCODING, HTTP_CACHE_CONTROL, HTTP_CONNECTION, SERVER_ADDR, SERVER_SOFTWARE, SERVER_PROTOCOL y otras. El número de variables depende de la configuración del servidor y del cliente.
Los siguientes son ejemplos de valores de variable:
REMOTE_ADDR = 194.5.1.1
HTTP_ACCEPT_LANGUAGE = ru
HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 5.0; Windows XP)
HTTP_HOST = www.webserver.ru
HTTP_VIA = 194.5.1.1 (Calamar/2.4.ESTABLE7)
HTTP_X_FORWARDED_FOR = 194.5.5.5
Anonimato proxy en Internet
El anonimato en Internet está determinado por variables de entorno que están ocultas a los servidores web. Si no se utiliza un servidor proxy, las variables de entorno tendrán el siguiente aspecto:
REMOTE_ADDR = Su IP
HTTP_VIA = no especificado
HTTP_X_FORWARDED_FOR = no especificado
De acuerdo con cómo las variables de entorno son «ocultadas» por los servidores proxy, hay varios tipos de proxies.
Proxy transparente
Este proxy no oculta información sobre su dirección IP:
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = Su IP
La función del servidor proxy no es aumentar su anonimato en Internet. Su finalidad es monetizar la información, organizar el acceso compartido a Internet desde varios ordenadores, etc.
Proxies anónimos
Todos los servidores proxy, que ocultan la dirección IP del cliente de alguna manera, se denominan proxies anónimos.
Proxy anónimo simple
Este servidor proxy no oculta el hecho de que se utiliza un proxy, sino que reemplaza su IP por la suya propia:
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = proxy IP
Este proxy es el más utilizado entre otros servidores proxy anónimos.
Proxies distorsionados
Al igual que con cualquier servidor proxy anónimo simple, no oculta el hecho de que se utiliza un servidor proxy. Sin embargo, la dirección IP del cliente (su dirección IP) se reemplaza con otra IP (arbitraria, aleatoria):
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = dirección IP aleatoria
Otros artículos interesantes
Proxies de alto anonimato
Estos servidores proxy también se denominan «proxies de alto anonimato». A diferencia de otros tipos de servidores proxyanónimos, estos servidores proxy ocultan el hecho del uso del proxy:
REMOTE_ADDR = proxy IP
HTTP_VIA = no especificado
HTTP_X_FORWARDED_FOR = no especificado
Eso significa que el valor de la variable es el mismo que si no se usa el proxy, excepto por una cosa muy importante. Se utiliza una IP proxy en lugar de su dirección IP.
Resumen
Dependiendo del propósito, algunos proxies son transparentes y anónimos. Sin embargo, recuerde, al usar un servidor proxy solo oculta su IP del servidor web, ¡pero se puede acceder a otra información (sobre la configuración del navegador)!