Redireccionar puertos en Linux usando SSH

En algunas ocasiones necesitamos acceder a algún servicio o aplicación que usa un puerto diferente al que por defecto tenemos permitido.

Imaginemos que estamos usando en nuestro trabajo nuestro portatil con Ubuntu y queremos actualizar repositorios o usar facebook, messenguer, etc … Estos servicios usan un puerto determinado que en principio si no podemos usar directamente se debe a la existencia en la red de un firewall que esta capando un puerto determiando.

Pues bien utilizando SSH , nos enseñana como podremos crear un tunel sobre dicho servidor externo y evitar el firewall, usando nuestra máquina como servidor local y redireccionando todas las salidas sobre el puerto especificado, es bastante sencillo y nos saltaremos el cortafuegos gustosamente:

El ejemplo que vamos a utilizar es el saltarnos un firewall, en nuestra red que capa el puerto que utiliza ubuntu para actualizar unos repositorios en un host concreeto.

Imaginemos que deseaba agregar el repositorio UbuntuGis para instalar algunos paquetes del mismo (Grass y Quantum GIS entre otros), pero al añadirlo:

sudo add-apt-repository ppa:ubuntugis/ppa

Si hay un firewal en la red que capa dicho puerto obtendriamos el siguiente error::
Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –secret-keyring /etc/apt/secring.gpg –trustdb-name /etc/apt/trustdb.gpg –keyring /etc/apt/trusted.gpg –primary-keyring /etc/apt/trusted.gpg –keyserver keyserver.ubuntu.com –recv 6B827C12C2D425E227EDCA75089EBE08314DF160
gpg: requesting key 314DF160 from hkp server keyserver.ubuntu.com
gpgkeys: HTTP fetch error 7: couldn’t connect to host
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –secret-keyring /etc/apt/secring.gpg –trustdb-name /etc/apt/trustdb.gpg –keyring /etc/apt/trusted.gpg –primary-keyring /etc/apt/trusted.gpg –keyserver keyserver.ubuntu.com –recv 6B827C12C2D425E227EDCA75089EBE08314DF160gpg: requesting key 314DF160 from hkp server keyserver.ubuntu.comgpgkeys: HTTP fetch error 7: couldn’t connect to hostgpg: no valid OpenPGP data found.gpg: Total number processed: 0

* Está capando el puerto 11371, el que usa el servidor de claves en la dirección: keyserver.ubuntu.com

Ahora bien para solucionar esto mediante un tunel con SSH hariamos lo siguiente:

1. Editamos el fichero /etc/hosts (como superusuario), en concreto la siguiente línea:
127.0.0.1 localhost keyserver.ubuntu.com

2. Guardamos y teniendo en cuenta que disponemos un servidor externo con un servidor SSH y sin restricciones en cuanto a firewall se refiere, lanzamos SSH con un tunel sobre el puerto 11371 local y redireccionando la salida sobre la dirección especificada (keyserver.ubuntu.com) y el mismo puerto. Tan sencillo como la siguiente línea (en este caso estoy usando el servidor de mi universidad, y nombre_usuario el nombre de mi usuario en el servidor ts.uco.es):

ssh nombre_usuario@ts.uco.es -L 11371:keyserver.ubuntu.com:11371

3. Nos autenticamos en el servidor y ya estamos preparados para agregar el repositorio, esta vez satisfactoriamente:

      blogofsysadmins.com@asubuntu:~$ sudo add-apt-repository ppa:ubuntugis/ppa
      [sudo] password for ahornero:
      Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –secret
      keyring /etc/apt/secring.gpg –trustdb-name /etc/apt/trustdb.gpg –keyring
      /etc/apt/trusted.gpg –primary-keyring /etc/apt/trusted.gpg –keyserver
      keyserver.ubuntu.com –recv
      6B827C12C2D425E227EDCA75089EBE08314DF160
      gpg: requesting key 314DF160 from hkp server keyserver.ubuntu.com
      gpg: key 314DF160: “Launchpad ubuntugis-stable” not changed
      gpg: Total number processed: 1
      gpg:              unchanged: 1

¡Y listo!, ya tenemos una bonita forma de evitar un cortafuegos para un uso concreto, en este caso agregar un repositorio.

Linux+ de Julio: Metasploitable

  • ¡Metasploitable: Entorno de entrenamiento de Seguridad Informática! – 7/2010 (67)
    Metasploitable 07/2010

Temas a tratar…

  • El kernel Linux a fondo

    El núcleo o kernel Linux es el elemento fundamental de todo sistema operativo GNU/Linux, responsable de la correcta comunicación entre el hardware y el software de la computadora. Su desarrollo comenzó en 1991 como un proyecto personal a manos de Linus Torvalds, sin embargo, actualmente nvuelve a miles de usuarios y programadores de todo el mundo.


    – Marcos Blanco Galán

  • Plataforma OSOR: balanceo de máquinas virtuales en alta disponibilidad

    En el artículo “Plataforma OSOR: San de alta disponibilidad con Linux” 1 se presentó por primera vez la arquitectura de la plataforma Osor. En este rtículo se mostrará la segunda parte de la arquitectura, un módulo de cómputo de alta disponibilidad, basado en máquinas virtuales, e implantado mediante tecnologías de software libre, que pretende servir de ejemplo para arquitecturas similares.


    – Francisco Olcina Grande

  • Ojos que no ven, Linux que no padece

  • EOL: Generación de exámenes online autocorregidos

    Uno de los momentos que nos causan más pereza a los profesores y maestros suele ser el momento de corregir los exámenes que hemos pasado a uestros alumnos. Sería muy interesante disponer de alguna herramienta web que, a base de formularios, recogiera las respuestas de los niños, las corrigiera de modo automático y notificara los resultados al profesor.


    – Dolores Nogueras, Antonio Gómez

  • Linux SmartCheap: Construcción desde la nada

    Tener un sistema operativo (OS, Operating System) en un dispositivo pequeño puede ser beneficioso. Como siempre en cualquier solución de ingeniería la decisión es de compromiso: depende de los recursos que gaste versus los beneficios que aporte.


    – Lino García Morales

  • Metasploitable: Entorno de entrenamiento de Seguridad Informática

    Cuando se piensa en qué sistema utilizar para comprobar su seguridad informática, poca gente tiene conocimiento sobre alguno que nos permita hacerlo de una forma ética y legal. Aquí es donde puede entrar a escena Metasploitable, la cual es una imagen VMware de un servidor Ubuntu 8.04 con diferentes paquetes de servicios vulnerables instalados.


    – Daniel García Gutiérrez

El Archivo Zip de la muerte – 42.zip

42.zip es un archivo zip de 42.374 bytes, contiene 16 archivos zips que a su vez contienen otros 16 zips y así hasta 6 veces. Los 16 últimos zips contienen un archivo de 4,3 Gb cada uno. Si descomprimimos el archivo 42.zip de 42.374 bytes obtendriamos 4.5 Pb de datos descomprimidos.

  • 16 x 4294967295 = 68.719.476.720 (68GB)
  • 16 x 68719476720 = 1.099.511.627.520 (1TB)
  • 16 x 1099511627520 = 17.592.186.040.320 (17TB)
  • 16 x 17592186040320 = 281.474.976.645.120 (281TB)
  • 16 x 281474976645120 = 4.503.599.626.321.920 (4,5PB)

Este tipo de archivos se denominan Zips de la muerte o Zips bomba y suelen usarse como herramienta para ataques DoS.

PD:  hay que ver como una cosa tan pequeña te puede joder el servidor enterito 😀 , así que pequeños sysadmins tener muy definidas las reglas de cuotas de disco con sus respectivas alertas a vuestro email 😀
raiola manda y no el panda

Funciones a deshabilitar en php.ini – Tips para securizar php

Y es que, cada vez se ven mas destrozos a causa de las webs mal hechas (o poco actualizadas) en php . Que si postnuke, que si phpnuke, phpbb, mybb y un larguisimo etc. Ya que esto es un dolor de cabeza para cualquier sysadmin, algo a tener en cuenta es el deshabilitar ciertas funciones de php en el php.ini, y el que las quiera.. que las habilite en el .htaccess de su virtualhost bajo su responsabilidad, no? Empezamos:

Editamos fichero de configuración de PHP php.ini

#vi /etc/php.ini

buscamos la linea que contiene disable_functions. Posiblemente tenga un ; delante, que sirve para inutilizarla. Eliminamos el ; y dejamos la linea de esta forma:

disable_functions = system, exec, popen, passthru, shell_exec, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate

Asi, nos cargamos unas cuantas funciones peligrosas que a mas de uno le han dejado sin dormir.

Por otro lado, es de esperar el estar atentos a cosas como el safe_mode, allow_url_fopen y demas… pero creo que eso ya lo puse en otro post anterior 🙂

Usa tu pendrive como llave de contacto para tu ordenador con Predator

Cuando quitas la llave de un coche, éste se bloquea. Predator replica el mismo comportamiento con una memoria USB: cuando la desconectas, la pantalla se vuelve negra y teclado y ratón dejan de responder. Al enchufarla de nuevo, todo vuelve a la normalidad.

Opciones avanzadas de seguridad con Predator:

protect several computers with a single flash driveprotect a computer with several flash drives
Protect several computers with a single flash driveProtect a computer with several flash drives

Para conseguir esta proeza, Predator requiere ejecutarse en segundo plano. Desde las preferencias puedes cambiar la contraseña de emergencia (por si pierdes la llave USB) y, con elbotón Create Key, habilitar la llave en la unidad extraíble que desees.

Predator va cambiando la llave a intervalos regulares para evitar que otra persona acceda tras haber copiado el fichero predator.lock. ¿Has perdido el pendrive? No hay problema: pulsa Intro tres veces e introduce la contraseña de emergencia.

Como otros sistemas parecidos, Predator no es infalible, especialmente si un usuario descubre la contraseña de emergencia, pero es fácil de configurar y bastante efectivo. Por fin dispondrás de una auténtica llave de contacto para tu ordenador.

Nota sobre Predator:

No extraigas la llave USB si el icono de Predator está rojo: significa que está cambiando la llave
En caso de emergencia, pulsa Intro tres veces e introduce la contraseña
Si has perdido la llave y la contraseña, ejecuta C:\Archivos de programa\Predator\predator.exe» /D desde MS-DOS en modo seguro

Cambios recientes en Predator:

  • Notificaciones por correo electrónico y SMS
  • Traducido a varios idiomas (español, italiano, ruso y chino)
  • Compatible con UAC bajo Vista y 7
  • Cambios en la interfaz gráfica
  • Correcciones

Para utilizar Predator necesitas:

  • Sistema operativo: WinXP/2003/Vista/7Compatible con Windows 7

Requisitos mínimos:

Download