Registration Helper - Web Interface
bls generate truesudo adduser --disabled-password --gecos "" defcon sudo usermod -aG sudo defcon sudo apt update sudo apt -y install ufw curl tar jq python3-venv ca-certificates sudo apt -y install libminiupnpc17 libnatpmp1 libevent-2.1-7t64 libevent-pthreads-2.1-7t64 libzmq5 || sudo apt -y install libminiupnpc17 libnatpmp1 libevent-2.1-7 libevent-pthreads-2.1-7 libzmq5 || sudo apt -y install libminiupnpc18 libnatpmp1t64 libevent-2.1-7t64 libevent-pthreads-2.1-7t64 libzmq5 || sudo apt -y install libminiupnpc18 libnatpmp1t64 libevent-pthreads-2.1-7 libzmq5 if [ ! -e /usr/lib/x86_64-linux-gnu/libminiupnpc.so.17 ] && [ -e /usr/lib/x86_64-linux-gnu/libminiupnpc.so.18 ]; then sudo ln -sf /usr/lib/x86_64-linux-gnu/libminiupnpc.so.18 /usr/lib/x86_64-linux-gnu/libminiupnpc.so.17; fi sudo ldconfig sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw allow 8192/tcp sudo ufw --force enable sudo ufw status
sudo apt update
sudo apt -y install python3-venv ca-certificates
sudo python3 -m venv /opt/gdown
sudo /opt/gdown/bin/pip install -U pip
sudo /opt/gdown/bin/pip install gdown
cd /tmp && sudo /opt/gdown/bin/gdown "14SgIPLD5yn14R351xNnzOOq40QpfyrRp" -O defcon-linux.tgz && ls -lh /tmp/defcon-linux.tgz && file /tmp/defcon-linux.tgz && tar -tzf /tmp/defcon-linux.tgz | head
id defcon || sudo adduser --disabled-password --gecos "" defcon sudo -u defcon mkdir -p /home/defcon/.defcon
cd /tmp
DEFCON_EXTRACT_DIR="$(mktemp -d /tmp/defcon-linux.XXXXXX)"
sudo tar -xzf /tmp/defcon-linux.tgz -C "$DEFCON_EXTRACT_DIR"
DEFCON_BIN_DIR="$(dirname "$(find "$DEFCON_EXTRACT_DIR" -type f -name defcond | head -n1)")"
test -n "$DEFCON_BIN_DIR" && test "$DEFCON_BIN_DIR" != "." || { echo "ERROR: defcond not found in archive"; exit 1; }
echo "Installing DeFCoN binaries from $DEFCON_BIN_DIR"
sudo install -m 0755 "$DEFCON_BIN_DIR/defcond" /usr/local/bin/defcond
sudo install -m 0755 "$DEFCON_BIN_DIR/defcon-cli" /usr/local/bin/defcon-cli
sudo install -m 0755 "$DEFCON_BIN_DIR/defcon-tx" /usr/local/bin/defcon-tx
sudo install -m 0755 "$DEFCON_BIN_DIR/defcon-wallet" /usr/local/bin/defcon-wallet
test -x /usr/local/bin/defcond || { echo "ERROR: /usr/local/bin/defcond missing"; exit 1; }
test -x /usr/local/bin/defcon-cli || { echo "ERROR: /usr/local/bin/defcon-cli missing"; exit 1; }
if ldd /usr/local/bin/defcond | grep "not found"; then
echo "ERROR: missing runtime libraries. Run Basic Setup again, then rerun this step."
exit 1
fi
echo "OK: all runtime libraries found"
/usr/local/bin/defcond --version
test -x /usr/local/bin/defcond || { echo "ERROR: /usr/local/bin/defcond missing. Run Extract and Install first."; exit 1; }
test -x /usr/local/bin/defcon-cli || { echo "ERROR: /usr/local/bin/defcon-cli missing. Run Extract and Install first."; exit 1; }
sudo tee /etc/systemd/system/defcond.service >/dev/null <<'EOF'
[Unit]
Description=DeFCoN daemon
After=network-online.target
Wants=network-online.target
[Service]
User=defcon
Group=defcon
Type=forking
ExecStart=/usr/local/bin/defcond -datadir=/home/defcon/.defcon -conf=/home/defcon/.defcon/defcon.conf
ExecStop=/usr/local/bin/defcon-cli -datadir=/home/defcon/.defcon -conf=/home/defcon/.defcon/defcon.conf stop
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl unmask defcond.service 2>/dev/null || true
sudo systemctl disable --now defcond.service 2>/dev/null || true
sudo nano /home/defcon/.defcon/defcon.conf
server=1 daemon=1 listen=1 port=8192 rpcbind=127.0.0.1 rpcallowip=127.0.0.1 rpcport=8193 rpcuser=defconrpc rpcpassword=defconrpc2026 externalip=VPS_IP:8192 maxconnections=125 logtimestamps=1 masternode=1 masternodeblsprivkey=BLS_SECRET
test -f /home/defcon/.defcon/defcon.conf || { echo "ERROR: /home/defcon/.defcon/defcon.conf missing"; exit 1; }
test -x /usr/local/bin/defcond || { echo "ERROR: /usr/local/bin/defcond missing"; exit 1; }
test -x /usr/local/bin/defcon-cli || { echo "ERROR: /usr/local/bin/defcon-cli missing"; exit 1; }
sudo chown defcon:defcon /home/defcon/.defcon/defcon.conf
sudo chmod 600 /home/defcon/.defcon/defcon.conf
sudo chown -R defcon:defcon /home/defcon/.defcon
sudo mkdir -p /opt/defcon/bin /etc/defcon /var/lib
sudo ln -sfn /usr/local/bin/defcond /opt/defcon/bin/defcond
sudo ln -sfn /usr/local/bin/defcon-cli /opt/defcon/bin/defcon-cli
sudo ln -sfn /usr/local/bin/defcon-tx /opt/defcon/bin/defcon-tx
sudo ln -sfn /usr/local/bin/defcon-wallet /opt/defcon/bin/defcon-wallet
sudo ln -sfnT /home/defcon/.defcon /var/lib/defcon
sudo ln -sfnT /home/defcon/.defcon/defcon.conf /etc/defcon/defcon.conf
ls -ld /var/lib/defcon
ls -l /etc/defcon/defcon.conf /opt/defcon/bin/defcon-cli
sudo systemctl daemon-reload
test -f /home/defcon/.defcon/defcon.conf || { echo "ERROR: defcon.conf missing"; exit 1; }
test -x /usr/local/bin/defcond || { echo "ERROR: defcond missing"; exit 1; }
sudo systemctl unmask defcond.service 2>/dev/null || true
sudo systemctl daemon-reload
sudo systemctl enable --now defcond.service
sleep 3
systemctl is-active defcond.service
ss -ltnp | grep -E ':8192|:8193' || true
systemctl is-enabled defcond.service systemctl status defcond.service --no-pager ls -l /etc/systemd/system/multi-user.target.wants/defcond.service /usr/local/bin/defcon-cli -datadir=/home/defcon/.defcon -conf=/home/defcon/.defcon/defcon.conf getconnectioncount /opt/defcon/bin/defcon-cli -datadir=/var/lib/defcon -conf=/etc/defcon/defcon.conf getblockcount
Fill in the collateral address first...
Fill in the previous steps...
Fill in the previous steps...
Fill in the previous steps...
| Field | Value |
|---|
sudo systemctl restart defcond sudo /usr/local/bin/defcon-cli -datadir=/home/defcon/.defcon -conf=/home/defcon/.defcon/defcon.conf masternode status sudo /opt/defcon/bin/defcon-cli -datadir=/var/lib/defcon -conf=/etc/defcon/defcon.conf getblockcount