bolt Valebyte VPS desde $4/mes — NVMe, despliegue en 60s.

Obtener VPS arrow_forward
eco Principiante Tutorial/Cómo hacer

Instalación y Config

calendar_month Jul 12, 2026 schedule 19 min de lectura visibility 16 vistas
Установка и настройка Bitcoin Full Node на VPS: безопасность и автоматические обновления
info

¿Necesitas un servidor para esta guía? Ofrecemos servidores dedicados y VPS en más de 50 países con configuración instantánea.

¿Necesitas un VPS para esta guía?

Explore otras opciones de servidores dedicados en

Instalación y configuración de un nodo completo de Bitcoin en un VPS: seguridad y actualizaciones automáticas

TL;DR

En esta guía, configuraremos paso a paso un nodo completo de Bitcoin Core (Full Node) en el sistema operativo Ubuntu 24.04 LTS, alojado en un servidor privado virtual (VPS). Aprenderá a instalar y configurar el software, a asegurar la seguridad básica del servidor con claves SSH, el firewall UFW y Fail2ban, y a configurar el sistema para actualizaciones automáticas del sistema operativo y un mantenimiento seguro del nodo de Bitcoin, para garantizar su funcionamiento estable y fiable en la red de Bitcoin.

  • Configuraremos el acceso seguro al VPS y un firewall básico.
  • Instalaremos y ejecutaremos Bitcoin Core como un servicio del sistema.
  • Garantizaremos las actualizaciones automáticas del sistema operativo y sus componentes.
  • Configuraremos la monitorización y la estrategia de mantenimiento para el nodo de Bitcoin.
  • Nos prepararemos para la escalabilidad y la optimización futura.

Qué configuramos y por qué

Esquema: Qué configuramos y por qué
Esquema: Qué configuramos y por qué

En esta guía, nos centraremos en la instalación y configuración de un Bitcoin Full Node, utilizando el cliente oficial Bitcoin Core, en un servidor privado virtual (VPS) con Ubuntu 24.04 LTS. Un nodo completo es un elemento crítico de la infraestructura de Bitcoin, ya que valida completamente todas las transacciones y bloques, asegurando la descentralización y seguridad de la red.

Qué obtendrá el lector al final:

  • Tendrá su propia copia, independiente y completamente sincronizada de toda la cadena de bloques de Bitcoin.
  • Su nodo participará activamente en la verificación y retransmisión de transacciones, así como en la seguridad de la red.
  • Podrá usar su nodo para conectar carteras ligeras (por ejemplo, Electrum, Sparrow) o para desarrollar sus propias aplicaciones descentralizadas (dApps), basándose en datos verificados.
  • Adquirirá experiencia trabajando con servidores Linux, configurando la seguridad y automatizando el mantenimiento.

Qué alternativas existen y por qué autoalojar en un VPS:

Existen alternativas para ejecutar su propio nodo, como el uso de API de terceros (por ejemplo, Blockchair, Blockchain.com) o carteras ligeras que dependen de nodos de otros. Sin embargo, estos enfoques tienen desventajas significativas:

  • Dependencia de terceros: Confía la verificación de transacciones y saldos a otra persona, lo que contradice los principios fundamentales de la descentralización de Bitcoin. Esto puede llevar a la pérdida de privacidad y censura.
  • Riesgos de seguridad: La transmisión de sus datos a servicios de terceros aumenta la superficie de ataque y los riesgos de compromiso.
  • Limitaciones y costos: Muchas API de terceros tienen limitaciones en el número de solicitudes o requieren una suscripción de pago para un uso completo.

Ejecutar un nodo autoalojado en un VPS elimina estos problemas. Usted controla completamente sus datos, garantiza la máxima privacidad y seguridad, y contribuye activamente a la descentralización de la red. Un VPS ofrece un equilibrio óptimo entre el control de un servidor dedicado y la flexibilidad de las soluciones en la nube, lo que lo convierte en una opción ideal para la mayoría de los usuarios.

Qué configuración de VPS se necesita para esta tarea

Esquema: Qué configuración de VPS se necesita para esta tarea
Esquema: Qué configuración de VPS se necesita para esta tarea

Ejecutar un nodo completo de Bitcoin requiere ciertos recursos, principalmente debido al tamaño de la cadena de bloques y la necesidad de su sincronización constante. Para 2026, el tamaño de la cadena de bloques de Bitcoin seguirá creciendo, por lo que es importante elegir una configuración con margen.

Requisitos mínimos (actuales para 2026):

  • CPU: 2 núcleos. Bitcoin Core no requiere un procesador muy potente, pero varios núcleos son útiles para procesar transacciones e indexación.
  • RAM: 4 GB. Aunque el nodo en sí puede funcionar con 2 GB, 4 GB garantizan un funcionamiento más fluido, especialmente durante la sincronización inicial y al usar servicios adicionales (por ejemplo, ElectrumX).
  • Disco: SSD de 2 TB. Esto es críticamente importante. La cadena de bloques de Bitcoin ya supera los 600 GB y sigue creciendo. Para 2026, su tamaño podría alcanzar fácilmente 1-1.5 TB, por lo que un SSD de 2 TB es un mínimo razonable con margen para varios años. Un SSD acelera significativamente la sincronización inicial y el funcionamiento diario del nodo.
  • Red: 100 Mbit/s o superior. Tráfico ilimitado o un límite muy alto (varios TB al mes). La sincronización inicial requerirá la descarga de toda la cadena de bloques, y luego el nodo intercambiará datos constantemente con la red.

Plan de VPS específico para la tarea:

Para un funcionamiento estable y productivo de un nodo completo de Bitcoin, especialmente considerando el crecimiento de la cadena de bloques para 2026, se recomienda la siguiente configuración:

  • CPU: 4 núcleos.
  • RAM: 8 GB.
  • Disco: SSD NVMe de 2 TB. Un SSD NVMe proporcionará el mejor rendimiento para las operaciones de lectura/escritura de la cadena de bloques.
  • Red: Puerto de 1 Gbit/s con tráfico ilimitado.

Este plan garantizará un funcionamiento cómodo del nodo, una sincronización rápida y un margen de recursos para futuras necesidades. Se puede adquirir un VPS con las características indicadas.

Cuándo se necesita un servidor dedicado, no un VPS:

Un servidor dedicado puede ser necesario si planea:

  • Ejecutar varios servicios de Bitcoin que consumen muchos recursos (por ejemplo, varios nodos, ElectrumX, un explorador de blockchain, un nodo de Lightning Network).
  • Procesar un volumen muy grande de solicitudes a su nodo (por ejemplo, para una aplicación o servicio grande).
  • Se requiere el máximo rendimiento de entrada/salida, que los VPS no siempre pueden proporcionar debido a la virtualización.
  • Necesita garantías de recursos que un VPS puede no siempre ofrecer.

Para la mayoría de los usuarios individuales y equipos pequeños, un VPS con las características indicadas será más que suficiente. Si decide que necesita un servidor dedicado, puede considerar un servidor dedicado adecuado.

Ubicación: qué influye:

  • Ping y latencia: Cuanto más cerca esté el servidor de usted, menor será el ping. Esto es importante si se conectará con frecuencia al servidor por SSH o lo usará para aplicaciones interactivas.
  • Conectividad de red: La ubicación del servidor en un gran centro de datos con buenos canales de comunicación garantizará una sincronización más rápida y estable con la red de Bitcoin.
  • Jurisdicción: La elección del país de alojamiento puede ser importante en términos de legislación y privacidad. Asegúrese de que la jurisdicción cumpla con sus requisitos.

Para un nodo completo de Bitcoin, la buena conectividad de red y la velocidad son cruciales, por lo que elija una ubicación con canales de comunicación fiables, preferiblemente en un gran centro de internet.

Preparación del servidor

Esquema: Preparación del servidor
Esquema: Preparación del servidor

Antes de instalar Bitcoin Core, es necesario realizar una configuración básica de seguridad y actualizar el sistema operativo. Utilizaremos Ubuntu 24.04 LTS.

1. Conexión por SSH y creación de un nuevo usuario

Inicialmente, lo más probable es que se conecte como root. Se recomienda encarecidamente no usar root para el trabajo diario. Crearemos un nuevo usuario con permisos sudo.


# Reemplace 'youruser' con el nombre de usuario deseado
sudo adduser youruser

Introduzca una contraseña para el nuevo usuario y confirme los demás datos (puede dejarlos en blanco). Ahora añada el usuario al grupo sudo:


sudo usermod -aG sudo youruser

Salga de la sesión de root e inicie sesión con el nuevo usuario:


exit
# Ahora conéctese como 'youruser'
ssh youruser@your_vps_ip

2. Configuración de claves SSH (recomendado)

El uso de claves SSH en lugar de contraseña aumenta significativamente la seguridad. Genere las claves en su máquina local (si aún no lo ha hecho):


# En su máquina local
ssh-keygen -t rsa -b 4096

Copie la clave pública al servidor:


# En su máquina local
ssh-copy-id youruser@your_vps_ip

Ahora puede conectarse sin contraseña. Después de verificar que el inicio de sesión con clave funciona, desactive el inicio de sesión con contraseña para SSH, editando el archivo /etc/ssh/sshd_config:


sudo nano /etc/ssh/sshd_config

Encuentre las líneas y cambie/añada:


PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

También se recomienda cambiar el puerto SSH estándar (22) a otro, por ejemplo, 2222. Busque la línea #Port 22, descoméntela y cámbiela:


Port 2222

Guarde los cambios (Ctrl+O, Enter) y salga (Ctrl+X). Reinicie el servicio SSH:


sudo systemctl restart sshd

Ahora, en la próxima conexión, use el nuevo puerto: ssh -p 2222 youruser@your_vps_ip.

3. Actualización del sistema e instalación de utilidades básicas

Actualice la lista de paquetes y el sistema a las últimas versiones. Instale las utilidades necesarias.


# Actualización de la lista de paquetes
sudo apt update

# Actualización de los paquetes instalados del sistema
sudo apt upgrade -y

# Instalación de utilidades básicas, si no están
sudo apt install -y curl wget git build-essential htop screen unattended-upgrades

4. Configuración del firewall (UFW)

UFW (Uncomplicated Firewall) es una utilidad conveniente para administrar iptables. Lo configuraremos para permitir solo las conexiones necesarias.


# Instalación de UFW, si no está instalado
sudo apt install -y ufw

# Permitir SSH (asegúrese de usar su puerto si lo ha cambiado)
# Por ejemplo, si usa el puerto 2222
sudo ufw allow 2222/tcp

# Permitir conexiones entrantes para Bitcoin P2P (puerto 8333)
sudo ufw allow 8333/tcp

# Permitir conexiones salientes (por defecto permitidas, pero se puede especificar explícitamente)
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Habilitar el firewall
sudo ufw enable

Confirme la acción introduciendo y. Verifique el estado del firewall:


sudo ufw status verbose

5. Instalación de Fail2ban

Fail2ban escanea los registros de los servicios (SSH, servidores web, etc.) en busca de actividad sospechosa (múltiples intentos de inicio de sesión fallidos) y bloquea temporal o permanentemente las direcciones IP de los infractores.


# Instalación de Fail2ban
sudo apt install -y fail2ban

Cree una configuración local de Fail2ban para que sus cambios no sean sobrescritos durante una actualización:


sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

En el archivo jail.local, encuentre la sección [sshd] y asegúrese de que esté habilitada (enabled = true). Si cambió el puerto SSH, especifíquelo:


[sshd]
enabled = true
port = 2222 # Su puerto SSH
maxretry = 3 # Número de intentos fallidos antes del bloqueo
bantime = 1h # Tiempo de bloqueo (1 hora)

Guarde los cambios y reinicie Fail2ban:


sudo systemctl restart fail2ban

Ahora su servidor está listo para la instalación de Bitcoin Core.

Instalación de software — paso a paso

Diagrama: Instalación de software — paso a paso
Diagrama: Instalación de software — paso a paso

Instalaremos Bitcoin Core versión 26.0 (o posterior, la actual para 2026) desde los archivos binarios oficiales. Este método es preferible a la compilación desde el código fuente para la mayoría de los usuarios, ya que es más rápido y consume menos recursos. Para mayor comodidad, crearemos un usuario separado bitcoin, bajo el cual operará el nodo.

1. Creación del usuario Bitcoin

Crearemos un usuario del sistema bitcoin que no tendrá acceso a la shell ni al directorio de inicio, lo que aumentará la seguridad.


# Создание системного пользователя 'bitcoin'
sudo adduser --system --group --home /var/lib/bitcoin bitcoin

Crearemos un directorio para los datos de la cadena de bloques y estableceremos los permisos correctos:


# Создание директории для данных Bitcoin и установка владельца
sudo mkdir -p /var/lib/bitcoin/.bitcoin
sudo chown -R bitcoin:bitcoin /var/lib/bitcoin

2. Descarga de Bitcoin Core

Nos dirigiremos al directorio temporal y descargaremos los archivos binarios de Bitcoin Core. Para 2026, la versión actual podría ser 26.0, 27.0 o superior. La última versión estable se puede verificar en el sitio web oficial de Bitcoin Core o en su repositorio de GitHub.

A modo de ejemplo, utilizaremos la versión 26.0, asumiendo que esta o sus actualizaciones menores serán las actuales. Reemplace la URL por la actual para 2026.


# Переходим во временную директорию
cd /tmp

# Загружаем архив Bitcoin Core (пример для Linux x86_64, версия 26.0)
# Проверяйте актуальный URL на bitcoincore.org/en/download/
wget https://bitcoincore.org/bin/bitcoin-core-26.0/bitcoin-26.0-x86_64-linux-gnu.tar.gz

# Загружаем файл подписей (SHA256SUMS)
wget https://bitcoincore.org/bin/bitcoin-core-26.0/SHA256SUMS

# Загружаем файл подписей (SHA256SUMS.asc) для верификации
wget https://bitcoincore.org/bin/bitcoin-core-26.0/SHA256SUMS.asc

3. Verificación de los archivos descargados

Es extremadamente importante asegurarse de la integridad y autenticidad de los archivos descargados. Verificaremos las sumas SHA256 y la firma GPG.


# Проверка SHA256-суммы
sha256sum --check --ignore-missing SHA256SUMS

Debería ver bitcoin-26.0-x86_64-linux-gnu.tar.gz: OK. Si no, el archivo está dañado.

Ahora importaremos las claves públicas GPG de los desarrolladores de Bitcoin Core. La lista de claves se puede encontrar en bitcoincore.org/en/download/.


# Импорт публичных GPG-ключей (пример ключей для разработчиков Bitcoin Core)
# Используйте актуальные ключи с bitcoincore.org
gpg --keyserver hkps://keys.openpgp.org --recv-keys 01090831DBF626E7C4106593E20F76A000216E14
gpg --keyserver hkps://keys.openpgp.org --recv-keys 898BDDCCEB09F62EE8482A6C1167664B7AB8D654

Después de importar las claves, verificaremos la firma SHA256SUMS.asc:


# Верификация GPG-подписи
gpg --verify SHA256SUMS.asc

Debería ver un mensaje que indique una buena firma (Good signature from "..."). Es posible que haya una advertencia de que la clave no es completamente de confianza (This key is not certified with a trusted signature!), esto es normal si ha verificado la huella digital de la clave.

4. Extracción e instalación de los archivos binarios


# Распаковка архива
tar -xzvf bitcoin-26.0-x86_64-linux-gnu.tar.gz

# Копирование бинарных файлов в /usr/local/bin
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-26.0/bin/

Eliminamos los archivos temporales:


# Удаление временных файлов
rm -rf bitcoin-26.0 bitcoin-26.0-x86_64-linux-gnu.tar.gz SHA256SUMS SHA256SUMS.asc

5. Creación del servicio systemd para Bitcoin Core

Ejecutaremos Bitcoin Core como un servicio del sistema, lo que le permitirá iniciarse automáticamente al arrancar el servidor y ser gestionado mediante systemctl.


# Создание файла сервиса
sudo nano /etc/systemd/system/bitcoind.service

Inserte el siguiente contenido:


[Unit]
Description=Bitcoin daemon
After=network.target

[Service]
User=bitcoin
Group=bitcoin
Type=forking
PIDFile=/var/lib/bitcoin/.bitcoin/bitcoind.pid
ExecStart=/usr/local/bin/bitcoind -daemon -pid=/var/lib/bitcoin/.bitcoin/bitcoind.pid -conf=/var/lib/bitcoin/.bitcoin/bitcoin.conf -datadir=/var/lib/bitcoin/.bitcoin
ExecStop=/usr/local/bin/bitcoin-cli -conf=/var/lib/bitcoin/.bitcoin/bitcoin.conf -datadir=/var/lib/bitcoin/.bitcoin stop
Restart=on-failure
PrivateTmp=true
TimeoutStopSec=120
LimitNOFILE=8192

[Install]
WantedBy=multi-user.target

Guarde el archivo y cierre el editor.

Recargue systemd para que reconozca el nuevo servicio y habilite su inicio automático:


# Перезагрузка systemd
sudo systemctl daemon-reload

# Включение автозапуска сервиса при загрузке системы
sudo systemctl enable bitcoind

Ahora Bitcoin Core está instalado y listo para ejecutarse.

Configuración

Diagrama: Configuración
Diagrama: Configuración

Para el correcto funcionamiento de Bitcoin Core, es necesario crear y configurar el archivo bitcoin.conf. Este archivo se ubicará en el directorio de datos del nodo, propiedad del usuario bitcoin.

1. Creación y configuración de bitcoin.conf

Cree el archivo bitcoin.conf:


sudo -u bitcoin nano /var/lib/bitcoin/.bitcoin/bitcoin.conf

Inserte el siguiente contenido. Esta es una configuración básica que asegurará el funcionamiento del nodo y la interfaz RPC para acceso local. Reemplace con una contraseña muy segura.


# Ajustes principales
server=1
daemon=1
txindex=1             # Habilitar la indexación de transacciones (útil para ElectrumX o exploradores)
prune=0               # No podar la cadena de bloques (para un nodo completo)
maxconnections=125    # Número máximo de conexiones P2P
rpcbind=127.0.0.1     # Permitir conexiones RPC solo desde localhost
rpcallowip=127.0.0.1  # Permitir conexiones RPC solo desde localhost

# Configuración de acceso RPC (para uso local)
rpcuser=bitcoinuser
rpcpassword= # Genere una contraseña MUY segura
# También puede usar rpccookiefile para la generación automática de contraseñas
# rpccookiefile=/var/lib/bitcoin/.bitcoin/.rpcauth

# Configuración de registro
debuglogfile=/var/lib/bitcoin/.bitcoin/debug.log
logtimestamps=1

# Aumentar el número de descriptores de archivos
# maxuploadtarget=5000 # Ancho de banda máximo para subida en MB/día. Por defecto 1440.

Importante: Nunca abra el puerto RPC (por defecto 8332) para acceso externo sin una protección cuidadosa (por ejemplo, a través de un túnel SSH o un proxy inverso seguro con TLS). En esta configuración, el RPC solo es accesible desde localhost.

Puede generar una contraseña segura, por ejemplo, de la siguiente manera:


openssl rand -base64 32

Copie la contraseña generada e insértela en bitcoin.conf.

2. Inicio de Bitcoin Core

Ahora que la configuración está lista, inicie el servicio Bitcoin Core:


sudo systemctl start bitcoind

3. Verificación del funcionamiento y la sincronización

Después de iniciar, el nodo requerirá un tiempo considerable para la sincronización inicial de la cadena de bloques (desde varias horas hasta varios días, dependiendo de la velocidad del disco y la red). Puede monitorear el estado usando bitcoin-cli.


# Verificación del estado del servicio
sudo systemctl status bitcoind

# Visualización de los registros del servicio
sudo journalctl -f -u bitcoind

Para interactuar con el nodo, use bitcoin-cli. Especifique la ruta al archivo de configuración y al directorio de datos para que bitcoin-cli sepa dónde buscar:


# Obtención de información general sobre el nodo
sudo -u bitcoin /usr/local/bin/bitcoin-cli -conf=/var/lib/bitcoin/.bitcoin/bitcoin.conf -datadir=/var/lib/bitcoin/.bitcoin getinfo

# Obtención de información sobre la cadena de bloques
sudo -u bitcoin /usr/local/bin/bitcoin-cli -conf=/var/lib/bitcoin/.bitcoin/bitcoin.conf -datadir=/var/lib/bitcoin/.bitcoin getblockchaininfo

Preste atención a los campos blocks, headers y verificationprogress. verificationprogress aumentará de 0 a 0.999... a medida que se sincroniza. Cuando blocks sea igual a headers y verificationprogress esté cerca de 1, su nodo estará completamente sincronizado.

Si desea verificar el funcionamiento desde el exterior, puede usar ping para verificar la disponibilidad del servidor y curl para verificar, por ejemplo, la interfaz web, si la ha instalado (lo cual no forma parte directamente de esta guía para Bitcoin Core).


# Ejemplo de verificación de la disponibilidad del servidor (desde su máquina local)
ping your_vps_ip

4. Configuración de TLS/HTTPS (para interfaces RPC)

Bitcoin Core por sí mismo no proporciona HTTPS para su interfaz RPC. Si planea ejecutar servicios que accederán al RPC de forma remota (por ejemplo, ElectrumX, un explorador de blockchain) y desea proteger este tráfico, necesitará configurar un proxy inverso (por ejemplo, Nginx o Caddy) con soporte TLS. Sin embargo, para la mayoría de los usuarios que acceden al RPC solo desde localhost (como se configuró anteriormente), esto no es necesario.

Si aún necesita acceso remoto al RPC, se recomienda encarecidamente utilizar un túnel SSH. Esto es mucho más seguro que abrir el puerto RPC al exterior a través de un proxy inverso sin la configuración de seguridad adecuada.

Ejemplo de creación de un túnel SSH desde su máquina local:


# En su máquina local
ssh -L 8332:127.0.0.1:8332 -N -p 2222 youruser@your_vps_ip

Este comando redirigirá su puerto local 8332 al puerto 8332 en el servidor (localhost en el servidor). Después de esto, podrá acceder a la interfaz RPC del nodo como localhost:8332 desde su máquina local, y todo el tráfico estará cifrado mediante el túnel SSH.

Copias de seguridad y mantenimiento

Diagrama: Copias de seguridad y mantenimiento
Diagrama: Copias de seguridad y mantenimiento

Mantener un Nodo Completo de Bitcoin en funcionamiento implica un mantenimiento regular y una estrategia de copia de seguridad. Los datos principales que deben respaldarse son el archivo de la billetera (si lo usa) y los archivos de configuración. La propia cadena de bloques se puede restaurar, pero llevará mucho tiempo.

1. Qué respaldar

  • wallet.dat: Si utiliza la billetera integrada de Bitcoin Core, este es el archivo más importante. Contiene sus claves privadas. ¡Es crucial hacer copias de seguridad regularmente y guardarlo en un lugar seguro!
  • bitcoin.conf: Archivo de configuración del nodo. Aunque es fácil de recrear, tener una copia de seguridad simplifica la restauración.
  • peers.dat: Contiene una lista de pares conocidos, lo que puede acelerar la conexión a la red después de un reinicio, pero no es críticamente importante.

Importante: No haga una copia de seguridad de todo el directorio de datos de la cadena de bloques /var/lib/bitcoin/.bitcoin/blocks o /var/lib/bitcoin/.bitcoin/chainstate, ya que es una gran cantidad de datos que se vuelve obsoleta rápidamente. Es más fácil resincronizar la cadena de bloques desde cero.

2. Script simple de copia de seguridad automática (para wallet.dat y configuraciones)

Crearemos un script simple para hacer una copia de seguridad de wallet.dat y bitcoin.conf. Suponemos que guarda wallet.dat en la ubicación estándar /var/lib/bitcoin/.bitcoin/wallet.dat. Si no utiliza una billetera en el nodo, omita la copia de seguridad de wallet.dat.

Cree un directorio para las copias de seguridad:


sudo mkdir -p /var/backups/bitcoin
sudo chown youruser:youruser /var/backups/bitcoin

Cree el script backup_bitcoin_node.sh:


nano ~/backup_bitcoin_node.sh

Pegue el siguiente contenido:


#!/bin/bash

# Ruta al directorio de datos de Bitcoin Core
BITCOIN_DATADIR="/var/lib/bitcoin/.bitcoin"
# Ruta al directorio de copias de seguridad
BACKUP_DIR="/var/backups/bitcoin"
# Nombre del archivo de copia de seguridad
TIMESTAMP=$(date +%Y%m%d%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/bitcoin_config_wallet_${TIMESTAMP}.tar.gz"

echo "Iniciando la copia de seguridad de Bitcoin Core..."

# Detener bitcoind antes de hacer la copia de seguridad de wallet.dat para asegurar la integridad
# Si no utiliza la billetera integrada, puede omitir este paso
sudo systemctl stop bitcoind

# Archivando wallet.dat y bitcoin.conf
sudo tar -czvf "${BACKUP_FILE}" -C "${BITCOIN_DATADIR}" wallet.dat bitcoin.conf

# Iniciar bitcoind
sudo systemctl start bitcoind

# Eliminar copias de seguridad antiguas (por ejemplo, mayores de 7 días)
find "${BACKUP_DIR}" -name "bitcoin_config_wallet_*.tar.gz" -mtime +7 -delete

echo "Copia de seguridad completada: ${BACKUP_FILE}"

Haga el script ejecutable:


chmod +x ~/backup_bitcoin_node.sh

3. Programación de copias de seguridad con Cron

Agregue el script a Cron para su ejecución automática. Por ejemplo, diariamente a las 3:00 de la madrugada.


crontab -e

Agregue la siguiente línea al final del archivo:


0 3 * * * /home/youruser/backup_bitcoin_node.sh >> /var/log/bitcoin_backup.log 2>&1

Guarde y salga. Ahora la copia de seguridad se ejecutará automáticamente.

4. Dónde almacenar las copias de seguridad

Almacenar las copias de seguridad en el mismo servidor que los datos originales no es seguro. En caso de fallo del disco o compromiso del servidor, perderá tanto los datos como las copias de seguridad. Se recomienda:

  • Almacenamiento de objetos externo compatible con S3: Fiable y relativamente económico. Utilice herramientas como rclone para la sincronización automática.
  • VPS separado o servidor doméstico: Puede usar rsync o scp para transferir copias de seguridad a otro servidor.
  • Almacenamiento en la nube cifrado: Utilice servicios como Mega, Proton Drive con cifrado local.

Ejemplo de envío de copias de seguridad a S3 usando rclone:

Instale rclone y configúrelo para su proveedor S3. Luego, en el script de copia de seguridad, agregue la línea para copiar:


# Después de la línea "echo "Copia de seguridad completada: ${BACKUP_FILE}""
rclone copy "${BACKUP_FILE}" "s3_remote_name:bucket_name/backups/"

5. Actualizaciones: rolling vs. ventana de mantenimiento

Actualizaciones del sistema operativo:

Para Ubuntu, se recomienda configurar las actualizaciones de seguridad automáticas (unattended-upgrades). Esto permitirá que su sistema reciba parches críticos sin su intervención, lo que aumenta la seguridad.


# Abra el archivo de configuración de unattended-upgrades
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

Asegúrese de que las líneas para las actualizaciones automáticas estén descomentadas y configuradas: Unattended-Upgrade::AllowedOrigins { "${distro_id}:${distro_codename}"; "${distro_id}:${distro_codename}-security"; // "${distro_id}:${distro_codename}-updates"; // "${distro_id}:${distro_codename}-proposed"; // "${distro_id}:${distro_codename}-backports"; };

Habilite el reinicio automático, si es necesario:


Unattended-Upgrade::AutomaticReboot "true";
Unattended-Upgrade::AutomaticRebootInterval "7"; # Reinicio cada 7 días, si es necesario

Guarde y cierre. Luego habilite las actualizaciones automáticas:


sudo dpkg-reconfigure -plow unattended-upgrades

Actualizaciones de Bitcoin Core:

Es mejor realizar las actualizaciones de Bitcoin Core manualmente o con control semiautomático. Las actualizaciones completamente automáticas pueden provocar problemas impredecibles o incompatibilidades. Se recomienda:

  1. Monitoreo de anuncios: Suscríbase a las listas de correo o siga los canales oficiales de Bitcoin Core para anuncios de nuevas versiones.
  2. Ventana de mantenimiento: Planifique un tiempo para la actualización. Esto generalmente incluye detener el servicio, descargar y verificar los nuevos archivos binarios, reemplazar los antiguos e iniciar el servicio.
  3. Pruebas: Para nodos críticamente importantes, se recomienda primero actualizar y probar la nueva versión en un nodo de prueba.

Proceso de actualización de Bitcoin Core (ejemplo):


# 1. Detener el servicio de Bitcoin Core
sudo systemctl stop bitcoind

# 2. Descargar y verificar los nuevos archivos binarios (como en la sección "Instalación de software")
#    Por ejemplo, para la versión 27.0:
cd /tmp
wget https://bitcoincore.org/bin/bitcoin-core-27.0/bitcoin-27.0-x86_64-linux-gnu.tar.gz
# ... verificación ...
tar -xzvf bitcoin-27.0-x86_64-linux-gnu.tar.gz

# 3. Reemplazar los archivos binarios antiguos
sudo rm /usr/local/bin/bitcoind /usr/local/bin/bitcoin-cli /usr/local/bin/bitcoin-tx /usr/local/bin/bitcoin-util /usr/local/bin/test_bitcoin
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-27.0/bin/*

# 4. Eliminar archivos temporales
rm -rf bitcoin-27.0 bitcoin-27.0-x86_64-linux-gnu.tar.gz SHA256SUMS SHA256SUMS.asc

# 5. Iniciar el servicio de Bitcoin Core
sudo systemctl start bitcoind

# 6. Verificar el estado
sudo systemctl status bitcoind
sudo -u bitcoin /usr/local/bin/bitcoin-cli -conf=/var/lib/bitcoin/.bitcoin/bitcoin.conf -datadir=/var/lib/bitcoin/.bitcoin getinfo

Troubleshooting + FAQ

¿Qué hacer si el nodo no se inicia?

En primer lugar, verifique los registros del servicio Bitcoin Core. Use el comando sudo journalctl -f -u bitcoind para ver los mensajes recientes. Las causas comunes son: un bitcoin.conf incorrecto (errores de sintaxis, rutas incorrectas), problemas de permisos de acceso al directorio de datos /var/lib/bitcoin/.bitcoin, o falta de espacio libre en el disco. Asegúrese de que el usuario bitcoin sea el propietario de todos los archivos en /var/lib/bitcoin.

¿Es normal que el nodo tarde mucho en sincronizarse?

Sí, la sincronización inicial de un Nodo Completo de Bitcoin lleva mucho tiempo. Puede ser de 12 a 24 horas a varios días, dependiendo de la velocidad de su disco (SSD es obligatorio), el ancho de banda de la red y la carga general del servidor. Verifique el progreso con sudo -u bitcoin bitcoin-cli getblockchaininfo y monitoree verificationprogress. Si el progreso no avanza en absoluto, verifique la conexión de red y asegúrese de que el puerto 8333 esté abierto en el firewall.

¿Qué configuración mínima de VPS será adecuada para un Nodo Completo de Bitcoin en 2026?

Mínimamente, para un funcionamiento estable de un Nodo Completo de Bitcoin para 2026, se requerirá un VPS con 2 núcleos de CPU, 4 GB de RAM y 2 TB de SSD NVMe. El espacio en disco es el recurso más crítico debido al crecimiento constante de la cadena de bloques. La red debe ser de al menos 100 Mbps con tráfico ilimitado o un límite muy alto.

¿Qué elegir — VPS o dedicado para esta tarea?

Para ejecutar un único Nodo Completo de Bitcoin, especialmente para necesidades personales o un equipo pequeño, un VPS con las características recomendadas (4 núcleos de CPU, 8 GB de RAM, 2 TB de SSD NVMe) será más que suficiente y económicamente ventajoso. Un servidor dedicado se justifica si planea ejecutar varios nodos, proporcionar servicios públicos que requieran un alto rendimiento de E/S, o manejar un volumen muy grande de solicitudes a su nodo.

¿Cómo verificar que mi nodo realmente participa en la red?

Use el comando sudo -u bitcoin bitcoin-cli getconnectioncount para ver el número de conexiones activas con otros nodos. El valor debe ser significativamente mayor que cero (normalmente 8-125). Además, sudo -u bitcoin bitcoin-cli getpeerinfo mostrará información detallada sobre los pares conectados, sus direcciones IP y versiones de protocolo.

¿Qué hacer si se agota el espacio en disco?

Si el espacio en disco se agota, el nodo dejará de sincronizarse y podría apagarse. Necesitará aumentar el tamaño del disco en su VPS (si su proveedor lo permite) o migrar el nodo a un nuevo VPS con un disco más grande. En un caso extremo, puede intentar ejecutar el nodo en modo "pruning" (poda de la cadena de bloques), pero esto reducirá su funcionalidad como Nodo Completo, ya que no almacenará toda la cadena de bloques.

¿Se pueden ejecutar otros servicios en el mismo VPS que el Nodo de Bitcoin?

Sí, es posible, pero con precaución. Si tiene suficientes recursos (CPU, RAM, especialmente E/S de disco), puede ejecutar otros servicios ligeros. Sin embargo, evite aplicaciones que consuman muchos recursos y que puedan competir con Bitcoin Core por las operaciones de disco o el ancho de banda de la red, especialmente durante la sincronización inicial o el uso activo. Siempre monitoree el uso de recursos con htop o grafana/prometheus.

Conclusiones y próximos pasos

Diagrama: Conclusiones y próximos pasos
Diagrama: Conclusiones y próximos pasos

¡Felicidades! Ha instalado y configurado con éxito un Nodo Completo de Bitcoin en su VPS, asegurando su seguridad básica y preparándolo para el mantenimiento automático. Ahora su nodo participa activamente en el mantenimiento de la descentralización y la seguridad de la red Bitcoin, proporcionándole una fuente de datos de la cadena de bloques independiente y verificada.

Próximos pasos para el desarrollo de su infraestructura:

  1. Monitoreo de recursos: Configure un sistema de monitoreo (por ejemplo, Prometheus + Grafana) para rastrear la carga de CPU, RAM, disco y red. Esto ayudará a identificar posibles problemas antes de que surjan y a comprender cuándo será necesario escalar.
  2. Nodo de Lightning Network: Considere instalar un nodo de Lightning Network (LND o Core Lightning) en el mismo VPS o en uno separado. Esto le permitirá participar en la red de micropagos de Bitcoin, abrir canales y enrutar transacciones.
  3. Servidor ElectrumX: Si planea usar billeteras ligeras (por ejemplo, Electrum, Sparrow) para usted o su equipo, instalar su propio servidor ElectrumX garantizará la máxima privacidad y velocidad, ya que utilizará su propio nodo.

¿Te fue útil esta guía?

Instalación y configuración de un nodo completo de Bitcoin en VPS: seguridad y actualizaciones automáticas
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.