Taller - Montar un nodo Bitcoin y LND (Actualizado a Marzo 2019)

  • Autor del tema Autor del tema bmbnct
  • Fecha de inicio Fecha de inicio
1.3 Utilizar Tor como proxy para Bitcoin Core y LND; de esta forma ocultamos nuestra IP publica y la conexiones se realizan a traves de la red tor.

La realización de los siguientes pasos suponen que ya disponemos de Bitcoin Core y LND instalado y sincronizado.


1.- Detener los servicios de Bitcoind y LND.

Código:
bitcoin-cli stop
lncli stop

2.- Instalar las librerías necesarias para compilar tor (la ultima versión binaria disponible para la raspberry no soporta onion v3 por eso compilamos desde fuentes)

Código:
sudo apt-get install libevent-dev
sudo apt-get install libssl-dev

3.- Descargamos la ultima versión de tor:

Código:
wget https://www.torproject.org/dist/tor-0.3.4.8.tar.gz

4.- Descomprimimos, compilamos e instalamos (linea a linea, hasta que no acabe una linea no introducimos la siguiente):

Código:
tar xzf tor-0.3.4.8.tar.gz
cd tor-0.3.4.8
./configure && make
sudo make install

5.- Creamos un directorio donde se guardaran las claves y direcciones onion para cada servicio:

Código:
mkdir /home/pi/tor

6.- Editamos el archivo de configuración torrc (estará en blanco)

Código:
sudo nano /usr/local/etc/tor/torrc

7.- Pegamos las siguientes lineas; Bitcoin Core no soporta servicios onion v3 por eso lo dejamos con tor v2; importante, el foro me convierte la palabra "H idden" en asteriscos, quitar el espacio entra la "H" y la "i":

Código:
SOCKSPort 9050
Log notice stdout
ControlPort 9051
CookieAuthentication 1

H iddenServiceDir /home/pi/tor/bitcoin_service/
H iddenServicePort 8333 127.0.0.1:8333

H iddenServiceDir /home/pi/tor/lnd_service/
H iddenServiceVersion 3
H iddenServicePort 9735 127.0.0.1:9735

8.- Abrimos un "screen" y ejecutamos:

Código:
tor

9.- Si todo ha ido bien, tras liquidar tor, al final aparecerá:

Código:
[notice] Tor has successfully peine a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done

10.- Con la tecla "Ctrl" + A + D salimos del screen sin cerrar tor e iremos al directorio tor que hemos creado en el paso 5. Dentro del directorio hay dos carpetas, una "bitcoin_service" y otra "lnd_service". Cada una de ellas tiene un archivo llamado "hostname" el cual contiene la direccion onion creada para cada servicio, una para bitcoind y otra para lnd.
Lo siguiente que deberemos hacer sera editar los archivos de configuración "bitcoin.conf" y "lnd.conf".
- En nuestro fichero de bitcoin.conf introducimos:

Código:
#TOR
proxy=127.0.0.1:9050
listen=1
bind=127.0.0.1
externalip=ladireccionquecontieneelarchivohostnameparabitcoin.onion

- En el fichero lnd.conf:

Código:
#TOR
externalip=ladireccionquecontieneelarchivohostnameparalnd.onion
listen=localhost

11.- Arrancamos Bitcoin Core con el comando habitual:

Código:
bitcoind &

12.- Cuando haya arrancado y este sincronizado arrancamos lnd en un screen con el siguiente comando:

Código:
lnd --tor.active --tor.v3

13.- Una vez que arranque lnd, al introducir lncli getinfo, veremos que tenemos dos URIs, una que cambia cada vez que arranquemos lnd, la cual genera a partir del hostname, y la otra que no. La que se anunciará sera la que cambia.

Migrar a tor tiene la pega que todavía ninguna cartera móvil LN soporta tor y no se podrán conectar a nosotros. Los canales que tengamos ya creados no los perderemos y podremos conectarnos a peers por su IP y su direccion onion, pero ellos solo se podrán conectar a nuestra dirección onion (y a nuestra IP si se la damos) si tienen tor ejecutandose en su nodo.
 
Última edición:
Para la compra del material sería bueno organizar una conjunta a ver si conseguimos descuento burbujero.
 
1.3 Utilizar Tor como proxy para Bitcoin Core y LND; de esta forma ocultamos nuestra IP publica y la conexiones se realizan a traves de la red tor.

La realización de los siguientes pasos suponen que ya disponemos de Bitcoin Core y LND instalado y sincronizado.


1.- Detener los servicios de Bitcoind y LND.

Código:
bitcoin-cli stop
lncli stop

2.- Instalar las librerías necesarias para compilar tor (la ultima versión binaria disponible para la raspberry no soporta onion v3 por eso compilamos desde fuentes)

Código:
sudo apt-get install libevent-dev
sudo apt-get install libssl-dev

3.- Descargamos la ultima versión de tor:

Código:
wget https://www.torproject.org/dist/tor-0.3.4.8.tar.gz

4.- Descomprimimos, compilamos e instalamos (linea a linea, hasta que no acabe una linea no introducimos la siguiente):

Código:
tar xzf tor-0.3.4.8.tar.gz
cd tor-0.3.4.8
./configure && make
sudo make install

5.- Creamos un directorio donde se guardaran las claves y direcciones onion para cada servicio:

Código:
mkdir /home/pi/tor

6.- Editamos el archivo de configuración torrc (estará en blanco)

Código:
sudo nano /usr/local/etc/tor/torrc

7.- Pegamos las siguientes lineas; Bitcoin Core no soporta servicios onion v3 por eso lo dejamos con tor v2; importante, el foro me convierte la palabra "H idden" en asteriscos, quitar el espacio entra la "H" y la "i":

Código:
SOCKSPort 9050
Log notice stdout
ControlPort 9051
CookieAuthentication 1

H iddenServiceDir /home/pi/tor/bitcoin_service/
H iddenServicePort 8333 127.0.0.1:8333

H iddenServiceDir /home/pi/tor/lnd_service/
H iddenServiceVersion 3
H iddenServicePort 9735 127.0.0.1:9735

8.- Abrimos un "screen" y ejecutamos:

Código:
tor

9.- Si todo ha ido bien, tras liquidar tor, al final aparecerá:

Código:
[notice] Tor has successfully peine a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done

10.- Con la tecla "Ctrl" + A + D salimos del screen sin cerrar tor e iremos al directorio tor que hemos creado en el paso 5. Dentro del directorio hay dos carpetas, una "bitcoin_service" y otra "lnd_service". Cada una de ellas tiene un archivo llamado "hostname" el cual contiene la direccion onion creada para cada servicio, una para bitcoind y otra para lnd.
Lo siguiente que deberemos hacer sera editar los archivos de configuración "bitcoin.conf" y "lnd.conf".
- En nuestro fichero de bitcoin.conf introducimos:

Código:
#TOR
proxy=127.0.0.1:9050
listen=1
bind=127.0.0.1
externalip=ladireccionquecontieneelarchivohostnameparabitcoin.onion

- En el fichero lnd.conf:

Código:
#TOR
externalip=ladireccionquecontieneelarchivohostnameparalnd.onion
listen=localhost

11.- Arrancamos Bitcoin Core con el comando habitual:

Código:
bitcoind &

12.- Cuando haya arrancado y este sincronizado arrancamos lnd en un screen con el siguiente comando:

Código:
lnd --tor.active --tor.v3

13.- Una vez que arranque lnd, al introducir lncli getinfo, veremos que tenemos dos URIs, una que cambia cada vez que arranquemos lnd, la cual genera a partir del hostname, y la otra que no. La que se anunciará sera la que cambia.

Migrar a tor tiene la pega que todavía ninguna cartera móvil LN soporta tor y no se podrán conectar a nosotros. Los canales que tengamos ya creados no los perderemos y podremos conectarnos a peers por su IP y su direccion onion, pero ellos solo se podrán conectar a nuestra dirección onion (y a nuestra IP si se la damos) si tienen tor ejecutandose en su nodo.


Muy pro para mi de momento . Me lo guardo por si me hace falta en un futuro, de mometo no veo la necesidad de ocultar mi IP, pa 10 € que tengo.😀

Hace unos dias hubo un ataque DDos a la LN ¿es cierto? ¿No seria recomendable una proteccion contra esto? . Creo que raspibolt instalaba algo asi en algun tutorial.

Para la compra del material sería bueno organizar una conjunta a ver si conseguimos descuento burbujero.

Me da la sensacion que no va haber gente, aqui somos 3 o 4 y ya tenemos todos el material. Animate a comprarlo que todo no llega ni a 100€.
 
Muy pro para mi de momento . Me lo guardo por si me hace falta en un futuro, de mometo no veo la necesidad de ocultar mi IP, pa 10 € que tengo.😀

Hace unos dias hubo un ataque DDos a la LN ¿es cierto? ¿No seria recomendable una proteccion contra esto?

Anímate a probarlo; es ahora el momento de experimentar, si más adelante metes más de 10€, te dará más respeto hacerlo.
Instalas tor, añades los parámetros a los archivos de configuración de bitcoin y lnd, te familiarizas con tor, pruebas un par de cosillas y para volver al estado "no tor" simplemente tienes que eliminar (o comentar con #) las líneas que has metido en bitcoin.conf y lnd.conf.
Y el día de mañana al menos te sonará cómo se hace.

Respecto a lo que comentas de securizar la raspberry, me parece un tema muy interesante aunque quizás se vaya un poco de lo que trata este hilo. Yo la mia la tengo con cuatro reglas de iptables; pero se puede hacer mucho más.

---------- Post added 04-oct-2018 at 22:15 ----------

animate a comprarlo que todo no llega ni a 100€.

 
Montar un nodo simplemente es por amor al arte, no? No se puede rentabilizar?
 
Montar un nodo simplemente es por amor al arte, no? No se puede rentabilizar?
Es para poder tener una versión de la cadena de bloques más fiable que la de un cliente ligero ya que podrás verificar por ti mismo la cadena. También, de paso, ayudas a la descentralización de Bitcoin siempre y cuando tengas más de 8 conexiones.
Nadie te va a pagar por eso.

Taptap
 
Ya estamos de vuelta por aqui.

He tenido problemillas con el nodo. Parece que USB de backup peto y a raiz de eso la pi ni siquiera arrancaba. No podiar editar el fstab en windows, asi que use un cd live de linux que tenia por ahi.

Una vez arreglado me he liado con zap. Aqui parecia facil la cosa, pero me ha sido imposible transferir los archivos a un USB. He creado una particion pero no tenia permisos de escritura, he probado de todo sin exito. Al final he cambiado de tecnica y he instalado un cliente FTP, que me ha funcionado a la primera. Ya puestos me he instalado el Notepad ++, para editar y transferir por FTP va muy bien.

Y Zap, no se por que, no quiere arrancar. Me acepta la IP y los archivos, pero luego se queda en loading....
 
Tengo una pregunta para aquellos que tengan un nodo LN.

He seguido este tutorial de Youtube y ya lo tengo todo listo:



Ahora las preguntas de novato:

- ¿Sirve de algo tener un nodo ejecutándose pero sin canales abiertos?

- He tratado de hacer lo que hace el tío del minuto 6'30 a 7'37 pero no ocurre nada. El vídeo tiene ya sus meses y puede que las cosas hayan cambiado. He leído por ahí que a veces los nodos no te dejan conectarte a ellos si no has aportado algo de BTC primero a un canal. ¿Es esto cierto?

Saludos
 
Tengo una pregunta para aquellos que tengan un nodo LN.

He seguido este tutorial de Youtube y ya lo tengo todo listo:



Ahora las preguntas de novato:

- ¿Sirve de algo tener un nodo ejecutándose pero sin canales abiertos?

- He tratado de hacer lo que hace el tío del minuto 6'30 a 7'37 pero no ocurre nada. El vídeo tiene ya sus meses y puede que las cosas hayan cambiado. He leído por ahí que a veces los nodos no te dejan conectarte a ellos si no has aportado algo de BTC primero a un canal. ¿Es esto cierto?

Saludos


En lo que respecta a LN creo que no, si no tienes canales no puede pasar ninguna transaccion a traves de ti. En cuanto a la red bitcoin si que contribuyes como un nodo mas, retransmites transacciones y bloques a los demas nodos.

No uso Eclair, pero puedes probar a abrir un canal directamente con saldo.
Esa conexion que hace en el video no creo que realmente valga para nada, mas que para ver si el nodo responde. Tambien puedes probar contra otro nodo a ver.

edit. he probado el comando connect desde lnd a ese mismo nodo y parece que si conecta. Miro la lista de peers y me aparece el nodo de Acinq. Lo que no se es para que valen realmente los peers, tengo como 10 y solo 2 canales.

edit2. He indagado un poco y parece que hay dos redes diferentes en LN.
La de los canales, que es por donde van las transacciones y la P2P que entiendo que podria valer para hacer un mapa de la red y buscar la mejor ruta para los pagos. Segun esto si que puedes estar contribuyendo a la red sin tener ningun canal abierto. A ver si algun experto nos ilumina. 😀
 
Última edición:
Otra pregunta:

Para montar mi nodo me bajé la blockchain de aquí:
Así mi nodo no tuvo que hacer comprobaciones ni nada, simplemente bajé la blockchain ya indexada y lista para usar.

Aún así el nodo se ha pasado 2 o 3 días haciendo uso intensivo del disco duro, como si estuviera escribiendo cosas constantemente y el PC me iba lento. Hoy de repente ha parado de escribir cosas y el PC ya me va rápido otra vez.

¿Alguien sabe a qué era debido eso?
 
Otra pregunta:

Para montar mi nodo me bajé la blockchain de aquí:
Así mi nodo no tuvo que hacer comprobaciones ni nada, simplemente bajé la blockchain ya indexada y lista para usar.

Aún así el nodo se ha pasado 2 o 3 días haciendo uso intensivo del disco duro, como si estuviera escribiendo cosas constantemente y el PC me iba lento. Hoy de repente ha parado de escribir cosas y el PC ya me va rápido otra vez.

¿Alguien sabe a qué era debido eso?


Así a bote pronto se me ocurre que tengas configurado tu nodo con txindex=1 y que haya tenido que crear el indice.
 
Así a bote pronto se me ocurre que tengas configurado tu nodo con txindex=1 y que haya tenido que crear el indice.

Mmm sí tengo el txindex=1
Lo puse porque lo decían las instrucciones para instalar Eclair.


Edito: shishi ya sé porqué Eclair no me funcionaba. Tenía que esperar a que se indexara todo, ahora he probado Eclair y sí que se conecta a otros nodos. Gracias ninifireblade, daba el Eclair por perdido y ahora lo tengo ya funcionando.
 
Última edición:
Comentar que al final el wallet Zap empezo a funcionar solo sin hacer nada.

Esta muy bien, ya he probado enviar y recibir pagos y todo perfecto, lo unico con los invoices de 0 sat no te deja despues meter la cantidad, creo. que es un fallo del wallet ya que desde el propio nodo lo hago sin problema.

Ahora quiero investigar a ver como se puede hacer lo mismo desde un movil, estan saliendo wallets LN como churros, asi que alguna opcion habra.
 
Última edición:
Comentar que al final el wallet Zap empezo a funcionar solo sin hacer nada.

Esta muy bien, ya he probado enviar y recibir pagos y todo perfecto, lo unico con los invoices de 0 sat no te deja despues meter la cantidad, creo. que es un fallo del wallet ya que desde el propio nodo lo hago sin problema.

Ahora quiero investigar a ver como se puede hacer lo mismo desde un movil, estan saliendo wallets LN como churros, asi que alguna opcion habra.



Desde el movil yo uso la de Eclair y me va muy bien, ningun problema.
 
Desde el movil yo uso la de Eclair y me va muy bien, ningun problema.

Entiendo que la tienes conectada a tu propio nodo. ¿Tambien accedes desde fuera de la misma red?

Por cierto, el otro dia estaba viendo un mapa de nodos LN en España y me tope
con uno que se llamaba igual que tu, que cosas eh? 😀
 
Última edición:
Entiendo que la tienes conectada a tu propio nodo. ¿Tambien accedes desde fuera de la misma red?

Por cierto, el otro dia estaba viendo un mapa de nodos LN en España y me tope
con uno que se llamaba igual que tu, que cosas eh? 😀


Curioso, que copiona es la gente 😀😀
 
Entiendo que la tienes conectada a tu propio nodo. ¿Tambien accedes desde fuera de la misma red?



Por cierto, el otro dia estaba viendo un mapa de nodos LN en España y me tope

con uno que se llamaba igual que tu, que cosas eh? 😀
Eclair esta muy bien, echa un vistazo también a Bitcoin Lightning Wallet:



La que tambien quiero probar es esta:

Meten una nueva figura lndhub que se encarga de gestionar canales independientes, un usuario puede instalar lndhub en su propio nodo o confiar en un tercero.
 
Eclair esta muy bien, echa un vistazo también a Bitcoin Lightning Wallet:



La que tambien quiero probar es esta:

Meten una nueva figura lndhub que se encarga de gestionar canales independientes, un usuario puede instalar lndhub en su propio nodo o confiar en un tercero.

Casualmente, ayer le estube echando un ojo en el hilo de Reddit. No me acabo de quedar del todo claro lo del lndhub. Ya nos diras si la ves interesante.
 
¿Qué le pasa a este nodo?



Height: 640993 (115.48%)


Es el único de España con más del 100%, ¿qué significa eso?
 
Nuevo servicio para poder cambiar de forma instantánea, sin cerrar el canal, bitcoins que tengamos en el, por bitcoins que se irán a nuestra wallet y así poder balancear el saldo de nuestros canales.

También soporta otros intercambios entre shitcoins.

Desarrollado por Andreas Brekken y aun EN FASE TEST, aunque yo y otros lo hemos probado y funciona perfectamente.

 
Última edición:
Han sacado una nueva versión de LND:

 
Han sacado una nueva versión de LND:


Os ha ido bien la actualizacion? Parece que no arranca el malo del nodo.

Edit: bueno, parece de la 0.4.2 a la 0.5.2 hace algun scaneo de los bloques o algo asi. Al principio parecia que no hacia nada, pero le pones el modo debug y se ven como van pasando los bloques, al ritmo que va le calculo 4-8 horas facil.
Lo dejare asi por la noche a ver...
 
Última edición:

Estadísticas del foro

Temas
2.049.376
Mensajes
58.146.103
Miembros
190.830
Último miembro
Francisco Valero

El blog de burbuja.info

Volver