Nym Mix Node - Ansible Playbook
Playbook de Ansible para instalar y configurar un nodo de mezcla en la red de Nym (MixNode).
Primero clona el repositorio:
git clone https://0xacab.org/criptodira/nym-mixnode-ansible.git
cd nym-mixnode-ansible
Luego instala las dependencias:
ansible-galaxy install -r requirements.yml
ansible-galaxy collection verify -r requirements.yml
Crea manualmente un usuarix con el nombre ansible
en tu servidor, agrégale a
la lista de sudoers y pon una llave ssh en .ssh/authorized_keys
.
useradd -m -s /bin/bash ansible
También puedes agregarlo usando CloudInit si tu servidor lo soporta:
#cloud-config
users:
- name: ansible
lock_passwd: true
shell: /bin/bash
ssh_authorized_keys:
- ${ssh_key}
sudo: ALL=(ALL) NOPASSWD:ALL
Luego agrega la IP de tu nodo al inventario almacenado en inventory/hosts
, e.g:
[mixnode]
10.8.0.1 ansible_user=ansible
Cambios que se aplican con éste playbook:
Rol init.yml
- Hardening del servicio de SSH (
devsec.hardening
). - Instalación de
git
,curl
ywget
.
Rol mixnode.yml
- Crea el directorio
/opt/nym
, descarga el binario de github y verifica con el hash publicado en la página de descargas de Nym. - Activa el firewall y aplica las reglas necesarias para los servicios de SSH, Nym y el monitoreo remoto.
- Agrega una unidad llamada
nym-mixnode
como servicio de systemd.
Ejecuta el playbook que quieras aplicar:
# Instala las dependencias básicas y refuerza la configuración de SSH.
ansible-playbook init.yml
# Instala nym-mixnode como servicio de systemd y habilita sus reglas de firewall.
ansible-playbook mixnode.yml