AVISO: Es post está basado en mi opinión personal, no intento vender nada, y no estoy relacionado con ninguno de los dos proyectos de ninguna manera.
Hace tiempo que no público nada y es que he estado algo ocupado cambiando el blog de servidor y probando algunas cosas como OSSEC de las cuales os hablaré en futuros post.
Hoy os traigo un post que combina dos softwares que hace tiempo que me gustan pero que realmente no había tenido muchas oportunidades de darles un uso fuera de simples test. Estos son I2P y Retroshare.
Ninguno de los dos es tan conocido como Tor u otras alternativas que hemos podido ver incluso en TV así que por desgracia la cantidad de ayuda que hay en internet es bastante limitada. El objetivo de este post es, precisamente, intentar ayudar a darlos a conocer un poco más.
Pero, ¿Que ventajas tiene complicarnos con todo esto?
¿A nivel funcional? Ninguna. Al contrario, vamos a obtener servicios que ya utilizamos a diario pero que probablemente sean más lentos y tengan mayores downtime.
Lo que realmente ganamos es en privacidad. I2P provee la primera capa de anonimato ayudándonos a ocultar nuestra IP y Retroshare nos ofrece diversos servicios descentralizados.
Lo que hace a Retroshare tan interesante es su modelo descentralizado en el que no existen servidores a los que conectarse para obtener los distintos servicios, en cambio, dichos servicios funcionan de forma segura entre los distintos nodos conectados entre si.
Para poder conectar dos nodos se debe realizar un intercambio de claves, al mas puro estilo GPG, con lo cual ambos usuarios permiten al otro conectarse a su nodo. Da igual que tu añadas a alguien, si la otra persona no te añade la conexión no existirá.
El principal problema de este método es que dentro de dichas claves va incluida nuestra IP pública la cual Retroshare necesita para poder saber donde esa nuestro nodo y poder llegar a él. Está fue la principal razón por la que deje de usar Retroshare, a pesar de estar basado en anillos de confianza no me acababa de convencer la idea de que me ip apareciese de esta manera.
En la versión 0.6 Retroshare incluye la posibilidad de correr nodos ocultos con integración en TOR e I2P, gracias a esto en lugar de utilizar nuestra IP se utilizan direcciones onion o i2p respectivamente.
Tengo que explicar también que si corremos el nodo de esta manera los nodos normales solamente llegaran a nosotros si tienen configurada una salida a las susodichas redes. Aún no he podido testear esto del todo por falta de nodos dentro y fuera de las mimas pero, con una red mínima de dos nodos, mi cliente normal no es capaz de ver el oculto y viceversa.
La idea entonces es tener diversos servicios (mensajería, chat, intercambio de archivos, etc) que no dependen de servidores centrales (nuestra información va directa al otro nodo) y que no revelen ni necesiten nuestra IP pública (uso de las direcciones I2P).
Como por suerte si que existe bastante información sobre como instalar ambos softwares me voy a saltar ese paso, únicamente si utilizas Debian 8 os recomiendo instalar Retroshare utilizando el paquete que tienen disponible en github o si os lo queréis compilar revisar en issues un ticket abierto por mi ya que las dependencias de la wiki están desactualizadas. Si intentas utilizar el repositorio os aparecerá un error de que hay una dependencia que no se cumple, también esta reportado y lo van a solucionar pero por el momento hace inviable este método para instalar Retroshare.
Una vez tengamos I2P funcionando y nuestro perfil creado en Retroshare pongámonos manos a la obra.
Comenzaremos configurando los túneles necesarios en I2P para que Retroshare ya tenga todo lo que necesita cuando configuremos el nodo oculto.
Para esto nos dirigiremos a nuestro router a la sección de «Túneles Locales», si tenéis I2P en local será: http://127.0.0.1:7657/i2ptunnelmgr
Aprovecho que los pasos, aunque algo escondidos, están muy bien explicados en Retroshare:
Asistente de túnel -> Cliente de túnel -> SOCKS 4/4a/5 -> introduzca un nombre -> deje ‘Outproxies’ vacío -> introduzca el puerto (¡memorice!) [puede que también quiera establecer la alcanzabilidad en 127.0.0.1] -> marque ‘Auto-iniciar’ -> ¡finalizado!
A no ser que queráis utilizar otro puerto tanto I2P como Retroshare traen por defecto configurado el 4447.
Este será el túnel que nos dará salida a la red de I2P y el resto de nodos, ahora vamos con el túnel para poder recibir entradas.
En la misma sección del túnel hacemos:
Asistente de túneles -> Servidor de túneles -> Estándar -> introduzca un nombre -> introduzca la dirección y puerto que su RS va a usar (vea arriba Dirección Local) -> marque ‘Auto-iniciar’ -> ¡finalizado!
Al igual que en el anterior caso el puerto que ambos programas usan por defecto es el mismo, 44321, así que si no queréis cambiarlo podemos dejarlo tal cual.
Una vez este túnel este iniciado, en «Túneles Locales», veremos que aparece una dirección base32 de i2p que será la que utilizaremos en nuestro nodo oculto.
Ahora nos vamos a Retroshare y en la primera ventana donde escogemos con que perfil conectarnos hacemos click en «Administrar perfiles y nodos» y nos aparece la siguiente ventana:
Seleccionaremos «Opciones avanzadas» y «Crear un nodo oculto» cuando nos aparezca.
Como veis nos pide que identifiquemos el nodo con un nombre y la dirección oculta que sera la que nos guardamos antes en I2P al crear el túnel de entrada.
Una vez dentro del nuevo nodo nos vamos a la sección de «Red» dentro de «Opciones»:
Aquí podemos ver como el nodo está efectivamente corriendo en modo oculto, en la pestaña de «Configuración de servicio oculto» tenemos más datos:
En la primera sección podemos ver que, en el caso de mi nodo, Retroshare tiene salida a la red I2P pero no a la red de TOR; hasta donde yo sé no habría ningún problema en tener cualquier tipo de nodo conectado a ambas redes, simplemente esto dará acceso a los nodos en dichas redes. En este caso queremos un nodo que solo funcione dentro de I2P así que nos llegaría con tener a I2P en verde.
En la siguiente sección nos encontramos con la configuración de entrada, como aún estoy haciendo pruebas he borrado la dirección de I2P de este nodo, si hacemos click en «Prueba» Retroshare intentará establecer una conexión a través de I2P contra nuestro nodo como si fuese otro cualquiera para ver que todo está bien, si hay luz verde como en la imagen, todo está perfecto.
Ahora solo queda intercambiar claves con vuestros amigos utilizando ahora vuestra dirección de I2P en lugar de la IP pública y empezar a disfrutar de Retroshare.
Como podéis ver en las imágenes el propio Retroshare os indica que pasos seguir para configurar todo, realmente no os he contado nada que no pudieseis haber encontrado vosotros mismos, pero me pareció que quizás está información está un poco escondida y para alguien que no sepa donde mirar (como fue mi caso) te puede llevar a algunos quebraderos de cabeza.
Espero os haya gustado y la gente se anime a utilizar más tanto I2P como Retroshare, ambos proyectos me parecen muy interesantes pero debido quizás a que pueden resultar un tanto complejos de utilizar no parecen tener mucha acogida por los usuarios. Esperemos que esto cambie y la gente se anime a utilizar este tipo de alternativas.
Me gustaría dejaros aquí mi clave del nodo de pruebas que tengo en I2P para que podáis probarlo pero precisamente hablando de privacidad no me termino de fiar de postearla aquí directamente, si alguno está interesado podéis dejarme un comentario e intercambiamos claves.
Saludos y gracias por vuestra visita.
estoy interesado en el programa, donde puedo encontrar una comunidad en español? ya q en el foro sourceforge de retroshare no es posible inscribirme; con el fin de hacerme con contactos y comprobar el programa en este aspecto. gracias de antemano por la info.
saludos
La verdad es que no te sabría indicar una comunicad de habla hispana como tal sobre retroshare sobre todo debido a su orientación a ser usado entre amigos que se conocen. De todas maneras en foros como forocoches tengo visto posts sobre gente interesada en intercambiar claves, en todo caso al ser sobre I2P te recomendaría entrar en el IRC del mismo al canal #latino-i2p donde puedes conocer gente y me consta que algunos usan retroshare también.
Espero te ayude y gracias por tu visita!
gracias a ti por responder. un saludo y suerte con tu pagina
Alguien me puede explicar de forma breve y sencilla el manejo de retroshare? Muchas gracias.