Preparando el servidor

Pasos previos para configurar tu pool de Cardano desde el código fuente. No utilizaremos los scripts de CNTools o similares. Se asume instalación en Ubuntu 20.04 y usuario "ubuntu".

Chequear updates

Primer paso siempre debería ser verificar que nuestro servidor cuenta con las últimas actualizaciones, para esto podemos correr los siguientes comandos:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt-get autoremove

Si el server solicita que reiniciemos el equipo es recomendable hacerlo antes de continuar.

Instalar dependencias

sudo apt-get install automake build-essential pkg-config libffi-dev libgmp-dev libssl-dev \
libtinfo-dev libsystemd-dev zlib1g-dev make g++ tmux git jq wget libncursesw5 \
libtool autoconf nano screen iptables iptables-persistent iputils* chrony \
net-tools curl htop liblmdb-dev -y

Cuando se instala iptables vamos a recibir un aviso para guardar las reglas IPv4, es buena idea aceptar para poder probar modificaciones con iptables-apply.

Preparar firewall

Este paso es opcional, se debe verificar las reglas existentes y asegurarnos de incluir el puerto de SSH, cardano-node, y los puertos de métricas de cardano-node y node_exporter.

sudo iptables -F

sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -p icmp -s ip_otros_nodos -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3001 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp -s ip_grafana_collector --dport 12798 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp -s ip_grafana_collector --dport 9001 -j ACCEPT
sudo iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited

sudo /sbin/iptables-save

Como alternativa, se puede editar el archivo /etc/iptables/rules.v4 e ingresar las reglas manualmente (iptables -A), no incluir "sudo". De esta manera podemos aplicar los cambios temporalmente y en caso no podamos iniciar sesión los cambios se revierten de forma automática.

sudo iptables-apply -t 60 /etc/iptables/rules.v4

Por favor tomar en cuenta que esta configuración en meramente informativa, siempre se debe verificar los puertos para evitar perder el acceso a su servidor.

MUY IMPORTANTE: SSH debería estar asegurado con llaves RSA, Multi-factor authentication, puerto personalizado u otros métodos que están fuera del scope del presente artículo. No prestar atención a la seguridad puede comprometer su pool y su pledge.

Puntos adicionales

Otros puntos que se recomienda revisar son:

  • Creación de Swap

  • Swappiness

  • Cache Pressure

Pueden utilizar como guía este artículo de Digital Ocean, pronto armaremos un howto en este sitio.

Última actualización