Un nodo Lightning te permite enviar y recibir pagos de Bitcoin a través de canales de pago, y solo vale la pena si permanece en línea. Eso convierte a un VPS en un hogar natural para él. Esta guía configura LND (Lightning Network Daemon) en Ubuntu o Debian, usando un nodo Bitcoin Core en el mismo servidor como backend.
Elige primero tu backend de Bitcoin
LND no valida Bitcoin por sí solo. Necesita uno de tres backends:
- Bitcoin Core en el mismo VPS. La opción más privada y fiable. Un nodo podado basta para LND, lo que mantiene el disco pequeño. Nuestra guía del nodo Bitcoin cubre la instalación.
- Neutrino. Un modo de cliente ligero que casi no necesita disco, pero depende de otros pares para los filtros de bloques y es menos robusto.
- Un nodo remoto de confianza. Está bien si ya ejecutas uno en otro lugar. Nunca apuntes LND a un nodo que no controlas si tu nodo guarda fondos reales.
Para la mayoría de las personas, un Bitcoin Core podado en el mismo servidor más LND es la configuración sólida más sencilla. Ambos programas conviven en un plan de 2 a 4 vCPU con 4 a 8 GB de RAM. Consulta el dimensionamiento en nuestra página de hosting de nodos Lightning.
Paso 1: prepara el servidor
Empieza con un VPS Ubuntu o Debian recién instalado y sigue cómo proteger un VPS nuevo. Crea un usuario normal para el nodo y no ejecutes LND como root.
sudo adduser --disabled-password --gecos "" lnd
sudo usermod -aG bitcoin lnd # lets LND read the bitcoind cookie file
Paso 2: permitir que Bitcoin Core hable con LND
LND lee bloques y transacciones de Bitcoin Core mediante ZeroMQ. Añade estas líneas a bitcoin.conf y reinicia bitcoind:
server=1
prune=20000
zmqpubrawblock=tcp://127.0.0.1:28332
zmqpubrawtx=tcp://127.0.0.1:28333
rpcbind=127.0.0.1
rpcallowip=127.0.0.1
Espera a que el nodo Bitcoin termine su primera sincronización antes de continuar. LND no funcionará con un nodo que aún se está poniendo al día.
Paso 3: descargar LND
Obtén la versión para tu CPU desde la página oficial de versiones de lightningnetwork/lnd en GitHub. Verifica la firma y el archivo de sumas de comprobación antes de ejecutar nada, como explican las notas de la versión.
cd /tmp
wget https://github.com/lightningnetwork/lnd/releases/download/vVERSION/lnd-linux-amd64-vVERSION.tar.gz
tar xzf lnd-linux-amd64-vVERSION.tar.gz
sudo install -m 0755 lnd-linux-amd64-vVERSION/lnd lnd-linux-amd64-vVERSION/lncli /usr/local/bin/
Sustituye VERSION por la versión que verificaste.
Paso 4: configurar LND
Crea /home/lnd/.lnd/lnd.conf:
[Application Options]
alias=my-node
listen=0.0.0.0:9735
rpclisten=127.0.0.1:10009
restlisten=127.0.0.1:8080
maxpendingchannels=5
[Bitcoin]
bitcoin.active=1
bitcoin.mainnet=1
bitcoin.node=bitcoind
[Bitcoind]
bitcoind.rpchost=127.0.0.1:8332
bitcoind.rpccookie=/home/bitcoin/.bitcoin/.cookie
bitcoind.zmqpubrawblock=tcp://127.0.0.1:28332
bitcoind.zmqpubrawtx=tcp://127.0.0.1:28333
Ajusta la ruta de la cookie a donde tu usuario de Bitcoin la guarde. Los puertos gRPC y REST están enlazados a localhost a propósito.
Paso 5: ejecútalo como servicio
[Unit]
Description=LND
After=bitcoind.service
Requires=bitcoind.service
[Service]
User=lnd
ExecStart=/usr/local/bin/lnd
Restart=on-failure
TimeoutStopSec=300
[Install]
WantedBy=multi-user.target
Guárdalo como /etc/systemd/system/lnd.service y luego ejecuta sudo systemctl enable --now lnd. Crea la billetera una sola vez con lncli create.
Paso 6: proteger la semilla y la copia de seguridad de canales
lncli create muestra una frase semilla de 24 palabras. Escríbela en papel y guárdala sin conexión. La semilla solo restaura tus fondos on-chain. El estado de los canales es aparte, así que guarda también una copia de channel.backup (en ~/.lnd/data/chain/bitcoin/mainnet/) fuera del servidor y actualízala tras cada cambio de canal. Nunca restaures una copia antigua de la base de datos completa, porque puede provocar una penalización.
Cortafuegos
Abre solo el puerto 9735 si quieres que otros nodos se conecten contigo. Mantén 10009 y 8080 cerrados a internet. Lee la guía de refuerzo de seguridad para el resto de lo básico.