Busindre » Blog Archive » Instalar ProxyWeb (Http / Https / Ftp) usando "Php Tunneling".

Instalar ProxyWeb (Http / Https / Ftp) usando "Php Tunneling".

June 25th, 2008 by Busindre

Php tunneling es una forma de ofrecer servicios proxy (http / https / ftp) por medio de ficheros escritos en lenguaje Php, lógicamente están más limitados que los proxyweb tipo Squid. Estos ficheros php junto con un servidor web, como puede ser Apache, otorgan al usuario la funcionalidad de poder navegar por Internet de forma anónima. El archivo/s php alojado en un determinado servidor hace de intermediario entre el usuario y una web cualquiera que se quiera visionar, creando lo que se llama un túnel http por medio de php. Escucha las peticiones (Urls) del usuario, mediante funciones php conecta a esa URL solicitada y le devuelve al usuario el código html generado como si hubiera sido el mismo el que visitase la web. De esta forma los datos encontrados en los logs de la web visitada pertenecerán al servidor que alberga dicho proxy php y no los del usuario.

A parte de funcionalidades de anonimato, este tipo de proxys se usan también para saltarse las conocidas censuras de navegación que aplican determinados países, como puede ser el caso de China, también podemos usar este tipo de proxys para mejorar la seguridad de nuestro blog, posibilitando el uso de un determinado proxy para entrar en la sección de administración protegida por IP (.htaccess), muy útil para los administradores que tienen direccionamiento dinámico. Otro uso más curioso y rebuscado podría ser el siguiente, en la popular comunidad wiffi "Fon", permiten a los miembros de la comunidad que comparten Internet mediante las Foneras, mostrar un determinado enlace a los usuarios que quieran conectarse a ese punto de acceso wireless, pudiendo ser visionado sin la necesidad de pagar o loguearse como usuario fon. De usar como enlace una dirección a un php proxy, el usuario podrá usar la conexión wiffi de fon para navegar por Internet por medio del proxy sin necesidad de loguearse o pagar, todo depende del administrador del punto de acceso Fon. Ya hemos visto en que consiste y alguno de sus usos prácticos, veamos como de fácil es instalar un proxy php en nuestro sitio web, para este caso usaremos surrogafier pero hay muchos disponibles.

Descargar: http://bcable.net/archive.php?surrogafier-1.0-rc3.php

Instalación: Colocar el fichero Php (Solo es uno) en un servidor (Apache, IIS, Cherokee,...), lógicamente para que funcione necesita el modulo php activado en la configuración del servidor. Con tener accesible el documento php y visitarlo podremos empezar a hacer uso de sus funciones. Para configurarlo a nuestro gusto debemos editar el mismo fichero surrogafier-*.php con las opciones que a continuación comentaremos. El fichero php está escrito con el editor de textos "vim", por lo que de visualizarlo en este editor o en sus derivados, observaremos una mejor estructuración del código mediante el uso de pliegues.

CONFIGURAR

(valor) -> Valor usado por defecto.

Opciones Básicas:

DEFAULT_SIMPLE (false) Si queremos que la página del proxy aparezca en modo simple (Sin opciones avanzadas), pero da opción a activar el modo avanzado

FORCE_SIMPLE (false) Si queremos que la página del proxy aparezca en modo simple (Sin opciones avanzadas) y SIN opcion a activar el modo avanzado.

SIMPLE_MODE_URLWIDTH (300px) Longitud de la caja de texto URL perteneciente al modo simple (Atributo CSS "width").

DEFAULT_TUNNEL_PIP (vacío) Valor por defecto del tunel http.

DEFAULT_TUNNEL_PPORT (vacío) Valor por defecto del puerto del tunel.

DEFAULT_URL_FORM (vacío) Valor por defecto de "Persistent URL" checkbox.

DEFAULT_REMOVE_COOKIES (false) Valor por defecto de la opción "Remove Cookies" checkbox.

DEFAULT_REMOVE_REFERER (false) Valor por defecto de la opción "Remove Referer Field" checkbox.

DEFAULT_REMOVE_SCRIPTS (false) Valor por defecto para la opción "Remove Scripts" checkbox.

DEFAULT_REMOVE_OBJECTS (false) Valor por defecto para la opción "Remove Objects" checkbox.

DEFAULT_ENCRYPT_URLS (false) Valor por defecto para la opción "Encrypt URLs" checkbox.

DEFAULT_ENCRYPT_COOKS (false) Valor por defecto para la opción "Encrypt Cookies" checkbox.

blocked_addresses Formatos para bloquear ciertas direcciones / Redes / IPs:

1.2.3.4 - Dirección ip a bloquear.
1.0.0.0/16 - Subred a bloquear.
1.0/16 - Subred a bloquear.
1/8 - Subred a bloquear.
php.net - Dominio a bloquear.

Direcciones bloqueadas por defecto: '10/8' , '172/8' , '192.168/16' , '127/8' , '169.254/16'

Opciones Avanzadas:

MAXIMUM_URL_LENGTH (500) El tamaño máximo permitido para las URL.

TIME_LIMIT (10 segundos) Límite máximo para esperar una respuesta de la página.

DNS_CACHE_EXPIRE (10 minutos) Tiempo máximo en minutos que un DNS puede estar guardada en memoria cache.

GZIP_PROXY_USER (false) Uso de gzip (Si es posible) para la conexión entre el proxy y el usuario.

GZIP_PROXY_SERVER (false) Uso de gzip (Si es posible) para la conexión entre el proxy y el Destino.

PROTO (Indefinido) Protocolos permitidos, descomente esta linea si quiere añadir bajo que protocolos puede funcionar.

NOTA: Se pueden encadenar dos servidores proxy surrogafier como vemos en el screen del final del post, incluso usando otro tercer proxy configurado en las opciones del navegador, esto nos permite dar tres saltos antes de alcanzar un determinada sitio web. El uso de proxys web, ya sean mediante php o el método que sea, nunca aportan como es lógico un 100% de seguridad para el anonimato, la mayoría de servidores guardan logs que pueden ser solicitados por las autoridades, por lo que hay que tener cuidado de para que se usan. Tampoco son de fiar los servidores proxy a la hora de usarlo para loguearnos y administrar algún sitio, no sabemos si el proxy se dedica a hacer de intermediario únicamente o ademas captura cierto tipo de información que le resulte de interés (Contraseñas, usuarios, DNIs, datos personales, direcciones de correo,...), por norma no se deberían considerar fiables al no ser que el proxy sea de nuestra propiedad y este bajo nuestra administración.

Screenshot: http://www.busindre.com/archivos/proxy_doble.png
Servicios on-line similares: http://proxy.org/
Otros programas php similares (GPL): http://sourceforge.net/projects/poxy/

Posted in Linux |

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.