proxy

  • El objetivo de utilizar un servidor Nginx como front-end a Grafana es implementar soporte para HTTP/S.

  • Tal como mencioné en el artículo ¿Cuáles son las principales diferencias entre los sistemas GNU/Linux y OpenBSD?, OpenBSD utiliza CVS como sistema de control de versiones. Específicamente utiliza CVS anónimo para mantener actualizada una copia local del source tree de OpenBSD, respecto a los cambios hechos en los fuentes actuales de OpenBSD. Este mecanismo es un sistema de control de versiones "tolerante" en el sentido que respeta los cambios realizados en una copia local, y hace el "mejor esfuerzo" para actualizar el source tree completo, más que dejar una lista de problemas a resolver antes de continuar (tal como ocurre con otros sistemas de control de versiones).

  • A medida que pasan los años, Internet deja de ser una red libre para convertirse, cada vez más rápidamente, en un lugar controlado, censurado, filtrado y bloqueado. Tal vez impensado hace algunos años, hoy es común tolerar casos de censura burda y cruda por parte de gobiernos, corporaciones (o en el trabajo/oficina/escuela) y proveedores de servicios de Internet (ISPs), tal como el caso del bloqueo a Twitter por parte del gobierno turco para cubrir un escándalo de corrupción.

    Por esta razón, los usuarios con ciertos conocimientos de redes y sistemas debemos contar con todas las técnicas y herramientas que nos permitan escapar del control, censura, filtrado y shaping de tráfico. Para cuidar nuestra libertad, que es lo más importante que tiene Internet según mi parecer.

    En esta ocasión me complace presentarles este artículo que explica detalladamente cómo escaparle a la censura de una red corporativa y un proxy HTTP restrictivo. Todo nació a causa de que el proxy HTTP de mi red corporativa no me permite visitar alexa.com (el sitio de estadísticas de accesos a sitios Web propiedad de Amazon). Tal vez por parecer una URL de página triple equis, o el nombre artístico de un travesti (?). La cosa es que no puedo entrar a alexa.com. Challenge accepted.

  • Este artículo explica brevemente cómo configurar el proxy en un servidor Ubuntu Server 12.04. Dentro de una red corporativa la configuración del proxy es necesaria, por ejemplo, para actualizar el sistema desde el gestor de paquetes apt.

  • A veces necesitamos acceder a alguno de nuestros servidores para realizar tareas de mantenimiento y no podemos usar SSH en el puerto estándar 22 debido a que estamos dentro de una red corporativa detrás de un firewall restrictivo. En este caso es posible crear un túnel SSH a través de un servidor proxy HTTP. Dependiendo del nivel de seguridad del firewall se podrá acceder por SSH por cualquier puerto o sólo por el puerto 443 (HTTPS).

  • En estos últimos artículos expliqué cómo montar una caché local de paquetes implementada a través de un proxy con Nginx, tanto para Debian como para CentOS. Para mejorar el esquema se me ocurrió balancear la carga de red entre varios mirrors. De esta forma, nuestro proxy repartirá los accesos entre varios mirrors, en lugar de utilizar un único mirror.

    El balanceo de carga es un problema común en la actualidad, especialmente cuando se manejan cientos o miles de solicitudes/accesos desde varios clientes al mismo tiempo. Este artículo apunta a demostrar cómo es posible implementar un balanceador de carga de manera extremadamente simple utilizando los módulos de Nginx ngx_http_upstream_module y ngx_http_proxy_module.

  • Apache Tomcat (o simplemente Tomcat, anteriormente conocido como Jakarta Tomcat) es un servidor web y servlet container Open Source desarrollado por la fundación Apache (Apache Software Foundation). Tomcat implementa las especificaciones de Java Servlet y JavaServer Pages (JSP) de Sun Microsystems, y provee un entorno de servidor Web HTTP donde el código Java pueda ejecutar.

    Debido a que el servidor Tomcat no posee soporte para HTTPS, el objetivo de este artículo es demostrar cómo implementar un proxy reverso (implementado utilizando Apache) para dar soporte HTTPS a Tomcat. La comunicación entre Apache y Tomcat se realiza a través del conector "mod_jk", el cual se instala como un módulo de Apache.

  • Este artículo explica cómo montar un proxy, o Web cache, con Squid en Debian y derivados. La instalación es extremadamente sencilla e incluye una configuración mínima que implementa autenticación basic, para que nuestro proxy sólo pueda ser utilizado por usuarios identificados con nombre de usuario y contraseña.

  • Thinger.io es una infraestructura en la nube escalable que permite conectar millones de dispositivos conectados a Internet (Internet of Things). Esto permite controlarlos a través de una consola de administración simple de utilizar, o integrarlos en la lógica de nuestro negocio mediante una API REST.

    A su vez, Thinger.io es un proyecto open source que permite instalar el servidor en nuestra propia nube y utilizar las librerías (también open source) para conectar nuestros dispositivos. Thinger.io soporta todo tipo de dispositivos como Arduino, ESP8266, Raspberry Pi, Intel Edison y muchos otros.

    Veamos entonces cómo montar nuestro propio servidor Thinger.io en un servidor corriendo Debian Stretch (9).

  • En redes corporativas es muy común que el acceso a Internet sea a través de un proxy HTTP. En OpenBSD, la configuración del proxy es exactamente igual a la de los sistemas GNU/Linux, sólo basta con configurar las variables de entorno http_proxy y https_proxy en el perfil de ksh.

  • Si estamos en una red corporativa y necesitamos acceder a los repositorios de nuestra distribución favorita (Red Hat, Fedora, CentOS) utilizando el manejador de paquetes yum, posiblemente debamos hacerlo a través de un proxy HTTP.

  • En el artículo anterior expliqué cómo montar una caché centralizada para paquetes de Debian implementando un proxy en Nginx. En este artículo voy a explicar cómo hacerlo para CentOS (utilizando el mismo servidor que cumple el rol de cache). La configuración de Nginx es casi idéntica, sólo que hay diferencias en la configuración de los clientes, al tratarse de un gestor de paquetes diferente.

  • En este breve artículo comparto una experiencia con un servidor Apache retornando "503 Service Unavailable":

  • Lamentablemente, el cliente letsencrypt-auto que se utiliza para generar certificados TLS de Let's Encrypt no está pensado para acceder a Internet a través un proxy HTTP/HTTPS. Entonces, ¿qué pasa si necesitamos emitir un certificado para uno de nuestros servidores, dentro una red corporativa, detrás de un proxy HTTP? No queda otra alternativa que realizar algunos cambios en el script (estas son las grandes ventajas de utilizar soluciones abiertas, se pueden modificar/adaptar a las necesidades de cada uno).

    Este artículo explica cómo modificar el script letsencrypt-auto para que funcione utilizando un proxy HTTP/HTTPS.

  • A veces es necesario no dejar rastros cuando accedemos a sistemas de terceros. Sea cual sea el motivo (supongamos que es por razones nobles) y si es un sistema sensible, queremos asegurarnos de quedar lo más ocultos posibles y no dejar huellas como direcciones IP, footprints de encabezados HTTP, etc.

    Para esto siempre es conveniente utilizar un servidor proxy como un intermediario que accede al servidor objetivo por nosotros y luego nos devuelve los resultados. De esta forma, si el servidor objetivo loguea nuestra actividad en el sistema, quien quedará "escrachado" en los logs será el proxy en lugar de nosotros. Así quedamos cubiertos en caso de un eventual análisis forense en el servidor objetivo.

  • Estaba leyendo este interesante artículo que trata la ciberguerra que se ha desatado entre los defensores y detractores de Wikileaks (yo soy un defensor de Wikileaks), y por esas cosas de Internet terminé en cualquier otra cosa.
    Estaba husmeando los posts en twitter del nefasto th3j35t3r, un payaso que se dedica a provocar ataques DDoS contra diferentes sitios, la mayoría musulmanes, y que además se encargó de efectuar estos ataques contra Wikileaks ("for attempting to endager the lives of our troops, 'other assets' & foreign relatios").