Ciboulette

De HackLab
Saltar a: navegación, buscar
Error al crear miniatura: sh: convert: command not found
Logo de Ciboulette

Ciboulette versión 0.3.7.2

Es una red social 100% libre, entre pares, descentralizada y distribuida

Enlaces con ciboulette usando Feed y XMPP

Con un simple blog y lectores de Noticias (RSS, Atom, RDF) se crea una red social libre en la qué cada persona publica novedades directamente desde su computadora. Y es accesible desde cualquier computadora con TOR gracias a sus servicios ocultos.

¿por qué 100% libre?

Esta hecho únicamente con software libre. Y es una de las pocas redes sociales qué respetan los conceptos del software libre en su uso

  • La libertad de ejecutar el programa para cualquier propósito (libertad 0).
  • La libertad de estudiar cómo funciona el programa, y cambiarlo para qué haga lo qué usted quiera (libertad 1). El acceso al código fuente es una condición necesaria para ello.
  • La libertad de redistribuir copias para ayudar a su prójimo (libertad 2).
  • La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3). Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.

Muchos servicios de redes sociales moderan a sus usuarios o pretenden un fin especifico para su red, violando nuestra libertad 0

¿Que es descentralizada?

Centralizado, Federado y Distribuido

Que no posee un centro. por qué no hay un servidor al qué los usuarios tengan qué acceder. Los pares iguales. Gracias a TOR y la publicación de servicio ocultos dentro de la red: los datos pasan entre nodos (pares iguales), de este modo todos los nodos de Ciboulette se ven entre si.

¿Que es distribuida?

Es una red totalmente distribuida por no tener un centro, ni muchos de ellos. A la vez los datos pueden ser republicados fácilmente en cualquiera de los otros nodos.

¿Que es entre pares?

Que no existen servidores centrales. Los datos van de una computadora a otro directamente, pasando entre pares iguales.



Instalación en GNU/Linux

Abrí una terminal (por lo general están en el menú en la categoría "Accesorios") y pega este código:

cd /tmp
wget https://raw.github.com/b4zz4/Ciboulette/master/ciboulette
bash ciboulette -u
La instalación te va a pedir la clave de administrador y luego una clave para tu cuenta de chat.

¡Sí no tenes GNU/Linux es momento de que lo pruebes!

Nota: Sí esta instalación falla siempre podes seguir la receta de ciboulette

¿Como usarla?

menú del sistema

Busca el programa en tu menú de inicio

menú del sistema

Al correr la aplicación podrás publicar, cambiar tu avatar, modificar tu perfil y más

pantalla de novedades

En la pagina local de tu ciboulette podes ver tus publicaciones y las novedades de tus amig@s.

Publicar un artículo

Menú para publicar
Para editar en Ciboulette se puede usar markdown, un modo de hacer que nuestros artículos tengan estilo lindos sin la necesidad de usar HTML o editores complejos.

Chatear con Ciboulette

Para chatear con usamos el protocolo XMPP soportado por muchos clientes de chat.

conversación en ciboulette usando Pidgin
Asi se ve el chat y la transferencia de archivos en Pidgin Siempre hay que usar el complemento OTR (Fuera de grabación) esto asegura qué nuestra conversación no es leída por otras personas. Si no lo tenes instalado sudo apt-get install pidgin pidgin-otr

Configurar el chat

Configurar el Pidgin

Hay qué poner en dominio la dirección de tu Ciboulette, nuestro nombre de usuario y la clave qué pusimos durante la instalación.

Desde la terminal

Este es un método muy simple para usar Ciboulette podes acceder a tu terminal desde el menú de inicio, por lo general esta en la sección Accesorios.

cat ~/.ciboulette/hostname

Es el dirección de tu nodo (pasala a tus amigxs)

ciboulette -n http://3orzmu3bziaoivpg.onion

Agregar una dirección de una pagina de internet

ciboulette -n http://bibliobarracas.com.ar/feed/

Es para agregar a un nodo a tu lector de novedades

ciboulette -b http://3orzmu3bziaoivpg.onion

Es para quitar un nodo a tu lector de novedades

echo "Este es el contenido"  | ciboulette -a "Artículo en la terminal"

Publicar un articulo

ciboulette -l

Listado de amig@s sumados a Ciboulette

ciboulette -u

Actualiza tu programa a la ultima versión de Ciboluette. Más ayuda en ciboulette -h



Ciboulette en internet

Si alguno de tus amig@s no tiene ciboulette podes pasarle la dirección para acceder desde internet.

Podes usar tor2web para esto existe varios servidores públicos de este servicio.



Ciboulette en Cyanogem o Android

Mientras esté prendido y conectado tu nodo de Ciboulette, podés conectarte con tu celular usando GibberBot con Orbot.

Para las novedades se puede usar Feedex tenes qué configurar el proxy en 127.0.0.1 puerto 8118. Con agregar tu dirección de RSS de novedades basta :D

Para pasar tu dirección a un celular o tablet podes usar el QR y reconocerlo con Barcode Scanner.

Todas estas aplicaciones están disponibles en F-droid.org


Textos Colaborativos

Ciboulette gobby

Primero instalar la versión 4 de gobby, en algunas distribuciones se llama gobby y en otras gobby-0.4, este editor colaborativo además de ser distribuido utiliza cifrado TLS.

Juegos en red

Juego en red con ciboulette

Se puede jugar en red. En este ejemplos se puede ver el juego TEG. Se pueden usar muchos más juegos en red

Más formas de usar Ciboulette

Existen miles de formas de visualizarse Ciboulette, acá van algunos ejemplos:

Brief
Brief un complemento para Firefox
Emacs y Notmuch
Emacs con Notmuch y Bread qué se encarga de convertir los fuente de novedades en correos electrónicos qué son enviados con Sendmail
Liferea
Sumando un contacto en Liferea

Para usar estos programas lo único qué tenemos qué hacer es sumar nuestro fuente de novedades. Busca tu forma de usar Ciboulette :D


Receta de Ciboulette

Principalmente para que funcione Ciboulette se necesita una red libre, para eso vamos a usar TOR que se ve a encargar de nuestra red libres sobre internet. Para que sea cómoda de usar vamos a hacer que los .onion servicios ocultos de TOR se vean directamente en nuestro navegador. Esto es opcional, pero resulta verdaderamente cómodo.

Luego para poder compartir nuestras publicaciones con amigos vamos a usar un micro servidor web.

TOR

sudo aptitude install tor

Agregar las siguientes lineas en /etc/tor/torrc para publicar nuestras novedades a través de TOR, copias y pega este texto:

VirtualAddrNetwork 10.192.0.0/10 #ciboulette
AutomapHostsOnResolve 1 #ciboulette
TransPort 9040 #ciboulette
DNSPort 53 #ciboulette
HiddenServiceDir /var/lib/tor/ciboulette/ #ciboulette
HiddenServicePort 80 127.0.0.1:4232   #ciboulette
HiddenServicePort 5222 127.0.0.1:5222 #ciboulette xmpp
HiddenServicePort 5269 127.0.0.1:5269 #ciboulette xmpp
HiddenServicePort 6522 127.0.0.1:6522 #ciboulette gobby y otros
Nota: Para editar el archivo podemos usar gedit, por ejemplo: gedit /etc/tor/torrc

Luego reiniciar TOR sudo service tor restart y un rato despues sudo cat /var/lib/tor/ciboulette/hostname vamos a ver nuestra dirección en la red social. Esta es la que tenemos que pasar a nuestr@s amig@s

Iptables

Las reglas de iptables tenemos que ponerla al inicio de nuestro sistema por ejemplo en /etc/rc.local

iptables -t nat -A OUTPUT -p tcp -d 10.192.0.0/10 -j REDIRECT --to-ports 9040

Esta linea tenemos que copiarla y pegarla en el archivo gedit /etc/rc.local y agregarlo antes del exit 0

Resolver los DNS

Necesitamos que TOR resuelva nuestros DNS, para eso existen miles de soluciones, una fácil es agregar algunas lineas en /etc/resolvconf/resolv.conf.d/base

nameserver 127.0.0.1
nameserver 37.235.52.191
nameserver 69.164.196.21
nameserver 208.115.243.35
nameserver 208.115.243.38

Si no existe la carpeta /etc/resolvconf/resolv.conf.d es por que tenemos una vieja version de resolvconf asi que vamos a tener que agregar la configuración en otros archivos /etc/dhcp3/dhclient.conf, /etc/dhcp/dhclient.conf o /etc/dhclient.conf. Como TOR no puede resolver todos los DNS tendremos que agregar alguno de Opennic, por ejemplo:

prepend domain-name-servers 127.0.0.1,37.235.52.191,69.164.196.21,208.115.243.35,208.115.243.38;
request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, domain-search, host-name, netbios-name-servers, netbios-scope, interface-mtu, rfc3442-classless-static-routes, ntp-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.name-servers, dhcp6.sntp-servers;
Nota: Para editar el archivo podemos usar gedit, por ejemplo: gedit /etc/dhcp*/dhclient.conf

Luego reiniciar el resolvconf

sudo service resolvconf restart

Servidor y contenido

Para poder publicar noticias vamos a necesitar un servidor que responda en el puerto 4232, si no tenemos uno podemos instalar mini-httpd por lo general se instalar con:

sudo aptitude install mini-httpd nanoblogger rawdog tidy markdown python2-feedparser qrencode imagemagick zenity libnotify-bin

El contenido tiene una estructura que hay que copiar y algunos archivos que reemplazar:

cd /tmp
wget https://github.com/b4zz4/Ciboulette/archive/master.zip -O master.zip
unzip master.zip
cd Ciboulette-master
# Logos e inicios
sudo cp ciboulette /usr/local/bin/
sudo cp ciboulette.png /usr/share/pixmaps/
sudo cp ciboulette.desktop /usr/local/share/applications/
# Corrección de Nanoblogger
sudo cp -r lang /usr/share/nanoblogger/
sudo cp plugins/markdown.sh /usr/share/nanoblogger/plugins/page/format/markdown.sh
sudo cp plugins/markdown.sh /usr/share/nanoblogger/plugins/entry/format/markdown.sh
./ciboulette -I

Chat

Luego de instalarlo tenemos que agregar nuestra dirección de Ciboulette al prosody

sudo aptitude install prosody

Luego agregamos un nombre para nuestro usuario del chat y configura automáticamente el servidor

sudo ciboulette adduser $USER clave

Ver como configurar el Pidgin

Errores frecuentes

  • No puedo ver los nodos de otros amig@s en el navegador
    • Seguramente TOR no esta resolviendo los DNS. Podes resolver esto usando FoxyProxy
  • Agrego amig@s al chat no aparecen
    • Lamentablemente en algunos sistemas operativos TOR no puede resolver los DNS :(

Actualizar TOR

Muchas de los errores frecuentes se solucionan actualizando Tor:

deb http://deb.torproject.org/torproject.org TU_DISTRIBUCION main

Agregar esta linea en /etc/apt/sources.list esto se puede hacer con sudo gedit /etc/apt/sources.list, luego guardar y cerarr.

En la terminal hay que poner lo siguiente:

sudo gpg --keyserver keys.gnupg.net --recv 886DDD89
sudo gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
sudo apt-get update
sudo apt-get install deb.torproject.org-keyring
sudo apt-get upgrade

Luego de esto nuestras direcciones de ciboulette deberían andar en cualquier navegador.


Ideas a futuro

Entre los servicios web que podrían agregarse esta compartir archivos, imágenes, sonidos, vídeos, etc

Reporte de Errores